apply patch #2623 by Disruption : fix bug #17985

(leaders stay hiddent in status table when discovered)
This commit is contained in:
Jérémy Rosen 2011-04-13 19:52:52 +00:00
parent 5045a85138
commit 4d33d594fb
3 changed files with 11 additions and 3 deletions

View file

@ -21,6 +21,7 @@ Version 1.9.5+svn:
* Applied patch #2611: removed redundant own_side attribute
* Applied patch #2600: improved MP creation screen logging
* Added: New gui2 iterator framework.
* Patch #2624: Solved enemy leaders never appearing on status table on foggy/shrouded maps, even when visible.
Version 1.9.5:
* Graphics:

View file

@ -198,6 +198,10 @@
name = "Sergey Popov (loonycyborg)"
comment = "scons"
[/entry]
[entry]
name = "Sergio Tomas Ortiz"
email = "stomasortiz_AT_gmail.com"
[/entry]
[entry]
name = "Soliton"
comment = "bug fixes and various small features usually in multiplayer context"

View file

@ -403,6 +403,7 @@ void menu_handler::status_table(int selected)
const bool known = viewing_team.knows_about_team(n, network::nconnections() > 0);
const bool enemy = viewing_team.is_enemy(n+1);
bool fogged;
std::stringstream str;
const team_data data = calculate_team_data(teams_[n],n+1);
@ -412,10 +413,10 @@ void menu_handler::status_table(int selected)
//output the number of the side first, and this will
//cause it to be displayed in the correct color
if(leader != units_.end()) {
fogged=viewing_team.fogged(leader->get_location());
// Add leader image. If it's fogged
// show only a random leader image.
if (known || game_config::debug) {
if (!fogged || known || game_config::debug) {
str << IMAGE_PREFIX << leader->absolute_image();
leader_bools.push_back(true);
leader_name = leader->name();
@ -517,6 +518,7 @@ void menu_handler::scenario_settings_table(int selected)
const team& viewing_team = teams_[gui_->viewing_team()];
bool settings_table_empty = true;
bool fogged;
for(size_t n = 0; n != teams_.size(); ++n) {
if(teams_[n].is_empty()||teams_[n].hidden()) {
@ -530,7 +532,8 @@ void menu_handler::scenario_settings_table(int selected)
if(leader != units_.end()) {
// Add leader image. If it's fogged
// show only a random leader image.
if (viewing_team.knows_about_team(n, network::nconnections() > 0) || game_config::debug) {
fogged=viewing_team.fogged(leader->get_location());
if (!fogged || viewing_team.knows_about_team(n, network::nconnections() > 0) || game_config::debug) {
str << IMAGE_PREFIX << leader->absolute_image();
leader_bools.push_back(true);
} else {