Planeshift
RotateOperation Class Reference

Rotating requires storing or determining the angle to rotate to, and the 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 ()
 
 RotateOperation ()
 
virtual OperationResult Run (NPC *npc, bool interrupted)
 
float SeekAngle (NPC *npc, float targetYRot)
 
virtual ~RotateOperation ()
 
- 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 Types

enum  {
  ROT_UNKNOWN, ROT_ABSOLUTE, ROT_RELATIVE, ROT_TARGET,
  ROT_LOCATE_DESTINATION, ROT_LOCATE_ROTATION, ROT_RANDOM, ROT_REGION,
  ROT_TRIBE_HOME
}
 

Protected Attributes

csString action
 
float angle_delta
 
float delta_angle
 
float max_range
 
float min_range
 
int op_type
 
float remaining
 
float target_angle
 
- 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 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

Rotating requires storing or determining the angle to rotate to, and the animation action.

Definition at line 1365 of file npcoperations.h.

Member Enumeration Documentation

anonymous enum
protected
Enumerator
ROT_UNKNOWN 
ROT_ABSOLUTE 
ROT_RELATIVE 
ROT_TARGET 
ROT_LOCATE_DESTINATION 
ROT_LOCATE_ROTATION 
ROT_RANDOM 
ROT_REGION 
ROT_TRIBE_HOME 

Definition at line 1368 of file npcoperations.h.

Constructor & Destructor Documentation

RotateOperation::RotateOperation ( )
inline

Definition at line 1394 of file npcoperations.h.

virtual RotateOperation::~RotateOperation ( )
inlinevirtual

Definition at line 1406 of file npcoperations.h.

Member Function Documentation

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

Reimplemented from ScriptOperation.

virtual void RotateOperation::InterruptOperation ( NPC npc)
virtual

Reimplemented from ScriptOperation.

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

Reimplemented from ScriptOperation.

virtual ScriptOperation* RotateOperation::MakeCopy ( )
virtual

Implements ScriptOperation.

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

Implements ScriptOperation.

float RotateOperation::SeekAngle ( NPC npc,
float  targetYRot 
)

Member Data Documentation

csString RotateOperation::action
protected

Definition at line 1388 of file npcoperations.h.

float RotateOperation::angle_delta
protected

Definition at line 1386 of file npcoperations.h.

float RotateOperation::delta_angle
protected

Definition at line 1382 of file npcoperations.h.

float RotateOperation::max_range
protected

Definition at line 1381 of file npcoperations.h.

float RotateOperation::min_range
protected

Definition at line 1381 of file npcoperations.h.

int RotateOperation::op_type
protected

Definition at line 1380 of file npcoperations.h.

float RotateOperation::remaining
protected

Definition at line 1391 of file npcoperations.h.

float RotateOperation::target_angle
protected

Definition at line 1384 of file npcoperations.h.


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