TrinityCore
Loading...
Searching...
No Matches
OutdoorPvPEP.h
Go to the documentation of this file.
1/*
2 * This file is part of the TrinityCore Project. See AUTHORS file for Copyright information
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the
6 * Free Software Foundation; either version 2 of the License, or (at your
7 * option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#ifndef OUTDOOR_PVP_EP_
19#define OUTDOOR_PVP_EP_
20
21#include "OutdoorPvP.h"
22
24{
25 TEXT_PLAGUEWOOD_TOWER_TAKEN_ALLIANCE = 13629, // '|cffffff00The Plaguewood Tower has been taken by the Alliance!|r'
26 TEXT_NORTHPASS_TOWER_TAKEN_ALLIANCE = 13630, // '|cffffff00Northpass Tower has been taken by the Alliance!|r'
27 TEXT_EASTWALL_TOWER_TAKEN_ALLIANCE = 13631, // '|cffffff00Eastwall Tower has been taken by the Alliance!|r'
28 TEXT_CROWN_GUARD_TOWER_TAKEN_ALLIANCE = 13632, // '|cffffff00Crown Guard Tower has been taken by the Alliance!|r'
29 TEXT_PLAGUEWOOD_TOWER_TAKEN_HORDE = 13634, // '|cffffff00The Plaguewood Tower has been taken by the Horde!|r'
30 TEXT_NORTHPASS_TOWER_TAKEN_HORDE = 13635, // '|cffffff00Northpass Tower has been taken by the Horde!|r'
31 TEXT_EASTWALL_TOWER_TAKEN_HORDE = 13636, // '|cffffff00Eastwall Tower has been taken by the Horde!|r'
32 TEXT_CROWN_GUARD_TOWER_TAKEN_HORDE = 13633, // '|cffffff00Crown Guard Tower has been taken by the Horde!|r'
33 TEXT_ALL_TOWERS_IN_CONTROL_ALLIANCE = 13638, // (NYI) '|cff33ccffAll four towers are now in control of the Alliance!|r'
34 TEXT_ALL_TOWERS_IN_CONTROL_HORDE = 13637, // (NYI) '|cffff0000All four towers are now in control of the Horde!|r'
35};
36
44
46{
47 EP_EWT_A = 2354,
48 EP_EWT_H = 2356,
49 EP_EWT_N_A = 2359, // ally conquested
50 EP_EWT_N_H = 2360,
51 EP_EWT_N = 2361
52};
53
62
64{
65 EP_PWT_N_A = 2366,
66 EP_PWT_N_H = 2353, //2367 not present! use neutral!
67 EP_PWT_A = 2370,
68 EP_PWT_H = 2371,
69 EP_PWT_N = 2353
70};
71
80
86
96
105
107{
108 EP_EWT = 0, // plaguelands 03
109 EP_NPT, // plaguelands 01
110 EP_PWT, // plaguelands 04
111 EP_CGT, // plaguelands 02
114
125
127{
128 public:
129 OutdoorPvPEP();
130
131 bool SetupOutdoorPvP() override;
132 void HandlePlayerEnterZone(Player* player, uint32 zone) override;
133 void HandlePlayerLeaveZone(Player* player, uint32 zone) override;
134 bool Update(uint32 diff) override;
136 void SendRemoveWorldStates(Player* player) override;
137
138 void BuffTeams();
139 void SetControlledState(uint32 index, uint32 state);
140
141 uint32 EP_Controls[EP_TOWER_NUM]; // how many towers are controlled
144};
145
161
163{
164 public:
166
167 void ChangeState() override;
169
170 protected:
171 void SummonGO(uint32 team);
172 void UpdateTowerState();
173
176};
177
179{
180 public:
182
183 void ChangeState() override;
185
186 protected:
187 void LinkGraveyard(uint32 team);
188 void UpdateTowerState();
189
192};
193
195{
196 public:
198
199 void ChangeState() override;
201
202 protected:
203 void SummonFlightMaster(uint32 team);
204 void UpdateTowerState();
205
208};
209
210#endif
uint32_t uint32
Definition Define.h:133
EP_GoSummons
@ EP_NPT_FLAGS
@ EP_EWT_FLAGS
@ EP_CGT_FLAGS
@ EP_NPT_BUFF
@ EP_PWT_FLAGS
EP_WorldStates
@ EP_UI_TOWER_COUNT_H
@ EP_UI_TOWER_COUNT_A
EP_TaxiNodes
@ EP_PWT_Taxi
@ EP_EWT_Taxi
@ EP_CGT_Taxi
@ EP_NPT_Taxi
EP_PlagewoodTowerWorldStates
@ EP_PWT_N_A
@ EP_PWT_A
@ EP_PWT_H
@ EP_PWT_N
@ EP_PWT_N_H
EP_EastwallTowerWorldStates
@ EP_EWT_H
@ EP_EWT_N
@ EP_EWT_A
@ EP_EWT_N_H
@ EP_EWT_N_A
EP_TowerStates
@ EP_TS_N
@ EP_TS_A
@ EP_TS_N_A
@ EP_TS_N_H
@ EP_TS_H_P
@ EP_TS_H
@ EP_TS_A_P
EP_CrownGuardTowerWorldStates
@ EP_CGT_N
@ EP_CGT_H
@ EP_CGT_N_H
@ EP_CGT_A
@ EP_CGT_N_A
DefenseMessages
@ TEXT_NORTHPASS_TOWER_TAKEN_HORDE
@ TEXT_ALL_TOWERS_IN_CONTROL_ALLIANCE
@ TEXT_PLAGUEWOOD_TOWER_TAKEN_ALLIANCE
@ TEXT_ALL_TOWERS_IN_CONTROL_HORDE
@ TEXT_CROWN_GUARD_TOWER_TAKEN_HORDE
@ TEXT_NORTHPASS_TOWER_TAKEN_ALLIANCE
@ TEXT_CROWN_GUARD_TOWER_TAKEN_ALLIANCE
@ TEXT_EASTWALL_TOWER_TAKEN_HORDE
@ TEXT_EASTWALL_TOWER_TAKEN_ALLIANCE
@ TEXT_PLAGUEWOOD_TOWER_TAKEN_HORDE
EP_Towers
@ EP_PWT
@ EP_NPT
@ EP_TOWER_NUM
@ EP_CGT
@ EP_EWT
EP_Summons
@ EP_EWT_COMMANDER
@ EP_PWT_FLIGHTMASTER
@ EP_EWT_SOLDIER2
@ EP_EWT_SOLDIER4
@ EP_EWT_SOLDIER1
@ EP_EWT_SOLDIER3
EP_NorthpassTowerWorldStates
@ EP_NPT_A
@ EP_NPT_N
@ EP_NPT_N_H
@ EP_NPT_H
@ EP_NPT_N_A
void ChangeState() override
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
void LinkGraveyard(uint32 team)
void SummonSupportUnitAtNorthpassTower(uint32 team)
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
void ChangeState() override
void ChangeState() override
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
void SummonGO(uint32 team)
void ChangeState() override
void SummonFlightMaster(uint32 team)
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
uint32 m_AllianceTowersControlled
void SetControlledState(uint32 index, uint32 state)
void HandlePlayerLeaveZone(Player *player, uint32 zone) override
uint32 m_HordeTowersControlled
bool Update(uint32 diff) override
void HandlePlayerEnterZone(Player *player, uint32 zone) override
uint32 EP_Controls[EP_TOWER_NUM]
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
bool SetupOutdoorPvP() override
void SendRemoveWorldStates(Player *player) override