Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
BattlegroundDS.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 SF_BATTLEGROUNDDS_H
7
#define SF_BATTLEGROUNDDS_H
8
9
#include "
Battleground.h
"
10
11
enum
BattlegroundDSObjectTypes
12
{
13
BG_DS_OBJECT_DOOR_1
= 0,
14
BG_DS_OBJECT_DOOR_2
= 1,
15
BG_DS_OBJECT_WATER_1
= 2,
// Collision
16
BG_DS_OBJECT_WATER_2
= 3,
17
BG_DS_OBJECT_BUFF_1
= 4,
18
BG_DS_OBJECT_BUFF_2
= 5,
19
BG_DS_OBJECT_MAX
= 6
20
};
21
22
enum
BattlegroundDSObjects
23
{
24
BG_DS_OBJECT_TYPE_DOOR_1
= 192642,
25
BG_DS_OBJECT_TYPE_DOOR_2
= 192643,
26
BG_DS_OBJECT_TYPE_WATER_1
= 194395,
// Collision
27
BG_DS_OBJECT_TYPE_WATER_2
= 191877,
28
BG_DS_OBJECT_TYPE_BUFF_1
= 184663,
29
BG_DS_OBJECT_TYPE_BUFF_2
= 184664
30
};
31
32
enum
BattlegroundDSCreatureTypes
33
{
34
BG_DS_NPC_WATERFALL_KNOCKBACK
= 0,
35
BG_DS_NPC_PIPE_KNOCKBACK_1
= 1,
36
BG_DS_NPC_PIPE_KNOCKBACK_2
= 2,
37
BG_DS_NPC_MAX
= 3
38
};
39
40
enum
BattlegroundDSCreatures
41
{
42
BG_DS_NPC_TYPE_WATER_SPOUT
= 28567
43
};
44
45
enum
BattlegroundDSSpells
46
{
47
BG_DS_SPELL_FLUSH
= 57405,
// Visual and target selector for the starting knockback from the pipe
48
BG_DS_SPELL_FLUSH_KNOCKBACK
= 61698,
// Knockback effect for previous spell (triggered, not need to be casted)
49
BG_DS_SPELL_WATER_SPOUT
= 58873
// Knockback effect of the central waterfall
50
};
51
52
enum
BattlegroundDSData
53
{
// These values are NOT blizzlike... need the correct data!
54
BG_DS_WATERFALL_TIMER_MIN
= 30000,
55
BG_DS_WATERFALL_TIMER_MAX
= 60000,
56
BG_DS_WATERFALL_WARNING_DURATION
= 5000,
57
BG_DS_WATERFALL_DURATION
= 30000,
58
BG_DS_WATERFALL_KNOCKBACK_TIMER
= 1500,
59
60
BG_DS_PIPE_KNOCKBACK_FIRST_DELAY
= 5000,
61
BG_DS_PIPE_KNOCKBACK_DELAY
= 3000,
62
BG_DS_PIPE_KNOCKBACK_TOTAL_COUNT
= 2,
63
64
BG_DS_WATERFALL_STATUS_WARNING
= 1,
// Water starting to fall, but no LoS Blocking nor movement blocking
65
BG_DS_WATERFALL_STATUS_ON
= 2,
// LoS and Movement blocking active
66
BG_DS_WATERFALL_STATUS_OFF
= 3
67
};
68
69
class
BattlegroundDS
:
public
Battleground
70
{
71
public
:
72
BattlegroundDS
();
73
~BattlegroundDS
();
74
75
/* inherited from BattlegroundClass */
76
void
AddPlayer
(
Player
* player)
OVERRIDE
;
77
void
StartingEventCloseDoors
()
OVERRIDE
;
78
void
StartingEventOpenDoors
()
OVERRIDE
;
79
80
void
RemovePlayer
(
Player
* player,
uint64
guid,
uint32
team)
OVERRIDE
;
81
void
HandleAreaTrigger
(
Player
* Source,
uint32
Trigger)
OVERRIDE
;
82
bool
SetupBattleground
()
OVERRIDE
;
83
void
Reset
()
OVERRIDE
;
84
void
FillInitialWorldStates
(
WorldStateBuilder
& builder)
OVERRIDE
;
85
void
HandleKillPlayer
(
Player
* player,
Player
* killer)
OVERRIDE
;
86
private
:
87
uint32
_waterfallTimer
;
88
uint8
_waterfallStatus
;
89
uint32
_waterfallKnockbackTimer
;
90
uint32
_pipeKnockBackTimer
;
91
uint8
_pipeKnockBackCount
;
92
93
void
PostUpdateImpl
(
uint32
diff)
OVERRIDE
;
94
protected
:
95
uint32
getWaterFallStatus
()
const
{
return
_waterfallStatus
; }
96
void
setWaterFallStatus
(
uint8
status) {
_waterfallStatus
= status; }
97
uint32
getWaterFallTimer
()
const
{
return
_waterfallTimer
; }
98
void
setWaterFallTimer
(
uint32
timer) {
_waterfallTimer
= timer; }
99
uint32
getWaterFallKnockbackTimer
()
const
{
return
_waterfallKnockbackTimer
; }
100
void
setWaterFallKnockbackTimer
(
uint32
timer) {
_waterfallKnockbackTimer
= timer; }
101
uint8
getPipeKnockBackCount
()
const
{
return
_pipeKnockBackCount
; }
102
void
setPipeKnockBackCount
(
uint8
count) {
_pipeKnockBackCount
= count; }
103
uint32
getPipeKnockBackTimer
()
const
{
return
_pipeKnockBackTimer
; }
104
void
setPipeKnockBackTimer
(
uint32
timer) {
_pipeKnockBackTimer
= timer; }
105
};
106
#endif
Battleground.h
BattlegroundDSCreatures
BattlegroundDSCreatures
Definition
BattlegroundDS.h:41
BG_DS_NPC_TYPE_WATER_SPOUT
@ BG_DS_NPC_TYPE_WATER_SPOUT
Definition
BattlegroundDS.h:42
BattlegroundDSSpells
BattlegroundDSSpells
Definition
BattlegroundDS.h:46
BG_DS_SPELL_FLUSH_KNOCKBACK
@ BG_DS_SPELL_FLUSH_KNOCKBACK
Definition
BattlegroundDS.h:48
BG_DS_SPELL_FLUSH
@ BG_DS_SPELL_FLUSH
Definition
BattlegroundDS.h:47
BG_DS_SPELL_WATER_SPOUT
@ BG_DS_SPELL_WATER_SPOUT
Definition
BattlegroundDS.h:49
BattlegroundDSObjectTypes
BattlegroundDSObjectTypes
Definition
BattlegroundDS.h:12
BG_DS_OBJECT_DOOR_2
@ BG_DS_OBJECT_DOOR_2
Definition
BattlegroundDS.h:14
BG_DS_OBJECT_WATER_2
@ BG_DS_OBJECT_WATER_2
Definition
BattlegroundDS.h:16
BG_DS_OBJECT_MAX
@ BG_DS_OBJECT_MAX
Definition
BattlegroundDS.h:19
BG_DS_OBJECT_DOOR_1
@ BG_DS_OBJECT_DOOR_1
Definition
BattlegroundDS.h:13
BG_DS_OBJECT_BUFF_1
@ BG_DS_OBJECT_BUFF_1
Definition
BattlegroundDS.h:17
BG_DS_OBJECT_BUFF_2
@ BG_DS_OBJECT_BUFF_2
Definition
BattlegroundDS.h:18
BG_DS_OBJECT_WATER_1
@ BG_DS_OBJECT_WATER_1
Definition
BattlegroundDS.h:15
BattlegroundDSData
BattlegroundDSData
Definition
BattlegroundDS.h:53
BG_DS_WATERFALL_WARNING_DURATION
@ BG_DS_WATERFALL_WARNING_DURATION
Definition
BattlegroundDS.h:56
BG_DS_WATERFALL_DURATION
@ BG_DS_WATERFALL_DURATION
Definition
BattlegroundDS.h:57
BG_DS_WATERFALL_TIMER_MAX
@ BG_DS_WATERFALL_TIMER_MAX
Definition
BattlegroundDS.h:55
BG_DS_WATERFALL_STATUS_ON
@ BG_DS_WATERFALL_STATUS_ON
Definition
BattlegroundDS.h:65
BG_DS_PIPE_KNOCKBACK_DELAY
@ BG_DS_PIPE_KNOCKBACK_DELAY
Definition
BattlegroundDS.h:61
BG_DS_WATERFALL_TIMER_MIN
@ BG_DS_WATERFALL_TIMER_MIN
Definition
BattlegroundDS.h:54
BG_DS_WATERFALL_STATUS_OFF
@ BG_DS_WATERFALL_STATUS_OFF
Definition
BattlegroundDS.h:66
BG_DS_WATERFALL_STATUS_WARNING
@ BG_DS_WATERFALL_STATUS_WARNING
Definition
BattlegroundDS.h:64
BG_DS_PIPE_KNOCKBACK_FIRST_DELAY
@ BG_DS_PIPE_KNOCKBACK_FIRST_DELAY
Definition
BattlegroundDS.h:60
BG_DS_WATERFALL_KNOCKBACK_TIMER
@ BG_DS_WATERFALL_KNOCKBACK_TIMER
Definition
BattlegroundDS.h:58
BG_DS_PIPE_KNOCKBACK_TOTAL_COUNT
@ BG_DS_PIPE_KNOCKBACK_TOTAL_COUNT
Definition
BattlegroundDS.h:62
BattlegroundDSCreatureTypes
BattlegroundDSCreatureTypes
Definition
BattlegroundDS.h:33
BG_DS_NPC_PIPE_KNOCKBACK_2
@ BG_DS_NPC_PIPE_KNOCKBACK_2
Definition
BattlegroundDS.h:36
BG_DS_NPC_PIPE_KNOCKBACK_1
@ BG_DS_NPC_PIPE_KNOCKBACK_1
Definition
BattlegroundDS.h:35
BG_DS_NPC_WATERFALL_KNOCKBACK
@ BG_DS_NPC_WATERFALL_KNOCKBACK
Definition
BattlegroundDS.h:34
BG_DS_NPC_MAX
@ BG_DS_NPC_MAX
Definition
BattlegroundDS.h:37
BattlegroundDSObjects
BattlegroundDSObjects
Definition
BattlegroundDS.h:23
BG_DS_OBJECT_TYPE_BUFF_1
@ BG_DS_OBJECT_TYPE_BUFF_1
Definition
BattlegroundDS.h:28
BG_DS_OBJECT_TYPE_DOOR_2
@ BG_DS_OBJECT_TYPE_DOOR_2
Definition
BattlegroundDS.h:25
BG_DS_OBJECT_TYPE_DOOR_1
@ BG_DS_OBJECT_TYPE_DOOR_1
Definition
BattlegroundDS.h:24
BG_DS_OBJECT_TYPE_WATER_2
@ BG_DS_OBJECT_TYPE_WATER_2
Definition
BattlegroundDS.h:27
BG_DS_OBJECT_TYPE_WATER_1
@ BG_DS_OBJECT_TYPE_WATER_1
Definition
BattlegroundDS.h:26
BG_DS_OBJECT_TYPE_BUFF_2
@ BG_DS_OBJECT_TYPE_BUFF_2
Definition
BattlegroundDS.h:29
uint8
std::uint8_t uint8
Definition
Define.h:79
uint32
std::uint32_t uint32
Definition
Define.h:77
OVERRIDE
#define OVERRIDE
Definition
Define.h:60
uint64
std::uint64_t uint64
Definition
Define.h:76
BattlegroundDS::setWaterFallStatus
void setWaterFallStatus(uint8 status)
Definition
BattlegroundDS.h:96
BattlegroundDS::setPipeKnockBackTimer
void setPipeKnockBackTimer(uint32 timer)
Definition
BattlegroundDS.h:104
BattlegroundDS::BattlegroundDS
BattlegroundDS()
Definition
BattlegroundDS.cpp:14
BattlegroundDS::_waterfallTimer
uint32 _waterfallTimer
Definition
BattlegroundDS.h:87
BattlegroundDS::AddPlayer
void AddPlayer(Player *player) OVERRIDE
Definition
BattlegroundDS.cpp:130
BattlegroundDS::PostUpdateImpl
void PostUpdateImpl(uint32 diff) OVERRIDE
Post-update hook.
Definition
BattlegroundDS.cpp:31
BattlegroundDS::getWaterFallStatus
uint32 getWaterFallStatus() const
Definition
BattlegroundDS.h:95
BattlegroundDS::FillInitialWorldStates
void FillInitialWorldStates(WorldStateBuilder &builder) OVERRIDE
Definition
BattlegroundDS.cpp:187
BattlegroundDS::setPipeKnockBackCount
void setPipeKnockBackCount(uint8 count)
Definition
BattlegroundDS.h:102
BattlegroundDS::SetupBattleground
bool SetupBattleground() OVERRIDE
Definition
BattlegroundDS.cpp:199
BattlegroundDS::_pipeKnockBackCount
uint8 _pipeKnockBackCount
Definition
BattlegroundDS.h:91
BattlegroundDS::_waterfallKnockbackTimer
uint32 _waterfallKnockbackTimer
Definition
BattlegroundDS.h:89
BattlegroundDS::getWaterFallKnockbackTimer
uint32 getWaterFallKnockbackTimer() const
Definition
BattlegroundDS.h:99
BattlegroundDS::RemovePlayer
void RemovePlayer(Player *player, uint64 guid, uint32 team) OVERRIDE
Definition
BattlegroundDS.cpp:137
BattlegroundDS::HandleKillPlayer
void HandleKillPlayer(Player *player, Player *killer) OVERRIDE
Definition
BattlegroundDS.cpp:146
BattlegroundDS::setWaterFallKnockbackTimer
void setWaterFallKnockbackTimer(uint32 timer)
Definition
BattlegroundDS.h:100
BattlegroundDS::setWaterFallTimer
void setWaterFallTimer(uint32 timer)
Definition
BattlegroundDS.h:98
BattlegroundDS::HandleAreaTrigger
void HandleAreaTrigger(Player *Source, uint32 Trigger) OVERRIDE
Definition
BattlegroundDS.cpp:163
BattlegroundDS::getWaterFallTimer
uint32 getWaterFallTimer() const
Definition
BattlegroundDS.h:97
BattlegroundDS::Reset
void Reset() OVERRIDE
Definition
BattlegroundDS.cpp:193
BattlegroundDS::_pipeKnockBackTimer
uint32 _pipeKnockBackTimer
Definition
BattlegroundDS.h:90
BattlegroundDS::StartingEventOpenDoors
void StartingEventOpenDoors() OVERRIDE
Definition
BattlegroundDS.cpp:102
BattlegroundDS::~BattlegroundDS
~BattlegroundDS()
Definition
BattlegroundDS.cpp:29
BattlegroundDS::getPipeKnockBackCount
uint8 getPipeKnockBackCount() const
Definition
BattlegroundDS.h:101
BattlegroundDS::getPipeKnockBackTimer
uint32 getPipeKnockBackTimer() const
Definition
BattlegroundDS.h:103
BattlegroundDS::_waterfallStatus
uint8 _waterfallStatus
Definition
BattlegroundDS.h:88
BattlegroundDS::StartingEventCloseDoors
void StartingEventCloseDoors() OVERRIDE
Definition
BattlegroundDS.cpp:96
Battleground::Battleground
Battleground()
Definition
Battleground.cpp:105
Player
Definition
Player.h:1289
WorldStateBuilder
Definition
WorldStateBuilder.h:16
src
server
game
Battlegrounds
Zones
BattlegroundDS.h
Generated on
for Project SkyFire Core by
1.17.0