Claw
1.7.3
|
A state of a game. More...
#include <game_ai.hpp>
Public Types | |
typedef Numeric | score |
The type used for evaluationg the players' scores. | |
typedef Action | action |
A type representing an action of a player. |
Public Member Functions | |
virtual | ~game_state () |
Destructor. | |
virtual score | evaluate () const =0 |
Evaluate this state of the game. | |
virtual void | next_actions (std::list< action > &l) const =0 |
Get all actions that can be done from this state. | |
virtual game_state * | do_action (const action &a) const =0 |
Get a new state obtained when applying an action. | |
virtual bool | final () const =0 |
Tell if the game is over. |
Static Public Member Functions | |
static score | min_score () |
Get the minimal score a state can get. | |
static score | max_score () |
Get the maximal score a state can get. |
Protected Member Functions | |
score | fit (score score_val) const |
Truncate a score to fit in the range (min_score(), max_score()). |
Static Protected Attributes | |
static const score | s_min_score |
Minimal score that can be given to a state. | |
static const score | s_max_score |
Maximal score that can be given to a state. |
A state of a game.
Template parameters:
Action,: | a type representing an action of a player. |
Numeric,: | the type used for evaluationg the players' scores. |
Definition at line 54 of file game_ai.hpp.
|
pure virtual |
Get a new state obtained when applying an action.
a | The action to apply. |
|
protected |
Truncate a score to fit in the range (min_score(), max_score()).
score_val | The value to fit. |
Definition at line 77 of file game_ai.tpp.
|
pure virtual |
Get all actions that can be done from this state.
l | (out) The actions. |