Planeshift
MoveOperation Class Reference

Moving entails a velocity vector and an animation action. More...

#include <npcoperations.h>

Public Member Functions

virtual OperationResult Advance (float timedelta, NPC *npc)
 
virtual void InterruptOperation (NPC *npc)
 
virtual bool Load (iDocumentNode *node)
 
virtual ScriptOperationMakeCopy ()
 
 MoveOperation ()
 
virtual OperationResult Run (NPC *npc, bool interrupted)
 
virtual ~MoveOperation ()
 
- Public Member Functions inherited from ScriptOperation
void AddRandomRange (csVector3 &dest, float radius, float margin=0.0)
 Move a point somwhere random within radius of the orignial point. More...
 
virtual bool AtInterruptedAngle (const csVector3 &pos, const iSector *sector, float angle)
 
virtual bool AtInterruptedAngle (NPC *npc)
 
virtual bool AtInterruptedPosition (const csVector3 &pos, const iSector *sector)
 
virtual bool AtInterruptedPosition (NPC *npc)
 
virtual bool CheckEndPointOk (NPC *npc, const csVector3 &myPos, iSector *mySector, const csVector3 &endPos, iSector *endSector)
 Check if the end point where ok. More...
 
virtual bool CheckMoveOk (NPC *npc, csVector3 oldPos, iSector *oldSector, const csVector3 &newPos, iSector *newSector, int resultFromExtrapolate)
 Check if the move where ok. More...
 
void CopyCheckMoveOk (ScriptOperation *source)
 Copy CheckMoveOk paramters from the source script. More...
 
virtual void Failure (NPC *npc)
 Called when the run operation return OPERATION_FAILED. More...
 
virtual float GetAngularVelocity (NPC *npc)
 
virtual const csString & GetCollisionPerception (NPC *npc)
 Return the Collision perception event name. More...
 
virtual const csString & GetFallingPerception (NPC *npc)
 Return the Falling perception event name. More...
 
virtual const csString & GetInBoundsPerception (NPC *npc)
 Return the In Bounds perception event name. More...
 
virtual const char * GetName () const
 
virtual const csString & GetOutOfBoundsPerception (NPC *npc)
 Return the Out of Bounds perception event name. More...
 
virtual State GetState () const
 
virtual float GetVelocity (NPC *npc)
 Return the velocity for the npc. More...
 
bool LoadCheckMoveOk (iDocumentNode *node)
 Load attributes for the CheckMoveOk check. More...
 
bool LoadVelocity (iDocumentNode *node)
 
 ScriptOperation (const char *sciptName)
 
 ScriptOperation (const ScriptOperation *other)
 
void SetAnimation (NPC *npc, const char *name)
 This function will set an animation for the NPC, the animation will play once. More...
 
void SetParent (Behavior *behavior)
 Set the parent behavior for this operation. More...
 
virtual void SetState (State state)
 
virtual ~ScriptOperation ()
 

Protected Member Functions

 MoveOperation (const char *n)
 
- Protected Member Functions inherited from ScriptOperation
int StartMoveTo (NPC *npc, const csVector3 &dest, iSector *sector, float vel, const char *action, float &angle)
 This function is used by MoveTo AND Navigate operations. More...
 
void TurnTo (NPC *npc, const csVector3 &dest, iSector *destsect, csVector3 &forward, float &angle)
 

Protected Attributes

csString action
 
float angle
 
float duration
 
float remaining
 
- Protected Attributes inherited from ScriptOperation
float ang_vel
 Shared angular velocity, used by all that rotates. More...
 
bool checkTribeHome
 Set to true if the tribe home should be checked by CheckMoveOk. More...
 
csString collision
 Perception names to use for collision detected by CheckMoveOk. More...
 
int consecCollisions
 Shared by move functions. Used by CheckMoveOk to detect collisions. More...
 
csString failurePerception
 The Perception to fire when a operation return OPERATION_FAILED. More...
 
csString falling
 Perception names to use for fall detected by CheckMoveOk. More...
 
csString inBounds
 Perception names to use for in bounds detected by CheckMoveOk. More...
 
float interrupted_angle
 
csVector3 interrupted_position
 
iSector * interrupted_sector
 
csString name
 
csString outOfBounds
 Perception names to use for out of bounds detected by CheckMoveOk. More...
 
Behaviorparent
 
State state
 
float vel
 Shared linear velocity, used by all that moves. More...
 
VelSource velSource
 Source used for velocity. More...
 

Additional Inherited Members

- Public Types inherited from ScriptOperation
enum  OperationResult { OPERATION_NOT_COMPLETED, OPERATION_COMPLETED, OPERATION_FAILED }
 
enum  State { READY_TO_RUN, RUNNING, INTERRUPTED, COMPLETED }
 
enum  VelSource { VEL_DEFAULT, VEL_USER, VEL_WALK, VEL_RUN }
 
- Static Protected Member Functions inherited from ScriptOperation
static void StopMovement (NPC *npc)
 Utility function used by many operation to stop movement of an NPC. More...
 

Detailed Description

Moving entails a velocity vector and an animation action.

Definition at line 652 of file npcoperations.h.

Constructor & Destructor Documentation

MoveOperation::MoveOperation ( const char *  n)
inlineprotected

Definition at line 663 of file npcoperations.h.

MoveOperation::MoveOperation ( )
inline

Definition at line 671 of file npcoperations.h.

virtual MoveOperation::~MoveOperation ( )
inlinevirtual

Definition at line 677 of file npcoperations.h.

Member Function Documentation

virtual OperationResult MoveOperation::Advance ( float  timedelta,
NPC npc 
)
virtual

Reimplemented from ScriptOperation.

virtual void MoveOperation::InterruptOperation ( NPC npc)
virtual

Reimplemented from ScriptOperation.

virtual bool MoveOperation::Load ( iDocumentNode *  node)
virtual

Reimplemented from ScriptOperation.

Reimplemented in CircleOperation.

virtual ScriptOperation* MoveOperation::MakeCopy ( )
virtual

Implements ScriptOperation.

Reimplemented in CircleOperation.

virtual OperationResult MoveOperation::Run ( NPC npc,
bool  interrupted 
)
virtual

Implements ScriptOperation.

Reimplemented in CircleOperation.

Member Data Documentation

csString MoveOperation::action
protected

Definition at line 655 of file npcoperations.h.

float MoveOperation::angle
protected

Definition at line 658 of file npcoperations.h.

float MoveOperation::duration
protected

Definition at line 656 of file npcoperations.h.

float MoveOperation::remaining
protected

Definition at line 661 of file npcoperations.h.


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