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
Public Member Functions | Protected Attributes | List of all members
Tactics3D::EvocationObject Class Reference

#include <Tactics3DEvocationObject.h>

Inheritance diagram for Tactics3D::EvocationObject:
OpenSkyNet::Core::ABCObject OpenSkyNet::Core::CollisionListener OpenSkyNet::Core::Object

Public Member Functions

 EvocationObject (OpenSkyNet::Core::PhysVisObject *pVO_)
 
virtual ~EvocationObject ()
 
bool wentOutOfGrid () const
 
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 OpenSkyNet::Math::Matrix3x3 getRot () const
 
virtual void getRot (OpenSkyNet::Math::Matrix3x3 &rot_) const
 
virtual void setRot (const OpenSkyNet::Math::Matrix3x3 &rot_)
 
virtual
OpenSkyNet::Core::PhysicalObject
getPhysicalObject ()
 
virtual
OpenSkyNet::Core::VisibleObject
getVisibleObject ()
 
CollisionListener interface methods
virtual void setNonCollidingData (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_)
 
- Public Member Functions inherited from OpenSkyNet::Core::ABCObject
 ABCObject ()
 
virtual ~ABCObject ()
 
virtual bool getHasPosChanged () const
 
virtual void setHasPosChanged (bool val_)
 
virtual bool getHasRotChanged () const
 
virtual void setHasRotChanged (bool val_)
 
virtual Math::Point getVel () const
 
virtual void getVel (Math::Point<> &vel_) const
 
virtual void setVel (const Math::Point<> &vel_)
 
virtual bool getHasVelChanged () const
 
virtual void setHasVelChanged (bool val_)
 
virtual Math::Point getAngVel () const
 
virtual void getAngVel (Math::Point<> &angVel_) const
 
virtual void setAngVel (const Math::Point<> &angVel_)
 
virtual bool getHasAngVelChanged () const
 
virtual void setHasAngVelChanged (bool val_)
 
virtual const PhysicalObjectgetPhysicalObject () const
 
virtual const VisibleObjectgetVisibleObject () const
 
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 void handleNonCollidingTransformApplied (Object *obj_)
 
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_)
 

Protected Attributes

OpenSkyNet::Core::PhysVisObject_pVO
 
bool _wentOutOfGrid
 
- Protected Attributes inherited from OpenSkyNet::Core::ABCObject
std::string _name
 
bool _hasPosChanged
 
bool _hasRotChanged
 
bool _hasVelChanged
 
bool _hasAngVelChanged
 

Detailed Description

An object created by the Evocation super power

Constructor & Destructor Documentation

EvocationObject::EvocationObject ( OpenSkyNet::Core::PhysVisObject pVO_)
Todo:
remove this hack of setting an out-of-grid transform to handle collisions on creation
EvocationObject::~EvocationObject ( )
virtual
Todo:
_pVO is not destroyed until destroyAllObjects(); is that a problem?

Member Function Documentation

PhysicalObject * EvocationObject::getPhysicalObject ( )
virtual

Reimplemented from OpenSkyNet::Core::ABCObject.

Point EvocationObject::getPos ( ) const
virtual
virtual void Tactics3D::EvocationObject::getPos ( OpenSkyNet::Math::Point<> &  pos_) const
virtual
Matrix3x3 EvocationObject::getRot ( ) const
virtual
virtual void Tactics3D::EvocationObject::getRot ( OpenSkyNet::Math::Matrix3x3 rot_) const
virtual
VisibleObject * EvocationObject::getVisibleObject ( )
virtual

Reimplemented from OpenSkyNet::Core::ABCObject.

bool EvocationObject::handleCollisions ( OpenSkyNet::Core::Object collidee_,
std::vector< OpenSkyNet::CD::HitInfo > &  colliders_,
float &  dt_ 
)
virtual
bool EvocationObject::handleOutOfGrid ( OpenSkyNet::Core::Object obj_)
virtual
Returns
true if collisions should be recalculated for this object, false otherwise.

Reimplemented from OpenSkyNet::Core::CollisionListener.

void EvocationObject::setNonCollidingData ( OpenSkyNet::Core::Object obj_)
virtual

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.

void EvocationObject::setPos ( const OpenSkyNet::Math::Point<> &  pos_)
virtual
void EvocationObject::setRot ( const OpenSkyNet::Math::Matrix3x3 rot_)
virtual
bool Tactics3D::EvocationObject::wentOutOfGrid ( ) const
inline

Member Data Documentation

OpenSkyNet::Core::PhysVisObject* Tactics3D::EvocationObject::_pVO
protected
bool Tactics3D::EvocationObject::_wentOutOfGrid
protected

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