diff --git a/src/display.cpp b/src/display.cpp index 98e605aa2685..7daa9fe4f124 100644 --- a/src/display.cpp +++ b/src/display.cpp @@ -682,6 +682,21 @@ const display::rect_of_hexes display::hexes_under_rect(const SDL_Rect& r) const return res; } +bool display::team_valid() const +{ + return currentTeam_ < dc_->teams().size(); +} + +bool display::shrouded(const map_location& loc) const +{ + return is_blindfolded() || (dont_show_all_ && dc_->teams()[currentTeam_].shrouded(loc)); +} + +bool display::fogged(const map_location& loc) const +{ + return is_blindfolded() || (dont_show_all_ && dc_->teams()[currentTeam_].fogged(loc)); +} + int display::get_location_x(const map_location& loc) const { return static_cast(map_area().x + (loc.x + theme_.border().size) * hex_width() - xpos_); diff --git a/src/display.hpp b/src/display.hpp index ab95ef0d2c4c..5947db2c6794 100644 --- a/src/display.hpp +++ b/src/display.hpp @@ -39,6 +39,7 @@ class terrain_builder; class map_labels; class arrow; class reports; +class team; namespace halo { class manager; @@ -55,7 +56,6 @@ namespace wb { #include "font/standard_colors.hpp" #include "image.hpp" //only needed for enums (!) #include "key.hpp" -#include "team.hpp" #include "time_of_day.hpp" #include "sdl/rect.hpp" #include "theme.hpp" @@ -94,7 +94,7 @@ class display : public filter_context, public video2::draw_layering /** The playing team is the team whose turn it is. */ size_t playing_team() const { return activeTeam_; } - bool team_valid() const { return currentTeam_ < dc_->teams().size(); } + bool team_valid() const; /** The viewing team is the team currently viewing the game. */ size_t viewing_team() const { return currentTeam_; } @@ -344,13 +344,10 @@ class display : public filter_context, public video2::draw_layering const rect_of_hexes get_visible_hexes() const {return hexes_under_rect(map_area());} /** Returns true if location (x,y) is covered in shroud. */ - bool shrouded(const map_location& loc) const { - return is_blindfolded() || (dont_show_all_ && dc_->teams()[currentTeam_].shrouded(loc)); - } + bool shrouded(const map_location& loc) const; + /** Returns true if location (x,y) is covered in fog. */ - bool fogged(const map_location& loc) const { - return is_blindfolded() || (dont_show_all_ && dc_->teams()[currentTeam_].fogged(loc)); - } + bool fogged(const map_location& loc) const; /** * Determines whether a grid should be overlayed on the game board. diff --git a/src/editor/action/mouse/mouse_action_unit.cpp b/src/editor/action/mouse/mouse_action_unit.cpp index 236a64e124bf..292beb2d25f4 100644 --- a/src/editor/action/mouse/mouse_action_unit.cpp +++ b/src/editor/action/mouse/mouse_action_unit.cpp @@ -24,6 +24,7 @@ #include "map/location.hpp" #include "sdl/rect.hpp" +#include "team.hpp" #include "units/unit.hpp" #include "units/map.hpp" diff --git a/src/editor/editor_display.cpp b/src/editor/editor_display.cpp index 9af091735d05..7e892822bfab 100644 --- a/src/editor/editor_display.cpp +++ b/src/editor/editor_display.cpp @@ -15,6 +15,7 @@ #include "editor/editor_display.hpp" #include "reports.hpp" +#include "team.hpp" #include "terrain/builder.hpp" #include "units/map.hpp" diff --git a/src/editor/palette/unit_palette.cpp b/src/editor/palette/unit_palette.cpp index 6daddcd807e1..085dfa731d4c 100644 --- a/src/editor/palette/unit_palette.cpp +++ b/src/editor/palette/unit_palette.cpp @@ -22,6 +22,7 @@ #include "gettext.hpp" +#include "team.hpp" #include "units/types.hpp" namespace editor { diff --git a/src/gui/dialogs/label_settings.cpp b/src/gui/dialogs/label_settings.cpp index 33ab031d7080..9aa5dcc4c534 100644 --- a/src/gui/dialogs/label_settings.cpp +++ b/src/gui/dialogs/label_settings.cpp @@ -33,6 +33,7 @@ #include "gui/widgets/toggle_button.hpp" #include "gui/widgets/label.hpp" #include "formula/string_utils.hpp" +#include "team.hpp" namespace gui2 {