Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
IdleMovementGenerator.h
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#ifndef SKYFIRE_IDLEMOVEMENTGENERATOR_H
7
#define SKYFIRE_IDLEMOVEMENTGENERATOR_H
8
9
#include "
MovementGenerator.h
"
10
11
class
IdleMovementGenerator
:
public
MovementGenerator
12
{
13
public
:
14
void
Initialize
(
Unit
*)
OVERRIDE
;
15
void
Finalize
(
Unit
*)
OVERRIDE
{ }
16
void
Reset
(
Unit
*)
OVERRIDE
;
17
bool
Update
(
Unit
*,
uint32
)
OVERRIDE
{
return
true
; }
18
MovementGeneratorType
GetMovementGeneratorType
()
OVERRIDE
{
return
IDLE_MOTION_TYPE
; }
19
};
20
21
extern
IdleMovementGenerator
si_idleMovement
;
22
23
class
RotateMovementGenerator
:
public
MovementGenerator
24
{
25
public
:
26
explicit
RotateMovementGenerator
(
uint32
time,
RotateDirection
direction) :
m_duration
(time),
m_maxDuration
(time),
m_direction
(direction) { }
27
28
void
Initialize
(
Unit
*)
OVERRIDE
;
29
void
Finalize
(
Unit
*)
OVERRIDE
;
30
void
Reset
(
Unit
* owner)
OVERRIDE
{
Initialize
(owner); }
31
bool
Update
(
Unit
*,
uint32
)
OVERRIDE
;
32
MovementGeneratorType
GetMovementGeneratorType
()
OVERRIDE
{
return
ROTATE_MOTION_TYPE
; }
33
34
private
:
35
uint32
m_duration
,
m_maxDuration
;
36
RotateDirection
m_direction
;
37
};
38
39
class
DistractMovementGenerator
:
public
MovementGenerator
40
{
41
public
:
42
explicit
DistractMovementGenerator
(
uint32
timer) :
m_timer
(timer) { }
43
44
void
Initialize
(
Unit
*)
OVERRIDE
;
45
void
Finalize
(
Unit
*)
OVERRIDE
;
46
void
Reset
(
Unit
* owner)
OVERRIDE
{
Initialize
(owner); }
47
bool
Update
(
Unit
*,
uint32
)
OVERRIDE
;
48
MovementGeneratorType
GetMovementGeneratorType
()
OVERRIDE
{
return
DISTRACT_MOTION_TYPE
; }
49
50
private
:
51
uint32
m_timer
;
52
};
53
54
class
AssistanceDistractMovementGenerator
:
public
DistractMovementGenerator
55
{
56
public
:
57
AssistanceDistractMovementGenerator
(
uint32
timer) :
58
DistractMovementGenerator
(timer) { }
59
60
MovementGeneratorType
GetMovementGeneratorType
()
OVERRIDE
{
return
ASSISTANCE_DISTRACT_MOTION_TYPE
; }
61
void
Finalize
(
Unit
*)
OVERRIDE
;
62
};
63
64
#endif
uint32
std::uint32_t uint32
Definition
Define.h:77
OVERRIDE
#define OVERRIDE
Definition
Define.h:60
si_idleMovement
IdleMovementGenerator si_idleMovement
Definition
IdleMovementGenerator.cpp:11
RotateDirection
RotateDirection
Definition
MotionMaster.h:61
MovementGeneratorType
MovementGeneratorType
Definition
MotionMaster.h:23
DISTRACT_MOTION_TYPE
@ DISTRACT_MOTION_TYPE
Definition
MotionMaster.h:35
IDLE_MOTION_TYPE
@ IDLE_MOTION_TYPE
Definition
MotionMaster.h:24
ROTATE_MOTION_TYPE
@ ROTATE_MOTION_TYPE
Definition
MotionMaster.h:40
ASSISTANCE_DISTRACT_MOTION_TYPE
@ ASSISTANCE_DISTRACT_MOTION_TYPE
Definition
MotionMaster.h:37
MovementGenerator.h
AssistanceDistractMovementGenerator::Finalize
void Finalize(Unit *) OVERRIDE
Definition
IdleMovementGenerator.cpp:81
AssistanceDistractMovementGenerator::GetMovementGeneratorType
MovementGeneratorType GetMovementGeneratorType() OVERRIDE
Definition
IdleMovementGenerator.h:60
AssistanceDistractMovementGenerator::AssistanceDistractMovementGenerator
AssistanceDistractMovementGenerator(uint32 timer)
Definition
IdleMovementGenerator.h:57
DistractMovementGenerator::Initialize
void Initialize(Unit *) OVERRIDE
Definition
IdleMovementGenerator.cpp:62
DistractMovementGenerator::DistractMovementGenerator
DistractMovementGenerator(uint32 timer)
Definition
IdleMovementGenerator.h:42
DistractMovementGenerator::Finalize
void Finalize(Unit *) OVERRIDE
Definition
IdleMovementGenerator.cpp:67
DistractMovementGenerator::m_timer
uint32 m_timer
Definition
IdleMovementGenerator.h:51
DistractMovementGenerator::Update
bool Update(Unit *, uint32) OVERRIDE
Definition
IdleMovementGenerator.cpp:72
DistractMovementGenerator::Reset
void Reset(Unit *owner) OVERRIDE
Definition
IdleMovementGenerator.h:46
DistractMovementGenerator::GetMovementGeneratorType
MovementGeneratorType GetMovementGeneratorType() OVERRIDE
Definition
IdleMovementGenerator.h:48
IdleMovementGenerator
Definition
IdleMovementGenerator.h:12
IdleMovementGenerator::Finalize
void Finalize(Unit *) OVERRIDE
Definition
IdleMovementGenerator.h:15
IdleMovementGenerator::Update
bool Update(Unit *, uint32) OVERRIDE
Definition
IdleMovementGenerator.h:17
IdleMovementGenerator::Initialize
void Initialize(Unit *) OVERRIDE
Definition
IdleMovementGenerator.cpp:15
IdleMovementGenerator::Reset
void Reset(Unit *) OVERRIDE
Definition
IdleMovementGenerator.cpp:20
IdleMovementGenerator::GetMovementGeneratorType
MovementGeneratorType GetMovementGeneratorType() OVERRIDE
Definition
IdleMovementGenerator.h:18
MovementGenerator
Definition
MovementGenerator.h:18
RotateMovementGenerator::m_duration
uint32 m_duration
Definition
IdleMovementGenerator.h:35
RotateMovementGenerator::GetMovementGeneratorType
MovementGeneratorType GetMovementGeneratorType() OVERRIDE
Definition
IdleMovementGenerator.h:32
RotateMovementGenerator::Reset
void Reset(Unit *owner) OVERRIDE
Definition
IdleMovementGenerator.h:30
RotateMovementGenerator::m_maxDuration
uint32 m_maxDuration
Definition
IdleMovementGenerator.h:35
RotateMovementGenerator::m_direction
RotateDirection m_direction
Definition
IdleMovementGenerator.h:36
RotateMovementGenerator::RotateMovementGenerator
RotateMovementGenerator(uint32 time, RotateDirection direction)
Definition
IdleMovementGenerator.h:26
RotateMovementGenerator::Update
bool Update(Unit *, uint32) OVERRIDE
Definition
IdleMovementGenerator.cpp:38
RotateMovementGenerator::Finalize
void Finalize(Unit *) OVERRIDE
Definition
IdleMovementGenerator.cpp:55
RotateMovementGenerator::Initialize
void Initialize(Unit *) OVERRIDE
Definition
IdleMovementGenerator.cpp:26
Unit
Definition
Unit.h:1367
src
server
game
Movement
MovementGenerators
IdleMovementGenerator.h
Generated on
for Project SkyFire Core by
1.17.0