This class stores all the data for a single 'side' (in game nomenclature).
This class represents a single unit of a specific type.
Abstract base class for all the whiteboard planned actions.
Finalizer class to help with exception safety sets variable to value on destruction.
void clear()
Stop tracking the variable, i.e.
variable_finalizer(T &variable, T value)
side_actions_ptr current_side_actions()
void ghost_owner_unit(unit *unit)
bool team_has_visible_plan(team &t)
Returns whether a given team's plan is visible.
unit * find_recruiter(std::size_t team_index, const map_location &hex)
std::shared_ptr< action > action_ptr
action_ptr find_action_at(map_location hex, const team_filter &team_filter)
Find the first action occurring on a given hex.
unit * future_visible_unit(map_location hex, int viewer_side)
Applies the future unit map and.
std::shared_ptr< side_actions > side_actions_ptr
int path_cost(const std::vector< map_location > &path, const unit &u)
Computes the MP cost for u to travel path.
unit_const_ptr find_backup_leader(const unit &leader)
For a given leader on a keep, find another leader on another keep in the same castle.
std::function< bool(team &)> team_filter
Callable object class to filter teams.
std::deque< action_ptr > find_actions_of(const unit &target)
Find the actions of an unit.
side_actions_ptr viewer_actions()
bool has_actions()
Return whether the whiteboard has actions.
bool any_recruiter(int team_num, const map_location &loc, const std::function< bool(unit &)> &func)
executes func for each unti of side of side_num that can recruit on loc.
void for_each_action(const std::function< void(action *)> &function, const team_filter &team_filter)
Apply a function to all the actions of the whiteboard.
void unghost_owner_unit(unit *unit)
std::shared_ptr< const unit > unit_const_ptr
Encapsulates the map of the game.
temporary_unit_hider(unit &u)
Contains typedefs for the whiteboard.