TrinityCore
MovementDefines.h File Reference
#include "Common.h"
#include "ObjectGuid.h"
#include "Optional.h"
+ Include dependency graph for MovementDefines.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ChaseRange
 
struct  ChaseAngle
 
struct  JumpArrivalCastArgs
 
struct  JumpChargeParams
 

Macros

#define SPEED_CHARGE   42.0f
 

Enumerations

enum  MovementGeneratorType : uint8 {
  IDLE_MOTION_TYPE = 0 , RANDOM_MOTION_TYPE = 1 , WAYPOINT_MOTION_TYPE = 2 , MAX_DB_MOTION_TYPE = 3 ,
  CONFUSED_MOTION_TYPE = 4 , CHASE_MOTION_TYPE = 5 , HOME_MOTION_TYPE = 6 , FLIGHT_MOTION_TYPE = 7 ,
  POINT_MOTION_TYPE = 8 , FLEEING_MOTION_TYPE = 9 , DISTRACT_MOTION_TYPE = 10 , ASSISTANCE_MOTION_TYPE = 11 ,
  ASSISTANCE_DISTRACT_MOTION_TYPE = 12 , TIMED_FLEEING_MOTION_TYPE = 13 , FOLLOW_MOTION_TYPE = 14 , ROTATE_MOTION_TYPE = 15 ,
  EFFECT_MOTION_TYPE = 16 , SPLINE_CHAIN_MOTION_TYPE = 17 , FORMATION_MOTION_TYPE = 18 , MAX_MOTION_TYPE
}
 
enum  MovementGeneratorMode : uint8 { MOTION_MODE_DEFAULT = 0 , MOTION_MODE_OVERRIDE }
 
enum  MovementGeneratorPriority : uint8 { MOTION_PRIORITY_NONE = 0 , MOTION_PRIORITY_NORMAL , MOTION_PRIORITY_HIGHEST }
 
enum  MovementSlot : uint8 { MOTION_SLOT_DEFAULT = 0 , MOTION_SLOT_ACTIVE , MAX_MOTION_SLOT }
 
enum class  MovementWalkRunSpeedSelectionMode { Default , ForceRun , ForceWalk }
 
enum class  MovementStopReason : uint8 { Finished , Interrupted }
 
enum  RotateDirection : uint8 { ROTATE_DIRECTION_LEFT = 0 , ROTATE_DIRECTION_RIGHT }
 

Functions

bool IsInvalidMovementGeneratorType (uint8 const type)
 
bool IsInvalidMovementSlot (uint8 const slot)
 

Macro Definition Documentation

◆ SPEED_CHARGE

#define SPEED_CHARGE   42.0f

Definition at line 25 of file MovementDefines.h.

Enumeration Type Documentation

◆ MovementGeneratorMode

Enumerator
MOTION_MODE_DEFAULT 
MOTION_MODE_OVERRIDE 

Definition at line 52 of file MovementDefines.h.

53{
56};
@ MOTION_MODE_DEFAULT
@ MOTION_MODE_OVERRIDE

◆ MovementGeneratorPriority

Enumerator
MOTION_PRIORITY_NONE 
MOTION_PRIORITY_NORMAL 
MOTION_PRIORITY_HIGHEST 

Definition at line 58 of file MovementDefines.h.

59{
63};
@ MOTION_PRIORITY_HIGHEST
@ MOTION_PRIORITY_NONE
@ MOTION_PRIORITY_NORMAL

◆ MovementGeneratorType

Enumerator
IDLE_MOTION_TYPE 
RANDOM_MOTION_TYPE 
WAYPOINT_MOTION_TYPE 
MAX_DB_MOTION_TYPE 
CONFUSED_MOTION_TYPE 
CHASE_MOTION_TYPE 
HOME_MOTION_TYPE 
FLIGHT_MOTION_TYPE 
POINT_MOTION_TYPE 
FLEEING_MOTION_TYPE 
DISTRACT_MOTION_TYPE 
ASSISTANCE_MOTION_TYPE 
ASSISTANCE_DISTRACT_MOTION_TYPE 
TIMED_FLEEING_MOTION_TYPE 
FOLLOW_MOTION_TYPE 
ROTATE_MOTION_TYPE 
EFFECT_MOTION_TYPE 
SPLINE_CHAIN_MOTION_TYPE 
FORMATION_MOTION_TYPE 
MAX_MOTION_TYPE 

Definition at line 28 of file MovementDefines.h.

29{
30 IDLE_MOTION_TYPE = 0, // IdleMovementGenerator.h
31 RANDOM_MOTION_TYPE = 1, // RandomMovementGenerator.h
32 WAYPOINT_MOTION_TYPE = 2, // WaypointMovementGenerator.h
33 MAX_DB_MOTION_TYPE = 3, // Below motion types can't be set in DB.
34 CONFUSED_MOTION_TYPE = 4, // ConfusedMovementGenerator.h
35 CHASE_MOTION_TYPE = 5, // ChaseMovementGenerator.h
36 HOME_MOTION_TYPE = 6, // HomeMovementGenerator.h
37 FLIGHT_MOTION_TYPE = 7, // FlightPathMovementGenerator.h
38 POINT_MOTION_TYPE = 8, // PointMovementGenerator.h
39 FLEEING_MOTION_TYPE = 9, // FleeingMovementGenerator.h
40 DISTRACT_MOTION_TYPE = 10, // IdleMovementGenerator.h
41 ASSISTANCE_MOTION_TYPE = 11, // PointMovementGenerator.h
42 ASSISTANCE_DISTRACT_MOTION_TYPE = 12, // IdleMovementGenerator.h
43 TIMED_FLEEING_MOTION_TYPE = 13, // FleeingMovementGenerator.h
44 FOLLOW_MOTION_TYPE = 14, // FollowMovementGenerator.h
45 ROTATE_MOTION_TYPE = 15, // IdleMovementGenerator.h
47 SPLINE_CHAIN_MOTION_TYPE = 17, // SplineChainMovementGenerator.h
48 FORMATION_MOTION_TYPE = 18, // FormationMovementGenerator.h
49 MAX_MOTION_TYPE // SKIP
50};
@ TIMED_FLEEING_MOTION_TYPE
@ MAX_DB_MOTION_TYPE
@ FORMATION_MOTION_TYPE
@ ASSISTANCE_MOTION_TYPE
@ DISTRACT_MOTION_TYPE
@ IDLE_MOTION_TYPE
@ CHASE_MOTION_TYPE
@ SPLINE_CHAIN_MOTION_TYPE
@ MAX_MOTION_TYPE
@ ROTATE_MOTION_TYPE
@ WAYPOINT_MOTION_TYPE
@ FLEEING_MOTION_TYPE
@ CONFUSED_MOTION_TYPE
@ HOME_MOTION_TYPE
@ POINT_MOTION_TYPE
@ FLIGHT_MOTION_TYPE
@ FOLLOW_MOTION_TYPE
@ RANDOM_MOTION_TYPE
@ ASSISTANCE_DISTRACT_MOTION_TYPE
@ EFFECT_MOTION_TYPE

◆ MovementSlot

Enumerator
MOTION_SLOT_DEFAULT 
MOTION_SLOT_ACTIVE 
MAX_MOTION_SLOT 

Definition at line 65 of file MovementDefines.h.

66{
70};
@ MOTION_SLOT_ACTIVE
@ MAX_MOTION_SLOT
@ MOTION_SLOT_DEFAULT

◆ MovementStopReason

enum class MovementStopReason : uint8
strong
Enumerator
Finished 
Interrupted 

Definition at line 79 of file MovementDefines.h.

80{
81 Finished, // Movement finished either by arriving at location or successfully continuing it for requested duration
83};

◆ MovementWalkRunSpeedSelectionMode

Enumerator
Default 
ForceRun 
ForceWalk 

Definition at line 72 of file MovementDefines.h.

◆ RotateDirection

Enumerator
ROTATE_DIRECTION_LEFT 
ROTATE_DIRECTION_RIGHT 

Definition at line 85 of file MovementDefines.h.

86{
89};
@ ROTATE_DIRECTION_RIGHT
@ ROTATE_DIRECTION_LEFT

Function Documentation

◆ IsInvalidMovementGeneratorType()

bool IsInvalidMovementGeneratorType ( uint8 const  type)
inline

Definition at line 139 of file MovementDefines.h.

139{ return type == MAX_DB_MOTION_TYPE || type >= MAX_MOTION_TYPE; }
+ Here is the caller graph for this function:

◆ IsInvalidMovementSlot()

bool IsInvalidMovementSlot ( uint8 const  slot)
inline

Definition at line 140 of file MovementDefines.h.

140{ return slot >= MAX_MOTION_SLOT; }
+ Here is the caller graph for this function: