#include <formula_ai.hpp>
Definition at line 27 of file formula_ai.hpp.
formula_ai::formula_ai | ( | info & | i | ) | [explicit] |
Definition at line 939 of file formula_ai.cpp.
References reference_counted_object::add_ref(), and vars_.
void formula_ai::play_turn | ( | ) | [virtual] |
Function that is called when the AI must play its turn.
Derived classes should implement their AI algorithm in this function.
Reimplemented from ai.
Definition at line 946 of file formula_ai.cpp.
References game_logic::map_formula_callable::add(), reference_counted_object::add_ref(), team::ai_parameters(), unit_map::begin(), config::child_range(), game_logic::formula::create_optional_formula(), ai_interface::current_team(), unit_map::end(), ai_interface::get_info(), make_move(), move_formula_, recruit_formula_, utils::split(), ai_interface::info::team_num, and ai::units_.
const move_map& formula_ai::srcdst | ( | ) | const [inline] |
Definition at line 36 of file formula_ai.hpp.
References move_maps_valid_, prepare_move(), and srcdst_.
std::string formula_ai::evaluate | ( | const std::string & | formula_str | ) |
Definition at line 995 of file formula_ai.cpp.
References reference_counted_object::add_ref(), team::ai_parameters(), config::child_range(), game_logic::formula::create_optional_formula(), ai_interface::current_team(), game_logic::formula::execute(), execute_variant(), utils::split(), and variant::to_debug_string().
Referenced by events::menu_handler::do_ai_formula().
void formula_ai::swap_move_map | ( | move_map_backup & | backup | ) |
Definition at line 1021 of file formula_ai.cpp.
References formula_ai::move_map_backup::attacks_cache, attacks_cache_, formula_ai::move_map_backup::dstsrc, dstsrc_, formula_ai::move_map_backup::enemy_dstsrc, enemy_dstsrc_, formula_ai::move_map_backup::enemy_srcdst, enemy_srcdst_, formula_ai::move_map_backup::full_dstsrc, full_dstsrc_, formula_ai::move_map_backup::full_srcdst, full_srcdst_, formula_ai::move_map_backup::move_maps_valid, move_maps_valid_, formula_ai::move_map_backup::srcdst, and srcdst_.
variant formula_ai::get_keeps | ( | ) | const |
Definition at line 1274 of file formula_ai.cpp.
References get_adjacent_tiles(), ai_interface::get_info(), gamemap::h(), gamemap::is_castle(), gamemap::is_keep(), variant::is_null(), keeps_cache_, loc, map, and gamemap::w().
Referenced by get_value().
const variant& formula_ai::get_keeps_cache | ( | ) | const [inline] |
void formula_ai::do_recruitment | ( | ) | [private, virtual] |
Reimplemented from ai.
Definition at line 1194 of file formula_ai.cpp.
References variant::is_list(), variant::num_elements(), ai_interface::recruit(), and recruit_formula_.
Referenced by execute_variant().
bool formula_ai::make_move | ( | game_logic::const_formula_ptr | formula_, | |
const game_logic::formula_callable & | variables | |||
) | [private] |
Definition at line 1061 of file formula_ai.cpp.
References create_ai(), execute_variant(), ai_interface::get_info(), move_maps_valid_, and ai_interface::play_turn().
Referenced by play_turn().
bool formula_ai::execute_variant | ( | const variant & | var, | |
bool | commandline = false | |||
) | [private] |
Definition at line 1078 of file formula_ai.cpp.
References game_logic::map_formula_callable::add(), ai::attack_enemy(), unit_map::count(), create_ai(), do_recruitment(), move_callable::dst(), unit_map::end(), unit_map::find(), ai_interface::get_info(), variant::is_list(), map, ai::move_unit(), ai::attack_analysis::movements, variant::num_elements(), ai_interface::play_turn(), possible_moves_, prepare_move(), ai_interface::recruit(), move_callable::src(), ai::attack_analysis::target, teams, ai_interface::info::units, ai::units_, vars_, gamemap::location::x, and gamemap::location::y.
Referenced by evaluate(), and make_move().
variant formula_ai::get_value | ( | const std::string & | key | ) | const [private, virtual] |
Reimplemented from ai_interface.
Definition at line 1223 of file formula_ai.cpp.
References ai::analyze_targets(), ai::attack_analysis, attacks_cache_, dstsrc_, unit_map::end(), enemy_dstsrc_, enemy_srcdst_, ai_interface::get_info(), get_keeps(), ai_interface::get_value(), variant::is_null(), prepare_move(), srcdst_, team_leader(), and vars_.
void formula_ai::get_inputs | ( | std::vector< game_logic::formula_input > * | inputs | ) | const [private, virtual] |
Reimplemented from ai_interface.
Definition at line 1261 of file formula_ai.cpp.
References game_logic::FORMULA_READ_ONLY, and ai_interface::get_inputs().
void formula_ai::prepare_move | ( | ) | const [private] |
Definition at line 1034 of file formula_ai.cpp.
References attacks_cache_, ai_interface::calculate_possible_moves(), dstsrc_, enemy_dstsrc_, enemy_srcdst_, full_dstsrc_, full_srcdst_, move_maps_valid_, possible_moves_, and srcdst_.
Referenced by execute_variant(), get_value(), and srcdst().
std::map<location,paths> formula_ai::possible_moves_ [mutable, private] |
bool formula_ai::move_maps_valid_ [mutable, private] |
Definition at line 65 of file formula_ai.hpp.
Referenced by make_move(), prepare_move(), srcdst(), and swap_move_map().
move_map formula_ai::srcdst_ [mutable, private] |
Definition at line 66 of file formula_ai.hpp.
Referenced by get_value(), prepare_move(), srcdst(), and swap_move_map().
move_map formula_ai::dstsrc_ [mutable, private] |
Definition at line 66 of file formula_ai.hpp.
Referenced by get_value(), prepare_move(), and swap_move_map().
move_map formula_ai::full_srcdst_ [mutable, private] |
move_map formula_ai::full_dstsrc_ [mutable, private] |
move_map formula_ai::enemy_srcdst_ [mutable, private] |
Definition at line 66 of file formula_ai.hpp.
Referenced by get_value(), prepare_move(), and swap_move_map().
move_map formula_ai::enemy_dstsrc_ [mutable, private] |
Definition at line 66 of file formula_ai.hpp.
Referenced by get_value(), prepare_move(), and swap_move_map().
variant formula_ai::attacks_cache_ [mutable, private] |
Definition at line 67 of file formula_ai.hpp.
Referenced by get_value(), prepare_move(), and swap_move_map().
variant formula_ai::keeps_cache_ [mutable, private] |
Definition at line 70 of file formula_ai.hpp.
Referenced by execute_variant(), formula_ai(), and get_value().
Generated by doxygen 1.5.5 on 23 May 2008 for The Battle for Wesnoth | Gna! | Forum | Wiki | CIA | devdocs |