20 #ifndef AI_COMPOSITE_AI_HPP_INCLUDED
21 #define AI_COMPOSITE_AI_HPP_INCLUDED
29 #pragma warning(disable:4250)
virtual std::string evaluate(const std::string &str)
Evaluate command (using fai)
virtual std::string get_id() const
void create_engine(std::vector< engine_ptr > &engines, const config &cfg)
std::vector< stage_ptr > stages_
Stages of the composite AI.
void create_stage(std::vector< stage_ptr > &stages, const config &cfg)
std::string describe_self() const
virtual bool add_stage(const config &cfg)
const config & cfg_
Config of the AI.
virtual bool add_goal(const config &cfg)
int get_recursion_count() const
Get the value of the recursion counter.
virtual config to_config() const
serialize
void replace_aspect(std::map< std::string, aspect_ptr > &aspects, const config &cfg, std::string id)
A small explanation about what's going on here: Each action has access to two game_info objects First...
recursion_counter recursion_counter_
Recursion counter.
virtual void new_turn()
On new turn.
ai_composite(default_ai_context &context, const config &cfg)
Constructor.
A component of the AI framework.
virtual ai_context & get_ai_context()
unwrap
void switch_side(side_number side)
void create_goal(std::vector< goal_ptr > &goals, const config &cfg)
static config preparse_cfg(ai_context &ctx, const config &cfg)
virtual ~ai_composite()
Destructor.
void play_turn()
Play the turn.
A config object defines a single node in a WML file, with access to child nodes.
virtual std::string get_engine() const
GLsizei const GLcharARB ** string
virtual std::string get_name() const