ChangeUnitProperty Class Reference

Changes the properties of a unit. More...

#include <changeunitproperty.h>

Inheritance diagram for ChangeUnitProperty:

Inheritance graph
[legend]
List of all members.

Public Types

enum  Property {
  Experience, Movement, AttackedFlag, Height,
  Direction, ReactionFire, PowerGeneration
}

Public Member Functions

 ChangeUnitProperty (Vehicle *vehicle, Property property, int value, bool valueIsAbsolute=true)
ASCString getDescription () const

Protected Member Functions

virtual GameActionID getID () const
virtual ActionResult runAction (const Context &context)
virtual ActionResult undoAction (const Context &context)
virtual ActionResult preCheck ()
 preCheck is called before an action is redone and should check the preconditions for the action.
virtual ActionResult postCheck ()
 postCheck is called after an action has been redone and should check that the state of the map is exactly the same as it was after the action has been executed the first time.
virtual void readData (tnstream &stream)
virtual void writeData (tnstream &stream) const

Friends

template<class Child>
GameActionGameActionCreator (GameMap *map)

Detailed Description

Changes the properties of a unit.

This is done none-recursively, so the cargo of a unit is not affected

Definition at line 31 of file changeunitproperty.h.


Member Enumeration Documentation

enum ChangeUnitProperty::Property

Enumerator:
Experience 
Movement 
AttackedFlag 
Height 
Direction 
ReactionFire 
PowerGeneration 

Definition at line 33 of file changeunitproperty.h.


Constructor & Destructor Documentation

ChangeUnitProperty::ChangeUnitProperty ( Vehicle vehicle,
Property  property,
int  value,
bool  valueIsAbsolute = true 
)

Definition at line 28 of file changeunitproperty.cpp.


Member Function Documentation

ASCString ChangeUnitProperty::getDescription (  )  const [virtual]

Implements GameAction.

Definition at line 51 of file changeunitproperty.cpp.

References Vehicle::getName(), UnitAction::getUnit(), and ASCString::toString().

GameActionID ChangeUnitProperty::getID (  )  const [protected, virtual]

Implements GameAction.

Definition at line 94 of file changeunitproperty.cpp.

References ActionRegistry::ChangeUnitProperty.

ActionResult ChangeUnitProperty::runAction ( const Context context  )  [protected, virtual]

Implements GameAction.

Definition at line 143 of file changeunitproperty.cpp.

ActionResult ChangeUnitProperty::undoAction ( const Context context  )  [protected, virtual]

Implements GameAction.

Definition at line 157 of file changeunitproperty.cpp.

ActionResult ChangeUnitProperty::preCheck (  )  [protected, virtual]

preCheck is called before an action is redone and should check the preconditions for the action.

The map should be in exactly the same state as it was when the action was first run. This method should check various key indicators to insurce the unmodifiedness of the map. The cheat detection of Replays heavily relies on this mechanism.

Reimplemented from GameAction.

Definition at line 164 of file changeunitproperty.cpp.

References UnitAction::getUnit().

ActionResult ChangeUnitProperty::postCheck (  )  [protected, virtual]

postCheck is called after an action has been redone and should check that the state of the map is exactly the same as it was after the action has been executed the first time.

The cheat detection of Replays heavily relies on this mechanism.

Reimplemented from GameAction.

Definition at line 172 of file changeunitproperty.cpp.

References UnitAction::getUnit().

void ChangeUnitProperty::readData ( tnstream stream  )  [protected, virtual]

Reimplemented from UnitAction.

Definition at line 66 of file changeunitproperty.cpp.

References UnitAction::readData(), and tnstream::readInt().

void ChangeUnitProperty::writeData ( tnstream stream  )  const [protected, virtual]

Reimplemented from UnitAction.

Definition at line 82 of file changeunitproperty.cpp.

References UnitAction::writeData(), and tnstream::writeInt().


Friends And Related Function Documentation

template<class Child>
GameAction* GameActionCreator ( GameMap map  )  [friend]

Definition at line 114 of file action.h.


The documentation for this class was generated from the following files:
Generated on Mon May 21 01:46:30 2012 for Advanced Strategic Command by  doxygen 1.5.1