Tactics: Western Philosophers Vs. Musicians  0.12
A turn-based tactical game combining rules and gameplay elements inspired by Final Fantasy Tactics and the Mayfair Exponential Game System. Unlike most games of this type, motion is in full, grid-less 3D.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | Static Protected Attributes | List of all members
Tactics3D::Warrior Class Reference

#include <Tactics3DWarrior.h>

Inheritance diagram for Tactics3D::Warrior:
OpenSkyNet::Core::ABCObject OpenSkyNet::Core::CollisionListener OpenSkyNet::Core::Object Tactics3D::NPC Tactics3D::PC Tactics3D::RemotePC

Classes

struct  FightingStyleContext
 
struct  Override
 
struct  SuperPowerContext
 

Public Types

enum  TEAM { NO_TEAM, PHILOSOPHER, MUSICIAN, MAX_TEAM }
 
typedef std::map
< FIGHTING_STYLE,
FightingStyleContext
FightingStyleContextMap
 
typedef std::map< SUPER_POWER,
SuperPowerContext
SuperPowerContextMap
 

Public Member Functions

 Warrior (OpenSkyNet::Utils::uint networkId_, OpenSkyNet::Core::PhysVisObject *pVO_, int gp_, int lvl_, int dex_, int str_, int end_, TEAM team_)
 
virtual ~Warrior ()
 
void setTempOD (int oD_)
 
void takeDamage (int dmg_)
 
virtual void setIsTurn (bool isTurn_)
 
bool isGrounded () const
 
void setGrounded (bool isGrounded_)
 
bool isGrappling () const
 
WarriorgetOtherGrappler () const
 
virtual bool grapple (Warrior *otherGrappler_)
 
virtual bool stopGrappling ()
 
bool isAlive () const
 
void setDead ()
 
const std::vector< AttackRange * > & getAttackRanges () const
 
virtual const AttackRangegetAttackRange (SPECIAL_MOVE specialMove_) const
 
void addEvocationObject (EvocationObject *evoObj_)
 
std::vector< EvocationObject * > & getEvocationObjects ()
 
virtual bool doPerformAction (const Action *action_, bool &doDelay_, bool &doSubstitute_, Action *&substitute_)
 
void snapToGrid ()
 
Object interface methods
virtual OpenSkyNet::Math::Point getPos () const
 
virtual void getPos (OpenSkyNet::Math::Point<> &pos_) const
 
virtual void setPos (const OpenSkyNet::Math::Point<> &pos_)
 
virtual bool getHasPosChanged () const
 
virtual void setHasPosChanged (bool val_)
 
virtual OpenSkyNet::Math::Matrix3x3 getRot () const
 
virtual void getRot (OpenSkyNet::Math::Matrix3x3 &rot_) const
 
virtual void setRot (const OpenSkyNet::Math::Matrix3x3 &rot_)
 
virtual bool getHasRotChanged () const
 
virtual void setHasRotChanged (bool val_)
 
virtual OpenSkyNet::Math::Point getVel () const
 
virtual void getVel (OpenSkyNet::Math::Point<> &vel_) const
 
virtual void setVel (const OpenSkyNet::Math::Point<> &vel_)
 
virtual OpenSkyNet::Math::Point getAngVel () const
 
virtual void getAngVel (OpenSkyNet::Math::Point<> &angVel_) const
 
virtual const
OpenSkyNet::Core::PhysicalObject
getPhysicalObject () const
 
virtual
OpenSkyNet::Core::PhysicalObject
getPhysicalObject ()
 
virtual const
OpenSkyNet::Core::VisibleObject
getVisibleObject () const
 
virtual
OpenSkyNet::Core::VisibleObject
getVisibleObject ()
 
CollisionListener interface methods
virtual void setNonCollidingData (OpenSkyNet::Core::Object *obj_)
 
virtual void handleNonCollidingTransformApplied (OpenSkyNet::Core::Object *obj_)
 
virtual bool handleCollisions (OpenSkyNet::Core::Object *collidee_, std::vector< OpenSkyNet::CD::HitInfo > &colliders_, float &dt_)
 
virtual bool handleOutOfGrid (OpenSkyNet::Core::Object *obj_)
 
Handlers for attack range collisions
virtual void handleNewAttackRangeCollisions (AttackRange *collidee_, std::vector< OpenSkyNet::Core::Object * > &colliders_)
 
virtual void handleDeletedAttackRangeCollisions (AttackRange *collidee_, std::vector< OpenSkyNet::Core::Object * > &colliders_)
 
Ogre accessors and modifiers
virtual void setVisible (bool val_)
 
const
OpenSkyNet::OgreCore::OgreVisibleObject
getOgreVisibleObject () const
 
OpenSkyNet::OgreCore::OgreVisibleObjectgetOgreVisibleObject ()
 
Ogre::SceneNode * getRenderNode ()
 
Ogre::Entity * getEntity ()
 
Fighting style accessors and modifiers
void clearFightingStyles ()
 
void addFightingStyle (FIGHTING_STYLE style_, int rank_)
 
const FightingStyleContextMapgetFightingStyleContexts () const
 
Super power accessors and modifiers
void clearSuperPowers ()
 
void addSuperPower (SUPER_POWER power_)
 
const SuperPowerContextMapgetSuperPowerContexts () const
 
virtual bool setSuperPowerActive (SUPER_POWER power_, const SuperPower::Warriors &targets_)
 
bool isSuperPowerActive (SUPER_POWER power_)
 
Inventory accessors and modifiers
virtual const std::list
< ICollectible * > & 
getInventory () const
 
virtual std::list
< ICollectible * > & 
getInventory ()
 
virtual const IWeapongetPrimaryWeapon () const
 
virtual IWeapongetPrimaryWeapon ()
 
virtual void setPrimaryWeapon (IWeapon *weapon_)
 
Attribute accessors
int getGP () const
 
int getLvl () const
 
virtual int getDex () const
 
virtual int getInitDex () const
 
virtual void setDex (int dex_)
 
virtual void setInitDex (int dex_)
 
virtual int getStr () const
 
virtual int getInitStr () const
 
virtual void setStr (int str_)
 
virtual void setInitStr (int str_)
 
virtual int getEnd () const
 
virtual int getInitEnd () const
 
virtual void setEnd (int end_)
 
virtual void setInitEnd (int end_)
 
TEAM getTeam () const
 
int getOO (FIGHTING_STYLE style_=HIGHEST_OO) const
 
int getOD () const
 
int getInitOD () const
 
int getDmgAdj () const
 
int getSpeed () const
 
void setSpeed (int speed_)
 
float getMovementLeftInAction () const
 
void disableMovement ()
 
void enableMovement ()
 
bool isMovementEnabled () const
 
Action accessors and modifiers
virtual void setActions ()
 
void clearActions ()
 
std::list< Tactics3D::Action * > * getActions ()
 
const std::list
< Tactics3D::Action * > * 
getActions () const
 
virtual bool canAddAction (const Tactics3D::Action *action_) const
 
virtual bool updateContinuousAction (Tactics3D::Action *&action_)
 
Special move counters
SPECIAL_MOVE getSpecialMoveJustPerformed () const
 
virtual void addCounterableMove (Warrior *attacker_, SPECIAL_MOVE move_)
 
virtual bool canCounter (Warrior *attacker_, SPECIAL_MOVE move_) const
 
Tactics3D utilities
virtual void getPointInSpread (float spread_, OpenSkyNet::Math::Point< float, 2 > &p_)
 
const OpenSkyNet::Math::Point
< float, 2 > & 
getCachedPointInSpread ()
 
virtual void getAim (float spread_, OpenSkyNet::Math::Point<> &origin_, OpenSkyNet::Math::Point<> &dir_)
 
float getDist (const Warrior *warrior_) const
 
Tactics3D event handlers
virtual void onPrePerformAnyAction (const std::vector< Warrior * > &warriors_)
 
virtual void onPostPerformAction (const Action *action_)
 
virtual void onMove ()
 
virtual void onHipFire (OpenSkyNet::Core::Object *intendedTarget_, Action *action_)
 
virtual void onIronSightsFire (OpenSkyNet::Core::Object *intendedTarget_, Action *action_)
 
virtual void onEvocation ()
 
virtual bool onAttack (std::vector< OpenSkyNet::Utils::TaggedUnion > &eventParams_)
 
virtual void onDefend ()
 
virtual void onAttacked (const std::vector< OpenSkyNet::Utils::TaggedUnion > &eventParams_)
 
virtual void onDefended ()
 
virtual void onRoundEnd ()
 
- Public Member Functions inherited from OpenSkyNet::Core::ABCObject
 ABCObject ()
 
virtual ~ABCObject ()
 
virtual bool getHasVelChanged () const
 
virtual void setHasVelChanged (bool val_)
 
virtual void setAngVel (const Math::Point<> &angVel_)
 
virtual bool getHasAngVelChanged () const
 
virtual void setHasAngVelChanged (bool val_)
 
virtual const std::string & getName () const
 
virtual void setName (const std::string &name_)
 
- Public Member Functions inherited from OpenSkyNet::Core::Object
 Object ()
 
virtual ~Object ()
 
- Public Member Functions inherited from OpenSkyNet::Core::CollisionListener
virtual bool handleCollisions (Object *collidee_, std::vector< CD::HitInfo > &collisions_, float &dt_)
 
virtual void handleNewCollisions (Object *collidee_, std::vector< Object * > &colliders_)
 
virtual void handleDeletedCollisions (Object *collidee_, std::vector< Object * > &colliders_)
 
virtual bool handleWrongSidedness (Object *collidee_, std::vector< CD::HitInfo > &collisions_)
 

Static Public Attributes

static const
OpenSkyNet::Utils::uint 
MAX_FIGHTING_STYLES = 4
 
static const
OpenSkyNet::Utils::uint 
MAX_SUPER_POWERS = 2
 
static const
OpenSkyNet::Utils::uint 
MAX_ACTIONS = 3
 

Protected Attributes

OpenSkyNet::Utils::uint _networkId
 
OpenSkyNet::Core::PhysVisObject_pVO
 
OpenSkyNet::Math::Point _prevPos
 
int _gp
 
int _lvl
 
int _dex
 
int _str
 
int _end
 
int _initDex
 
int _initStr
 
int _initEnd
 
TEAM _team
 
int _oO
 
int _oD
 
int _prevOD
 
int _initOD
 
int _dmgAdj
 
int _speed
 
int _flags
 
int _numRoundEndEventsSinceTempOD
 
FightingStyleContextMap _fightingStyleContexts
 
SuperPowerContextMap _superPowerContexts
 
bool _isTurn
 
bool _isGrounded
 
bool _isGrappling
 
bool _isDead
 
SPECIAL_MOVE _specialMoveJustPerformed
 
std::set< CounterableMove_counterableMoves
 
float _movementLeftInAction
 
float _distMovedLastPosSet
 
std::vector< AttackRange * > _attackRanges
 
std::vector< EvocationObject * > _evocationObjects
 
std::list< Action * > _actions
 
Warrior_otherGrappler
 
OpenSkyNet::Math::Point< float, 2 > _cachedPointInSpread
 
std::list< ICollectible * > _inventory
 
- Protected Attributes inherited from OpenSkyNet::Core::ABCObject
std::string _name
 
bool _hasPosChanged
 
bool _hasRotChanged
 
bool _hasVelChanged
 
bool _hasAngVelChanged
 

Static Protected Attributes

static OpenSkyNet::Utils::SyncEvent _performEvent
 

Synchronization members for game and rendering loops

static const volatile bool * _quit = 0
 
static bool _isSmokeTest = false
 
struct Tactics3D::Warrior::Override _override
 
static void setEvent (OpenSkyNet::Utils::SyncEvent &event_, bool ignoreIfQuitting_)
 
static void waitForEvent (OpenSkyNet::Utils::SyncEvent &event_, bool ignoreIfQuitting_)
 
static void setPerformEvent (bool ignoreIfQuitting_)
 
static void waitForPerformEvent (bool ignoreIfQuitting_)
 

Networking Operations

OpenSkyNet::Utils::uint getNetworkId () const
 
static OpenSkyNet::Utils::uint getAttributesBufferLen ()
 
static OpenSkyNet::Utils::uint serializeAttributes (const Warrior *warrior_, char(&buffer_)[MAX_STRING_SIZE])
 
static void assembleAttributes (char(&buffer_)[MAX_STRING_SIZE], std::vector< OpenSkyNet::Utils::TaggedUnion > &eventParams_)
 
static OpenSkyNet::Utils::uint getActionsBufferLen ()
 
static OpenSkyNet::Utils::uint serializeActions (const Warrior *warrior_, char(&buffer_)[MAX_STRING_SIZE])
 
static void assembleActions (char(&buffer_)[MAX_STRING_SIZE], const std::vector< Warrior * > &warriors_, OpenSkyNet::Utils::uint warriorIndex_, std::list< Action * > &actions_)
 
static OpenSkyNet::Utils::uint getMoveUpdateBufferLen ()
 
static OpenSkyNet::Utils::uint serializeMoveUpdate (const Warrior *warrior_, int flags_, char(&buffer_)[MAX_STRING_SIZE])
 
static void assembleMoveUpdate (char(&buffer_)[MAX_STRING_SIZE], OpenSkyNet::Utils::uint warriorIndex_, int &flags_, OpenSkyNet::Math::Point<> &pos_, OpenSkyNet::Math::Point<> &axis_, float &radians_)
 
static OpenSkyNet::Utils::uint getAttackBufferLen ()
 
static OpenSkyNet::Utils::uint serializeAttack (const std::vector< OpenSkyNet::Utils::TaggedUnion > &eventParams_, char(&buffer_)[MAX_STRING_SIZE])
 
static void assembleAttack (char(&buffer_)[MAX_STRING_SIZE], std::vector< OpenSkyNet::Utils::TaggedUnion > &eventParams_)
 

Detailed Description

A warrior, PC, NPC, or RemotePC, in the game.

Member Typedef Documentation

Todo:
Use a custom pool allocator

Member Enumeration Documentation

Enumerator
NO_TEAM 
PHILOSOPHER 
MUSICIAN 
MAX_TEAM 

Constructor & Destructor Documentation

Warrior::Warrior ( OpenSkyNet::Utils::uint  networkId_,
OpenSkyNet::Core::PhysVisObject pVO_,
int  gp_,
int  lvl_,
int  dex_,
int  str_,
int  end_,
TEAM  team_ 
)
Warrior::~Warrior ( )
virtual

Member Function Documentation

virtual void Tactics3D::Warrior::addCounterableMove ( Warrior attacker_,
SPECIAL_MOVE  move_ 
)
inlinevirtual
void Tactics3D::Warrior::addEvocationObject ( EvocationObject evoObj_)
inline
void Warrior::addFightingStyle ( FIGHTING_STYLE  style_,
int  rank_ 
)
void Warrior::addSuperPower ( SUPER_POWER  power_)
void Warrior::assembleActions ( char(&)  buffer_[MAX_STRING_SIZE],
const std::vector< Warrior * > &  warriors_,
OpenSkyNet::Utils::uint  warriorIndex_,
std::list< Action * > &  actions_ 
)
static
void Warrior::assembleAttack ( char(&)  buffer_[MAX_STRING_SIZE],
std::vector< OpenSkyNet::Utils::TaggedUnion > &  eventParams_ 
)
static
void Warrior::assembleAttributes ( char(&)  buffer_[MAX_STRING_SIZE],
std::vector< OpenSkyNet::Utils::TaggedUnion > &  eventParams_ 
)
static
void Warrior::assembleMoveUpdate ( char(&)  buffer_[MAX_STRING_SIZE],
OpenSkyNet::Utils::uint  warriorIndex_,
int &  flags_,
OpenSkyNet::Math::Point<> &  pos_,
OpenSkyNet::Math::Point<> &  axis_,
float &  radians_ 
)
static
bool Warrior::canAddAction ( const Tactics3D::Action action_) const
virtual
virtual bool Tactics3D::Warrior::canCounter ( Warrior attacker_,
SPECIAL_MOVE  move_ 
) const
inlinevirtual
void Tactics3D::Warrior::clearActions ( )
inline
void Warrior::clearFightingStyles ( )
void Tactics3D::Warrior::clearSuperPowers ( )
inline
void Tactics3D::Warrior::disableMovement ( )
inline
bool Warrior::doPerformAction ( const Action action_,
bool &  doDelay_,
bool &  doSubstitute_,
Action *&  substitute_ 
)
virtual
Todo:
don't check for specific special moves

Reimplemented in Tactics3D::NPC.

void Tactics3D::Warrior::enableMovement ( )
inline
std::list<Tactics3D::Action*>* Tactics3D::Warrior::getActions ( )
inline
const std::list<Tactics3D::Action*>* Tactics3D::Warrior::getActions ( ) const
inline
OpenSkyNet::Utils::uint Warrior::getActionsBufferLen ( )
static
void Warrior::getAim ( float  spread_,
OpenSkyNet::Math::Point<> &  origin_,
OpenSkyNet::Math::Point<> &  dir_ 
)
virtual
Point Warrior::getAngVel ( ) const
virtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual void Tactics3D::Warrior::getAngVel ( OpenSkyNet::Math::Point<> &  angVel_) const
virtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

OpenSkyNet::Utils::uint Warrior::getAttackBufferLen ( )
static
const AttackRange * Warrior::getAttackRange ( SPECIAL_MOVE  specialMove_) const
virtual
const std::vector<AttackRange*>& Tactics3D::Warrior::getAttackRanges ( ) const
inline
OpenSkyNet::Utils::uint Warrior::getAttributesBufferLen ( )
static
const OpenSkyNet::Math::Point<float, 2>& Tactics3D::Warrior::getCachedPointInSpread ( )
inline
virtual int Tactics3D::Warrior::getDex ( ) const
inlinevirtual
float Warrior::getDist ( const Warrior warrior_) const
int Tactics3D::Warrior::getDmgAdj ( ) const
inline
virtual int Tactics3D::Warrior::getEnd ( ) const
inlinevirtual
Ogre::Entity* Tactics3D::Warrior::getEntity ( )
inline
std::vector<EvocationObject*>& Tactics3D::Warrior::getEvocationObjects ( )
inline
const FightingStyleContextMap& Tactics3D::Warrior::getFightingStyleContexts ( ) const
inline
int Tactics3D::Warrior::getGP ( ) const
inline
virtual bool Tactics3D::Warrior::getHasPosChanged ( ) const
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual bool Tactics3D::Warrior::getHasRotChanged ( ) const
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual int Tactics3D::Warrior::getInitDex ( ) const
inlinevirtual
virtual int Tactics3D::Warrior::getInitEnd ( ) const
inlinevirtual
int Tactics3D::Warrior::getInitOD ( ) const
inline
virtual int Tactics3D::Warrior::getInitStr ( ) const
inlinevirtual
virtual const std::list<ICollectible*>& Tactics3D::Warrior::getInventory ( ) const
inlinevirtual
virtual std::list<ICollectible*>& Tactics3D::Warrior::getInventory ( )
inlinevirtual
int Tactics3D::Warrior::getLvl ( ) const
inline
float Tactics3D::Warrior::getMovementLeftInAction ( ) const
inline
OpenSkyNet::Utils::uint Warrior::getMoveUpdateBufferLen ( )
static
OpenSkyNet::Utils::uint Tactics3D::Warrior::getNetworkId ( ) const
inline
int Tactics3D::Warrior::getOD ( ) const
inline
const OpenSkyNet::OgreCore::OgreVisibleObject* Tactics3D::Warrior::getOgreVisibleObject ( ) const
inline
OpenSkyNet::OgreCore::OgreVisibleObject* Tactics3D::Warrior::getOgreVisibleObject ( )
inline
int Tactics3D::Warrior::getOO ( FIGHTING_STYLE  style_ = HIGHEST_OO) const
inline
Warrior* Tactics3D::Warrior::getOtherGrappler ( ) const
inline
virtual const OpenSkyNet::Core::PhysicalObject* Tactics3D::Warrior::getPhysicalObject ( ) const
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual OpenSkyNet::Core::PhysicalObject* Tactics3D::Warrior::getPhysicalObject ( )
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

void Warrior::getPointInSpread ( float  spread_,
OpenSkyNet::Math::Point< float, 2 > &  p_ 
)
virtual
virtual OpenSkyNet::Math::Point Tactics3D::Warrior::getPos ( ) const
inlinevirtual

Implements OpenSkyNet::Core::Object.

Reimplemented in Tactics3D::NPC.

virtual void Tactics3D::Warrior::getPos ( OpenSkyNet::Math::Point<> &  pos_) const
inlinevirtual

Implements OpenSkyNet::Core::Object.

Reimplemented in Tactics3D::NPC.

const IWeapon * Warrior::getPrimaryWeapon ( ) const
virtual
IWeapon * Warrior::getPrimaryWeapon ( )
virtual
Ogre::SceneNode* Tactics3D::Warrior::getRenderNode ( )
inline
virtual OpenSkyNet::Math::Matrix3x3 Tactics3D::Warrior::getRot ( ) const
inlinevirtual

Implements OpenSkyNet::Core::Object.

Reimplemented in Tactics3D::NPC.

virtual void Tactics3D::Warrior::getRot ( OpenSkyNet::Math::Matrix3x3 rot_) const
inlinevirtual

Implements OpenSkyNet::Core::Object.

Reimplemented in Tactics3D::NPC.

SPECIAL_MOVE Tactics3D::Warrior::getSpecialMoveJustPerformed ( ) const
inline
int Tactics3D::Warrior::getSpeed ( ) const
inline
virtual int Tactics3D::Warrior::getStr ( ) const
inlinevirtual
const SuperPowerContextMap& Tactics3D::Warrior::getSuperPowerContexts ( ) const
inline
TEAM Tactics3D::Warrior::getTeam ( ) const
inline
Point Warrior::getVel ( ) const
virtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual void Tactics3D::Warrior::getVel ( OpenSkyNet::Math::Point<> &  vel_) const
virtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual const OpenSkyNet::Core::VisibleObject* Tactics3D::Warrior::getVisibleObject ( ) const
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual OpenSkyNet::Core::VisibleObject* Tactics3D::Warrior::getVisibleObject ( )
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

bool Warrior::grapple ( Warrior otherGrappler_)
virtual
bool Warrior::handleCollisions ( OpenSkyNet::Core::Object collidee_,
std::vector< OpenSkyNet::CD::HitInfo > &  colliders_,
float &  dt_ 
)
virtual
virtual void Tactics3D::Warrior::handleDeletedAttackRangeCollisions ( AttackRange collidee_,
std::vector< OpenSkyNet::Core::Object * > &  colliders_ 
)
inlinevirtual

Reimplemented in Tactics3D::PC.

virtual void Tactics3D::Warrior::handleNewAttackRangeCollisions ( AttackRange collidee_,
std::vector< OpenSkyNet::Core::Object * > &  colliders_ 
)
inlinevirtual

Reimplemented in Tactics3D::PC.

void Warrior::handleNonCollidingTransformApplied ( OpenSkyNet::Core::Object obj_)
virtual

Called by Core::CollisionDetector update() after the object is set to its "safe" transform.

Reimplemented from OpenSkyNet::Core::CollisionListener.

Reimplemented in Tactics3D::PC.

bool Warrior::handleOutOfGrid ( OpenSkyNet::Core::Object obj_)
virtual
Returns
true if collisions should be recalculated for this object, false otherwise.

Reimplemented from OpenSkyNet::Core::CollisionListener.

bool Tactics3D::Warrior::isAlive ( ) const
inline
bool Tactics3D::Warrior::isGrappling ( ) const
inline
bool Tactics3D::Warrior::isGrounded ( ) const
inline
bool Tactics3D::Warrior::isMovementEnabled ( ) const
inline
bool Warrior::isSuperPowerActive ( SUPER_POWER  power_)
virtual bool Tactics3D::Warrior::onAttack ( std::vector< OpenSkyNet::Utils::TaggedUnion > &  eventParams_)
inlinevirtual

Reimplemented in Tactics3D::RemotePC.

virtual void Tactics3D::Warrior::onAttacked ( const std::vector< OpenSkyNet::Utils::TaggedUnion > &  eventParams_)
inlinevirtual

Reimplemented in Tactics3D::PC.

virtual void Tactics3D::Warrior::onDefend ( )
inlinevirtual
void Warrior::onDefended ( )
virtual
virtual void Tactics3D::Warrior::onEvocation ( )
inlinevirtual

Reimplemented in Tactics3D::PC, and Tactics3D::RemotePC.

virtual void Tactics3D::Warrior::onHipFire ( OpenSkyNet::Core::Object intendedTarget_,
Action action_ 
)
inlinevirtual

Reimplemented in Tactics3D::PC, and Tactics3D::RemotePC.

virtual void Tactics3D::Warrior::onIronSightsFire ( OpenSkyNet::Core::Object intendedTarget_,
Action action_ 
)
inlinevirtual

Reimplemented in Tactics3D::PC, and Tactics3D::RemotePC.

virtual void Tactics3D::Warrior::onMove ( )
inlinevirtual
void Warrior::onPostPerformAction ( const Action action_)
virtual
void Warrior::onPrePerformAnyAction ( const std::vector< Warrior * > &  warriors_)
virtual

Reimplemented in Tactics3D::PC, and Tactics3D::NPC.

void Warrior::onRoundEnd ( )
virtual
OpenSkyNet::Utils::uint Warrior::serializeActions ( const Warrior warrior_,
char(&)  buffer_[MAX_STRING_SIZE] 
)
static
Returns
number of bytes written to buffer_.
OpenSkyNet::Utils::uint Warrior::serializeAttack ( const std::vector< OpenSkyNet::Utils::TaggedUnion > &  eventParams_,
char(&)  buffer_[MAX_STRING_SIZE] 
)
static
Returns
number of bytes written to buffer_.
OpenSkyNet::Utils::uint Warrior::serializeAttributes ( const Warrior warrior_,
char(&)  buffer_[MAX_STRING_SIZE] 
)
static
Returns
number of bytes written to buffer_.
OpenSkyNet::Utils::uint Warrior::serializeMoveUpdate ( const Warrior warrior_,
int  flags_,
char(&)  buffer_[MAX_STRING_SIZE] 
)
static
Returns
number of bytes written to buffer_.
virtual void Tactics3D::Warrior::setActions ( )
inlinevirtual

Reimplemented in Tactics3D::PC, and Tactics3D::NPC.

void Warrior::setDead ( )
void Warrior::setDex ( int  dex_)
virtual
void Warrior::setEnd ( int  end_)
virtual
static void Tactics3D::Warrior::setEvent ( OpenSkyNet::Utils::SyncEvent event_,
bool  ignoreIfQuitting_ 
)
inlinestatic
void Warrior::setGrounded ( bool  isGrounded_)
virtual void Tactics3D::Warrior::setHasPosChanged ( bool  val_)
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual void Tactics3D::Warrior::setHasRotChanged ( bool  val_)
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual void Tactics3D::Warrior::setInitDex ( int  dex_)
inlinevirtual
virtual void Tactics3D::Warrior::setInitEnd ( int  end_)
inlinevirtual
virtual void Tactics3D::Warrior::setInitStr ( int  str_)
inlinevirtual
void Warrior::setIsTurn ( bool  isTurn_)
virtual
virtual void Tactics3D::Warrior::setNonCollidingData ( OpenSkyNet::Core::Object obj_)
inlinevirtual

Saves the motion info for obj_ when it is known not to cause collisions w/ other objects. This data is used in iterative collision detection routines whereby only one object can be tested for a new position/rotation at a time; the rest of the objects have to be at "safe" positions/rotations.

Reimplemented from OpenSkyNet::Core::CollisionListener.

static void Tactics3D::Warrior::setPerformEvent ( bool  ignoreIfQuitting_)
inlinestatic

An event used to signal that a warrior is performing an action.

void Warrior::setPos ( const OpenSkyNet::Math::Point<> &  pos_)
virtual
void Warrior::setPrimaryWeapon ( IWeapon weapon_)
virtual
virtual void Tactics3D::Warrior::setRot ( const OpenSkyNet::Math::Matrix3x3 rot_)
inlinevirtual

Implements OpenSkyNet::Core::Object.

Reimplemented in Tactics3D::NPC.

void Tactics3D::Warrior::setSpeed ( int  speed_)
inline
void Warrior::setStr ( int  str_)
virtual
bool Warrior::setSuperPowerActive ( SUPER_POWER  power_,
const SuperPower::Warriors targets_ 
)
virtual
void Warrior::setTempOD ( int  oD_)

Overall defense is set back after the next full round, or after an opponent's attack, whichever comes first.

virtual void Tactics3D::Warrior::setVel ( const OpenSkyNet::Math::Point<> &  vel_)
inlinevirtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Reimplemented in Tactics3D::NPC.

virtual void Tactics3D::Warrior::setVisible ( bool  val_)
inlinevirtual
void Warrior::snapToGrid ( )
bool Warrior::stopGrappling ( )
virtual
void Warrior::takeDamage ( int  dmg_)
Todo:
is it correct that if damage is taken, then all continuous actions are lost?
bool Warrior::updateContinuousAction ( Tactics3D::Action *&  action_)
virtual

Returns true iff this action was handled.

static void Tactics3D::Warrior::waitForEvent ( OpenSkyNet::Utils::SyncEvent event_,
bool  ignoreIfQuitting_ 
)
inlinestatic
static void Tactics3D::Warrior::waitForPerformEvent ( bool  ignoreIfQuitting_)
inlinestatic

Member Data Documentation

std::list<Action*> Tactics3D::Warrior::_actions
protected
std::vector<AttackRange*> Tactics3D::Warrior::_attackRanges
protected
OpenSkyNet::Math::Point<float, 2> Tactics3D::Warrior::_cachedPointInSpread
protected
std::set<CounterableMove> Tactics3D::Warrior::_counterableMoves
protected
int Tactics3D::Warrior::_dex
protected
float Tactics3D::Warrior::_distMovedLastPosSet
protected
int Tactics3D::Warrior::_dmgAdj
protected
int Tactics3D::Warrior::_end
protected
std::vector<EvocationObject*> Tactics3D::Warrior::_evocationObjects
protected
FightingStyleContextMap Tactics3D::Warrior::_fightingStyleContexts
protected
int Tactics3D::Warrior::_flags
protected
int Tactics3D::Warrior::_gp
protected
int Tactics3D::Warrior::_initDex
protected
int Tactics3D::Warrior::_initEnd
protected
int Tactics3D::Warrior::_initOD
protected
int Tactics3D::Warrior::_initStr
protected
std::list<ICollectible*> Tactics3D::Warrior::_inventory
protected
bool Tactics3D::Warrior::_isDead
protected
bool Tactics3D::Warrior::_isGrappling
protected
bool Tactics3D::Warrior::_isGrounded
protected
bool Tactics3D::Warrior::_isSmokeTest = false
static

Is the game app a smoke test?

bool Tactics3D::Warrior::_isTurn
protected
int Tactics3D::Warrior::_lvl
protected
float Tactics3D::Warrior::_movementLeftInAction
protected
OpenSkyNet::Utils::uint Tactics3D::Warrior::_networkId
protected
int Tactics3D::Warrior::_numRoundEndEventsSinceTempOD
protected
int Tactics3D::Warrior::_oD
protected
int Tactics3D::Warrior::_oO
protected
Warrior* Tactics3D::Warrior::_otherGrappler
protected
struct Tactics3D::Warrior::Override Tactics3D::Warrior::_override
OpenSkyNet::Utils::SyncEvent Tactics3D::Warrior::_performEvent
staticprotected
int Tactics3D::Warrior::_prevOD
protected
OpenSkyNet::Math::Point Tactics3D::Warrior::_prevPos
protected
OpenSkyNet::Core::PhysVisObject* Tactics3D::Warrior::_pVO
protected
const volatile bool * Tactics3D::Warrior::_quit = 0
static

Is the game app quitting?

SPECIAL_MOVE Tactics3D::Warrior::_specialMoveJustPerformed
protected
int Tactics3D::Warrior::_speed
protected
int Tactics3D::Warrior::_str
protected
SuperPowerContextMap Tactics3D::Warrior::_superPowerContexts
protected
TEAM Tactics3D::Warrior::_team
protected
const OpenSkyNet::Utils::uint Tactics3D::Warrior::MAX_ACTIONS = 3
static
const OpenSkyNet::Utils::uint Tactics3D::Warrior::MAX_FIGHTING_STYLES = 4
static
const OpenSkyNet::Utils::uint Tactics3D::Warrior::MAX_SUPER_POWERS = 2
static

The documentation for this class was generated from the following files: