diff --git a/src/display.cpp b/src/display.cpp index 5d5c8088dce6..892c79f622cf 100644 --- a/src/display.cpp +++ b/src/display.cpp @@ -2506,21 +2506,15 @@ void display::draw_gamemap() } // - // Units + // Real (standing) units // if(!dc_->teams().empty()) { unit_drawer drawer = unit_drawer(*this); - // Real units for(const unit& real_unit : dc_->units()) { drawer.redraw_unit(real_unit); } - // Fake (moving) units - for(const unit* temp_unit : *fake_unit_man_) { - drawer.redraw_unit(*temp_unit); - } - // TODO: re-add exclusionary checks for exclusive_unit_draw_requests_ later on, if necessary. #if 0 auto request = exclusive_unit_draw_requests_.find(loc); @@ -2533,6 +2527,17 @@ void display::draw_gamemap() // draw_visible_hexes(visible_hexes, FOREGROUND); + // + // Fake (moving) units + // + if(!dc_->teams().empty()) { + unit_drawer drawer = unit_drawer(*this); // TODO: don't create this twice per cycle. + + for(const unit* temp_unit : *fake_unit_man_) { + drawer.redraw_unit(*temp_unit); + } + } + // // Draws various overlays, such as reach maps, etc. //