Planeshift
MoveToOperation Class Reference

Moving to a spot entails a position vector, a linear velocity, and an animation action. More...

#include <npcoperations.h>

Public Member Functions

virtual bool GetEndPosition (NPC *npc, const csVector3 &myPos, const iSector *mySector, csVector3 &endPos, iSector *&endSector)
 
virtual bool Load (iDocumentNode *node)
 
virtual ScriptOperationMakeCopy ()
 
 MoveToOperation ()
 
 MoveToOperation (const MoveToOperation *other)
 
virtual bool UpdateEndPosition (NPC *npc, const csVector3 &myPos, const iSector *mySector, csVector3 &endPos, iSector *&endSector)
 
virtual ~MoveToOperation ()
 
- Public Member Functions inherited from MovementOperation
virtual OperationResult Advance (float timedelta, NPC *npc)
 
bool EndPointChanged (const csVector3 &endPos, const iSector *endSector) const
 
virtual void InterruptOperation (NPC *npc)
 
 MovementOperation (const char *name)
 
virtual OperationResult Run (NPC *npc, bool interrupted)
 
virtual ~MovementOperation ()
 
- 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 Attributes

csString action
 
csVector3 destPos
 
iSector * destSector
 
csString memoryCheck
 Used to keep memory name in case coordinates are taken from there. More...
 
- Protected Attributes inherited from MovementOperation
csString action
 The animation used during chase. More...
 
float currentDistance
 The distance to the current local destination. More...
 
csVector3 endPos
 
iSector * endSector
 
csRef< iCelHPath > path
 
- 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 }
 
- Protected Member Functions inherited from MovementOperation
 MovementOperation (const MovementOperation *other)
 
- 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)
 
- 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 to a spot entails a position vector, a linear velocity, and an animation action.

Definition at line 1143 of file npcoperations.h.

Constructor & Destructor Documentation

MoveToOperation::MoveToOperation ( )
MoveToOperation::MoveToOperation ( const MoveToOperation other)
virtual MoveToOperation::~MoveToOperation ( )
inlinevirtual

Definition at line 1154 of file npcoperations.h.

Member Function Documentation

virtual bool MoveToOperation::GetEndPosition ( NPC npc,
const csVector3 &  myPos,
const iSector *  mySector,
csVector3 &  endPos,
iSector *&  endSector 
)
virtual

Implements MovementOperation.

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

Reimplemented from MovementOperation.

virtual ScriptOperation* MoveToOperation::MakeCopy ( )
virtual

Implements ScriptOperation.

virtual bool MoveToOperation::UpdateEndPosition ( NPC npc,
const csVector3 &  myPos,
const iSector *  mySector,
csVector3 &  endPos,
iSector *&  endSector 
)
virtual

Implements MovementOperation.

Member Data Documentation

csString MoveToOperation::action
protected

Definition at line 1150 of file npcoperations.h.

csVector3 MoveToOperation::destPos
protected

Definition at line 1146 of file npcoperations.h.

iSector* MoveToOperation::destSector
protected

Definition at line 1147 of file npcoperations.h.

csString MoveToOperation::memoryCheck
protected

Used to keep memory name in case coordinates are taken from there.

Definition at line 1149 of file npcoperations.h.


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