mirror of
https://github.com/glest/glest-source.git
synced 2025-10-02 18:36:48 +02:00
- on battle end stats screen we show each item in green that the player had a best score. (ties are allowed)
This commit is contained in:
@@ -81,13 +81,48 @@ void BattleEnd::render(){
|
||||
|
||||
int winnerIndex = -1;
|
||||
int bestScore = -1;
|
||||
int mostKillsIndex = -1;
|
||||
int bestKills = -1;
|
||||
int mostEnemyKillsIndex = -1;
|
||||
int bestEnemyKills = -1;
|
||||
int leastDeathsIndex = -1;
|
||||
int leastDeaths = -1;
|
||||
int mostUnitsProducedIndex = -1;
|
||||
int bestUnitsProduced = -1;
|
||||
int mostResourcesHarvestedIndex = -1;
|
||||
int bestResourcesHarvested = -1;
|
||||
|
||||
for(int i=0; i<stats.getFactionCount(); ++i){
|
||||
int team= stats.getTeam(i) + 1;
|
||||
int kills= stats.getKills(i);
|
||||
if(kills > bestKills) {
|
||||
bestKills = kills;
|
||||
mostKillsIndex = i;
|
||||
}
|
||||
|
||||
int enemykills= stats.getEnemyKills(i);
|
||||
if(enemykills > bestEnemyKills) {
|
||||
bestEnemyKills = enemykills;
|
||||
mostEnemyKillsIndex = i;
|
||||
}
|
||||
|
||||
int deaths= stats.getDeaths(i);
|
||||
if(deaths < leastDeaths || leastDeaths < 0) {
|
||||
leastDeaths = deaths;
|
||||
leastDeathsIndex = i;
|
||||
}
|
||||
|
||||
int unitsProduced= stats.getUnitsProduced(i);
|
||||
int resourcesHarvested= stats.getResourcesHarvested(i);
|
||||
if(unitsProduced > bestUnitsProduced) {
|
||||
bestUnitsProduced = unitsProduced;
|
||||
mostUnitsProducedIndex = i;
|
||||
}
|
||||
|
||||
int resourcesHarvested = stats.getResourcesHarvested(i);
|
||||
if(resourcesHarvested > bestResourcesHarvested) {
|
||||
bestResourcesHarvested = resourcesHarvested;
|
||||
mostResourcesHarvestedIndex = i;
|
||||
}
|
||||
|
||||
int score= enemykills*100 + unitsProduced*50 + resourcesHarvested/10;
|
||||
|
||||
@@ -160,7 +195,7 @@ void BattleEnd::render(){
|
||||
controlString += " x " + floatToStr(stats.getResourceMultiplier(i),1);
|
||||
}
|
||||
|
||||
if(i == winnerIndex) {
|
||||
if(score == bestScore && stats.getVictory(i)) {
|
||||
if(CoreData::getInstance().getGameWinnerTexture() != NULL) {
|
||||
renderer.renderTextureQuad(textX, bm+380,-1,-1,CoreData::getInstance().getGameWinnerTexture(),0.7f);
|
||||
}
|
||||
@@ -183,13 +218,47 @@ void BattleEnd::render(){
|
||||
textRenderer->render(controlString, textX, bm+320);
|
||||
textRenderer->render(stats.getFactionTypeName(i), textX, bm+280);
|
||||
textRenderer->render(intToStr(team).c_str(), textX, bm+240);
|
||||
|
||||
color.x = 0.2;
|
||||
color.y = 1;
|
||||
color.z = 0.2;
|
||||
if(kills == bestKills) {
|
||||
textRenderer->render(intToStr(kills).c_str(), textX, bm+200, false,&color);
|
||||
}
|
||||
else {
|
||||
textRenderer->render(intToStr(kills).c_str(), textX, bm+200);
|
||||
}
|
||||
if(enemykills == bestEnemyKills) {
|
||||
textRenderer->render(intToStr(enemykills).c_str(), textX, bm+180, false , &color);
|
||||
}
|
||||
else {
|
||||
textRenderer->render(intToStr(enemykills).c_str(), textX, bm+180);
|
||||
}
|
||||
if(deaths == leastDeaths) {
|
||||
textRenderer->render(intToStr(deaths).c_str(), textX, bm+160,false,&color);
|
||||
}
|
||||
else {
|
||||
textRenderer->render(intToStr(deaths).c_str(), textX, bm+160);
|
||||
}
|
||||
if(unitsProduced == bestUnitsProduced) {
|
||||
textRenderer->render(intToStr(unitsProduced).c_str(), textX, bm+120,false,&color);
|
||||
}
|
||||
else {
|
||||
textRenderer->render(intToStr(unitsProduced).c_str(), textX, bm+120);
|
||||
}
|
||||
if(resourcesHarvested == bestResourcesHarvested) {
|
||||
textRenderer->render(intToStr(resourcesHarvested).c_str(), textX, bm+80,false,&color);
|
||||
}
|
||||
else {
|
||||
textRenderer->render(intToStr(resourcesHarvested).c_str(), textX, bm+80);
|
||||
}
|
||||
if(score == bestScore) {
|
||||
textRenderer->render(intToStr(score).c_str(), textX, bm+20,false,&color);
|
||||
}
|
||||
else {
|
||||
textRenderer->render(intToStr(score).c_str(), textX, bm+20);
|
||||
}
|
||||
}
|
||||
|
||||
textRenderer->render(lang.get("Result"), lm, bm+360);
|
||||
textRenderer->render(lang.get("Control"), lm, bm+320);
|
||||
|
Reference in New Issue
Block a user