void advance_unit(map_location loc, const advancement_option &advance_to, bool fire_event=true)
Function which will advance the unit at loc to 'advance_to'.
unit_ptr get_advanced_unit(const unit &u, const std::string &advance_to)
Returns the advanced version of a unit (with traits and items retained).
utils::variant< std::string, const config * > advancement_option
unit_ptr get_amla_unit(const unit &u, const config &mod_option)
Returns the AMLA-advanced version of a unit (with traits and items retained).
void advance_unit_at(const advance_unit_params ¶ms)
A config object defines a single node in a WML file, with access to child nodes.
This class represents a single unit of a specific type.
bool fire_event(const ui_event event, const std::vector< std::pair< widget *, ui_event >> &event_chain, widget *dispatcher, widget *w, F &&... params)
Helper function for fire_event.
std::shared_ptr< unit > unit_ptr
advances the unit at loc if it has enough experience, maximum 20 times.
advance_unit_params & animate(bool value)
advance_unit_params & fire_events(bool value)
advance_unit_params & force_dialog(bool value)
friend void advance_unit_at(const advance_unit_params &)
advance_unit_params(const map_location &loc)
Encapsulates the map of the game.
MacOS doesn't support std::visit when targing MacOS < 10.14 (currently we target 10....