The Battle for Wesnoth  1.15.0-dev
Classes | Namespaces | Typedefs
game_info.hpp File Reference

Game information for the AI. More...

#include "map/location.hpp"
#include <map>
#include <memory>
Include dependency graph for game_info.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


class  ai::typesafe_aspect< T >
class  ai::typesafe_known_aspect< T >
class  ai::game_info


 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.


typedef int ai::side_number
typedef std::multimap< map_location, map_locationai::move_map
 The standard way in which a map of possible moves is recorded. More...
typedef std::map< map_location, pathfind::pathsai::moves_map
 The standard way in which a map of possible movement routes to location is recorded. More...
typedef std::unique_ptr< ai_composite > ai::composite_ai_ptr
typedef std::vector< attack_analysis > ai::attacks_vector
template<typename T >
using ai::typesafe_aspect_ptr = std::shared_ptr< typesafe_aspect< T > >
template<typename T >
using ai::typesafe_aspect_vector = std::vector< typesafe_aspect_ptr< T > >
template<typename T >
using ai::typesafe_known_aspect_ptr = std::shared_ptr< typesafe_known_aspect< T > >
template<typename T >
using ai::typesafe_known_aspect_vector = std::vector< typesafe_known_aspect_ptr< T > >
typedef std::unique_ptr< action_result > ai::action_result_ptr
typedef std::unique_ptr< attack_result > ai::attack_result_ptr
typedef std::unique_ptr< recall_result > ai::recall_result_ptr
typedef std::unique_ptr< recruit_result > ai::recruit_result_ptr
typedef std::unique_ptr< move_result > ai::move_result_ptr
typedef std::unique_ptr< move_and_attack_result > ai::move_and_attack_result_ptr
typedef std::unique_ptr< stopunit_result > ai::stopunit_result_ptr
typedef std::unique_ptr< synced_command_result > ai::synced_command_result_ptr
typedef std::shared_ptr< aspect > ai::aspect_ptr
typedef std::shared_ptr< engine > ai::engine_ptr
typedef std::shared_ptr< goal > ai::goal_ptr
typedef std::shared_ptr< known_aspect > ai::known_aspect_ptr
typedef std::shared_ptr< stage > ai::stage_ptr
typedef std::map< std::string, aspect_ptr > ai::aspect_map
typedef std::map< std::string, known_aspect_ptr > ai::known_aspect_map

Detailed Description

Game information for the AI.

Definition in file game_info.hpp.