Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
OutdoorPvPTF.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 OUTDOOR_PVP_TF_
7#define OUTDOOR_PVP_TF_
8
9#include "OutdoorPvP.h"
10
12
14{
15 3519 /*Terokkar Forest*/,
16 3791 /*Sethekk Halls*/,
17 3789 /*Shadow Labyrinth*/,
18 3792 /*Mana-Tombs*/,
19 3790 /*Auchenai Crypts*/
20};
21
22// locked for 6 hours after capture
23const uint32 TF_LOCK_TIME = 3600 * 6 * 1000;
24
25// update lock timer every 1/4 minute (overkill, but this way it's sure the timer won't "jump" 2 minutes at once.)
27
28// blessing of auchindoun
29#define TF_CAPTURE_BUFF 33377
30
31const uint32 TF_ALLY_QUEST = 11505;
32const uint32 TF_HORDE_QUEST = 11506;
33
43
45{
46 {183104, 530, -3081.65f, 5335.03f, 17.1853f, -2.14675f, 0.0f, 0.0f, 0.878817f, -0.477159f},
47 {183411, 530, -2939.9f, 4788.73f, 18.987f, 2.77507f, 0.0f, 0.0f, 0.983255f, 0.182236f},
48 {183412, 530, -3174.94f, 4440.97f, 16.2281f, 1.86750f, 0.0f, 0.0f, 0.803857f, 0.594823f},
49 {183413, 530, -3603.31f, 4529.15f, 20.9077f, 0.994838f, 0.0f, 0.0f, 0.477159f, 0.878817f},
50 {183414, 530, -3812.37f, 4899.3f, 17.7249f, 0.087266f, 0.0f, 0.0f, 0.043619f, 0.999048f}
51};
52
59
61{
62 {0xa79, 0xa7a, 0xa7b},
63 {0xa7e, 0xa7d, 0xa7c},
64 {0xa82, 0xa81, 0xa80},
65 {0xa88, 0xa87, 0xa86},
66 {0xa85, 0xa84, 0xa83}
67};
68
70{
71 12226,
72 12497,
73 12486,
74 12499,
75 12501
76};
77
79{
80 12225,
81 12496,
82 12487,
83 12498,
84 12500
85};
86
104
111
113{
114 public:
116 bool Update(uint32 diff) OVERRIDE;
117 void ChangeState() OVERRIDE;
120
121 // used when player is activated/inactivated in the area
122 bool HandlePlayerEnter(Player* player) OVERRIDE;
123 void HandlePlayerLeave(Player* player) OVERRIDE;
124 void UpdateTowerState();
125
126 protected:
129};
130
155
156#endif
std::uint8_t uint8
Definition Define.h:79
std::uint32_t uint32
Definition Define.h:77
#define OVERRIDE
Definition Define.h:60
const uint32 TFTowerPlayerLeaveEvents[TF_TOWER_NUM]
const go_type TFCapturePoints[TF_TOWER_NUM]
const uint32 TF_HORDE_QUEST
const uint32 TF_ALLY_QUEST
TFWorldStates
@ TF_UI_TOWER_SLIDER_DISPLAY
@ TF_UI_TOWER_SLIDER_POS
@ TF_UI_LOCKED_TIME_MINUTES_FIRST_DIGIT
@ TF_UI_LOCKED_DISPLAY_ALLIANCE
@ TF_UI_LOCKED_TIME_MINUTES_SECOND_DIGIT
@ TF_UI_LOCKED_DISPLAY_NEUTRAL
@ TF_UI_TOWER_SLIDER_N
@ TF_UI_LOCKED_DISPLAY_HORDE
@ TF_UI_TOWER_COUNT_H
@ TF_UI_TOWERS_CONTROLLED_DISPLAY
@ TF_UI_TOWER_COUNT_A
@ TF_UI_LOCKED_TIME_HOURS
TFTowerStates
@ TF_TOWERSTATE_H
@ TF_TOWERSTATE_N
@ TF_TOWERSTATE_A
const uint32 OutdoorPvPTFBuffZones[OutdoorPvPTFBuffZonesNum]
OutdoorPvPTF_TowerType
@ TF_TOWER_SE
@ TF_TOWER_N
@ TF_TOWER_NE
@ TF_TOWER_NW
@ TF_TOWER_NUM
@ TF_TOWER_S
const uint32 TF_LOCK_TIME
const uint32 TFTowerPlayerEnterEvents[TF_TOWER_NUM]
const uint32 TF_LOCK_TIME_UPDATE
const tf_tower_world_state TFTowerWorldStates[TF_TOWER_NUM]
const uint8 OutdoorPvPTFBuffZonesNum
OPvPCapturePoint(OutdoorPvP *pvp)
bool Update(uint32 diff) OVERRIDE
bool HandlePlayerEnter(Player *player) OVERRIDE
void SendChangePhase() OVERRIDE
void ChangeState() OVERRIDE
void HandlePlayerLeave(Player *player) OVERRIDE
OutdoorPvPTF_TowerType m_TowerType
void FillInitialWorldStates(WorldStateBuilder &builder) OVERRIDE
OPvPCapturePointTF(OutdoorPvP *pvp, OutdoorPvPTF_TowerType type)
void SetHordeTowersControlled(uint32 count)
uint32 GetHordeTowersControlled() const
uint32 GetAllianceTowersControlled() const
uint32 m_HordeTowersControlled
bool IsLocked() const
void FillInitialWorldStates(WorldStateBuilder &builder) OVERRIDE
bool SetupOutdoorPvP() OVERRIDE
uint32 m_AllianceTowersControlled
uint32 second_digit
void SendRemoveWorldStates(Player *player) OVERRIDE
uint32 m_LockTimer
bool Update(uint32 diff) OVERRIDE
uint32 m_LockTimerUpdate
void HandlePlayerLeaveZone(Player *player, uint32 zone) OVERRIDE
void HandlePlayerEnterZone(Player *player, uint32 zone) OVERRIDE
uint32 hours_left
uint32 first_digit
void SetAllianceTowersControlled(uint32 count)