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.
|
#include <Tactics3DWarrior.h>
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 |
Warrior * | getOtherGrappler () const |
virtual bool | grapple (Warrior *otherGrappler_) |
virtual bool | stopGrappling () |
bool | isAlive () const |
void | setDead () |
const std::vector< AttackRange * > & | getAttackRanges () const |
virtual const AttackRange * | getAttackRange (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::OgreVisibleObject * | getOgreVisibleObject () |
Ogre::SceneNode * | getRenderNode () |
Ogre::Entity * | getEntity () |
Fighting style accessors and modifiers | |
void | clearFightingStyles () |
void | addFightingStyle (FIGHTING_STYLE style_, int rank_) |
const FightingStyleContextMap & | getFightingStyleContexts () const |
Super power accessors and modifiers | |
void | clearSuperPowers () |
void | addSuperPower (SUPER_POWER power_) |
const SuperPowerContextMap & | getSuperPowerContexts () 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 IWeapon * | getPrimaryWeapon () const |
virtual IWeapon * | getPrimaryWeapon () |
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 |
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_) |
typedef std::map<FIGHTING_STYLE, FightingStyleContext> Tactics3D::Warrior::FightingStyleContextMap |
typedef std::map<SUPER_POWER, SuperPowerContext> Tactics3D::Warrior::SuperPowerContextMap |
Warrior::Warrior | ( | OpenSkyNet::Utils::uint | networkId_, |
OpenSkyNet::Core::PhysVisObject * | pVO_, | ||
int | gp_, | ||
int | lvl_, | ||
int | dex_, | ||
int | str_, | ||
int | end_, | ||
TEAM | team_ | ||
) |
|
virtual |
|
inlinevirtual |
|
inline |
void Warrior::addFightingStyle | ( | FIGHTING_STYLE | style_, |
int | rank_ | ||
) |
void Warrior::addSuperPower | ( | SUPER_POWER | power_ | ) |
|
static |
|
static |
|
static |
|
static |
|
virtual |
|
inlinevirtual |
|
inline |
void Warrior::clearFightingStyles | ( | ) |
|
inline |
|
inline |
|
virtual |
Reimplemented in Tactics3D::NPC.
|
inline |
|
inline |
|
inline |
|
static |
|
virtual |
|
virtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
virtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
static |
|
virtual |
|
inline |
|
static |
|
inline |
|
inlinevirtual |
float Warrior::getDist | ( | const Warrior * | warrior_ | ) | const |
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
|
inlinevirtual |
|
inline |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inline |
|
inline |
|
static |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
virtual |
|
inlinevirtual |
Implements OpenSkyNet::Core::Object.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
Implements OpenSkyNet::Core::Object.
Reimplemented in Tactics3D::NPC.
|
virtual |
|
virtual |
|
inline |
|
inlinevirtual |
Implements OpenSkyNet::Core::Object.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
Implements OpenSkyNet::Core::Object.
Reimplemented in Tactics3D::NPC.
|
inline |
|
inline |
|
inlinevirtual |
|
inline |
|
inline |
|
virtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
virtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
virtual |
|
virtual |
|
inlinevirtual |
Reimplemented in Tactics3D::PC.
|
inlinevirtual |
Reimplemented in Tactics3D::PC.
|
virtual |
Called by Core::CollisionDetector update() after the object is set to its "safe" transform.
Reimplemented from OpenSkyNet::Core::CollisionListener.
Reimplemented in Tactics3D::PC.
|
virtual |
Reimplemented from OpenSkyNet::Core::CollisionListener.
|
inline |
|
inline |
|
inline |
|
inline |
bool Warrior::isSuperPowerActive | ( | SUPER_POWER | power_ | ) |
|
inlinevirtual |
Reimplemented in Tactics3D::RemotePC.
|
inlinevirtual |
Reimplemented in Tactics3D::PC.
|
inlinevirtual |
|
virtual |
|
inlinevirtual |
Reimplemented in Tactics3D::PC, and Tactics3D::RemotePC.
|
inlinevirtual |
Reimplemented in Tactics3D::PC, and Tactics3D::RemotePC.
|
inlinevirtual |
Reimplemented in Tactics3D::PC, and Tactics3D::RemotePC.
|
inlinevirtual |
Reimplemented in Tactics3D::PC, Tactics3D::NPC, and Tactics3D::RemotePC.
Reimplemented in Tactics3D::PC, and Tactics3D::NPC.
|
virtual |
|
static |
|
static |
|
static |
|
static |
|
inlinevirtual |
Reimplemented in Tactics3D::PC, and Tactics3D::NPC.
void Warrior::setDead | ( | ) |
|
virtual |
|
virtual |
|
inlinestatic |
void Warrior::setGrounded | ( | bool | isGrounded_ | ) |
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
virtual |
|
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.
|
inlinestatic |
An event used to signal that a warrior is performing an action.
|
virtual |
Implements OpenSkyNet::Core::Object.
Reimplemented in Tactics3D::PC, Tactics3D::RemotePC, and Tactics3D::NPC.
|
inlinevirtual |
Implements OpenSkyNet::Core::Object.
Reimplemented in Tactics3D::NPC.
|
inline |
|
virtual |
|
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.
|
inlinevirtual |
Reimplemented from OpenSkyNet::Core::ABCObject.
Reimplemented in Tactics3D::NPC.
|
inlinevirtual |
void Warrior::snapToGrid | ( | ) |
|
virtual |
void Warrior::takeDamage | ( | int | dmg_ | ) |
|
virtual |
Returns true iff this action was handled.
|
inlinestatic |
|
inlinestatic |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
static |
Is the game app a smoke test?
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
struct Tactics3D::Warrior::Override Tactics3D::Warrior::_override |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
static |
Is the game app quitting?
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
static |
|
static |
|
static |