Composite AI component. More...
#include <functional>
#include "config.hpp"
#include "ai/composite/component.hpp"
#include <algorithm>
Go to the source code of this file.
Classes | |
class | ai::path_element_matches< T > |
class | ai::base_property_handler |
class | ai::vector_property_handler< T > |
class | ai::facets_property_handler< T > |
class | ai::aspect_property_handler< T > |
Namespaces | |
ai | |
A small explanation about what's going on here: Each action has access to two game_info objects First is 'info' - real information Second is 'subjective info' - AIs perception of what's going on So, when we check_before action, we use 'subjective info' and don't touch real 'info' at all. | |
Functions | |
template<typename X > | |
static void | ai::register_vector_property (property_handler_map &property_handlers, const std::string &property, std::vector< std::shared_ptr< X >> &values, std::function< void(std::vector< std::shared_ptr< X >> &, const config &)> construction_factory) |
template<typename X > | |
static void | ai::register_facets_property (property_handler_map &property_handlers, const std::string &property, std::vector< std::shared_ptr< X >> &values, std::shared_ptr< X > &def, std::function< void(std::vector< std::shared_ptr< X >> &, const config &)> construction_factory) |
template<typename X > | |
static void | ai::register_aspect_property (property_handler_map &property_handlers, const std::string &property, std::map< std::string, std::shared_ptr< X >> &aspects, std::function< void(std::map< std::string, std::shared_ptr< X >> &, const config &, std::string)> construction_factory) |
Composite AI component.
Definition in file property_handler.hpp.