The Battle for Wesnoth  1.19.0-dev
Classes | Namespaces
value_translator.hpp File Reference
#include "ai/composite/engine.hpp"
#include "ai/composite/stage.hpp"
#include "ai/lua/aspect_advancements.hpp"
#include "ai/manager.hpp"
#include "lexical_cast.hpp"
#include "resources.hpp"
#include "serialization/string_utils.hpp"
#include "terrain/filter.hpp"
#include "utils/variant.hpp"
Include dependency graph for value_translator.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


class  ai::config_value_translator< T >
class  ai::config_value_translator< std::string >
class  ai::config_value_translator< bool >
class  ai::leader_aspects_visitor
class  ai::config_value_translator< utils::variant< bool, std::vector< std::string > > >
class  ai::config_value_translator< std::vector< std::string > >
class  ai::config_value_translator< config >
class  ai::config_value_translator< terrain_filter >
class  ai::config_value_translator< unit_advancements_aspect >
class  ai::variant_value_translator< T >
class  ai::variant_value_translator< int >
class  ai::variant_value_translator< bool >
class  ai::variant_value_translator< std::string >
class  ai::variant_value_translator< attacks_vector >
class  ai::variant_value_translator< terrain_filter >


 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.