-
Notifications
You must be signed in to change notification settings - Fork 0
GameManager utility class
The GameManager
is an utility class. Its goal is to update the GameState
in a definitive way, though it can also work on copies. To manipulate in a safe way the GameState
, use an instance of this class. This class does not contains any information: everything change is an update to the GameState
object.
For testing purposes, i.e. when an agent wants to see the consequences of an action, use the activate()
method. This method will create a deep copy of the GameState
object before apply the changes to it.
Otherwise, to apply in a definitive way the changes of an action to the state, use the step()
method.
The methods buildMovements()
, buildAttacks()
, buildResponses()
, buildSupportAttacks()
, buildActionsForFigure()
, buildResponsesForFigure()
, buildActionsForTeam()
, and buildResponsesForTeam()
, can be used to create different kind of actions.
The other methods are used by the MatchManager
class to control the development of a match.
- Rules Players
- Match Structure
- Game Status
- Line of Fire (LOF) and Line of Sight (LOS)
- Actions
- Game Board