TrinityCore
Loading...
Searching...
No Matches
OutdoorPvPZM.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_ZM_
19#define OUTDOOR_PVP_ZM_
20
21#include "OutdoorPvP.h"
22
24{
25 TEXT_WEST_BEACON_TAKEN_ALLIANCE = 15541, // '|cffffff00The Alliance has taken control of the West Beacon!|r'
26 TEXT_WEST_BEACON_TAKEN_HORDE = 15543, // '|cffffff00The Horde has taken control of the West Beacon!|r'
27 TEXT_EAST_BEACON_TAKEN_ALLIANCE = 15546, // '|cffffff00The Alliance has taken control of the East Beacon!|r'
28 TEXT_EAST_BEACON_TAKEN_HORDE = 15545, // '|cffffff00The Horde has taken control of the East Beacon!|r'
29 TEXT_TWIN_SPIRE_RUINS_TAKEN_ALLIANCE = 15591, // '|cffffff00The Alliance has taken control of Twin Spire Ruins!|r'
30 TEXT_TWIN_SPIRE_RUINS_TAKEN_HORDE = 15590, // '|cffffff00The Horde has taken control of Twin Spire Ruins!|r'
31 TEXT_BOTH_BEACONS_TAKEN_ALLIANCE = 16284, // (NYI) '|cffffff00The Alliance has taken control of both beacons!|r'
32 TEXT_BOTH_BEACONS_TAKEN_HORDE = 16285, // (NYI) '|cffffff00The Horde has taken control of both beacons!|r'
33 TEXT_BATTLE_STANDARDS_ALLIANCE = 16287, // (NYI) '|cffffff00The Alliance Field Scout is now issuing battle standards.|r'
34 TEXT_BATTLE_STANDARDS_HORDE = 16288 // (NYI) '|cffffff00The Horde Field Scout is now issuing battle standards.|r'
35};
36
38{
39 // cast on the players of the controlling faction
40 ZM_CAPTURE_BUFF = 33779, // twin spire blessing
41 // spell that the field scout casts on the player to carry the flag
43 // spell that the field scout casts on the player to carry the flag
45 // token create spell
47 // token create spell
49};
50
57
64
91
98
100{
101 public:
103
104 void ChangeState() override;
106
107 void UpdateTowerState();
108
109 protected:
112};
113
120
122{
123 public:
125
126 bool Update(uint32 diff) override;
127 void ChangeState() override { }
129 int32 HandleOpenGo(Player* player, GameObject* go) override;
130 bool HandleGossipOption(Player* player, Creature* creature, uint32 gossipid) override;
131 bool HandleDropFlag(Player* player, uint32 spellId) override;
132 bool CanTalkTo(Player* player, Creature* creature, GossipMenuItems const& gso) override;
133
134 void UpdateTowerState();
135 void SetBeaconState(uint32 controlling_team); // not good atm
137
138 protected:
142};
143
146{
147 public:
148 OutdoorPvPZM();
149
150 bool SetupOutdoorPvP() override;
151 void HandlePlayerEnterZone(Player* player, uint32 zone) override;
152 void HandlePlayerLeaveZone(Player* player, uint32 zone) override;
153 bool Update(uint32 diff) override;
155 void SendRemoveWorldStates(Player* player) override;
156 void HandleKillImpl(Player* player, Unit* killed) override;
157
162
163 private:
167};
168
169#endif
int32_t int32
Definition Define.h:129
uint32_t uint32
Definition Define.h:133
DefenseMessages
ZM_TowerStateMask
@ ZM_TOWERSTATE_N
@ ZM_TOWERSTATE_H
@ ZM_TOWERSTATE_A
ZM_BeaconType
@ ZM_BEACON_EAST
@ ZM_BEACON_WEST
@ ZM_NUM_BEACONS
@ TEXT_EAST_BEACON_TAKEN_ALLIANCE
@ TEXT_TWIN_SPIRE_RUINS_TAKEN_ALLIANCE
@ TEXT_WEST_BEACON_TAKEN_ALLIANCE
@ TEXT_BOTH_BEACONS_TAKEN_HORDE
@ TEXT_BOTH_BEACONS_TAKEN_ALLIANCE
@ TEXT_EAST_BEACON_TAKEN_HORDE
@ TEXT_BATTLE_STANDARDS_ALLIANCE
@ TEXT_TWIN_SPIRE_RUINS_TAKEN_HORDE
@ TEXT_WEST_BEACON_TAKEN_HORDE
@ TEXT_BATTLE_STANDARDS_HORDE
ZMCreatureTypes
@ ZM_CREATURE_NUM
@ ZM_HORDE_FIELD_SCOUT
@ ZM_ALLIANCE_FIELD_SCOUT
ZM_GraveyardState
@ ZM_GRAVEYARD_H
@ ZM_GRAVEYARD_N
@ ZM_GRAVEYARD_A
OutdoorPvPZMSpells
@ ZM_BATTLE_STANDARD_H
@ ZM_BATTLE_STANDARD_A
@ ZM_CAPTURE_BUFF
@ ZM_AlliancePlayerKillReward
@ ZM_HordePlayerKillReward
OutdoorPvPZMWorldStates
@ ZM_MAP_TOWER_EAST_A
@ ZM_MAP_HORDE_FLAG_NOT_READY
@ ZM_UI_TOWER_WEST_N
@ ZM_UI_TOWER_WEST_A
@ ZM_WORLDSTATE_UNK_1
@ ZM_MAP_ALLIANCE_FLAG_READY
@ ZM_MAP_GRAVEYARD_A
@ ZM_MAP_TOWER_WEST_N
@ ZM_MAP_TOWER_WEST_A
@ ZM_MAP_GRAVEYARD_N
@ ZM_MAP_GRAVEYARD_H
@ ZM_UI_TOWER_EAST_H
@ ZM_MAP_TOWER_EAST_N
@ ZM_UI_TOWER_WEST_H
@ ZM_MAP_TOWER_WEST_H
@ ZM_MAP_HORDE_FLAG_READY
@ ZM_MAP_ALLIANCE_FLAG_NOT_READY
@ ZM_UI_TOWER_EAST_A
@ ZM_UI_TOWER_EAST_N
@ ZM_MAP_TOWER_EAST_H
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
bool HandleGossipOption(Player *player, Creature *creature, uint32 gossipid) override
bool Update(uint32 diff) override
bool HandleDropFlag(Player *player, uint32 spellId) override
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
void SetBeaconState(uint32 controlling_team)
int32 HandleOpenGo(Player *player, GameObject *go) override
bool CanTalkTo(Player *player, Creature *creature, GossipMenuItems const &gso) override
void SetHordeTowersControlled(uint32 count)
uint32 GetAllianceTowersControlled() const
void HandleKillImpl(Player *player, Unit *killed) override
bool SetupOutdoorPvP() override
void FillInitialWorldStates(WorldPackets::WorldState::InitWorldStates &packet) override
void HandlePlayerEnterZone(Player *player, uint32 zone) override
void HandlePlayerLeaveZone(Player *player, uint32 zone) override
OPvPCapturePointZM_Graveyard * m_Graveyard
uint32 GetHordeTowersControlled() const
void SetAllianceTowersControlled(uint32 count)
void SendRemoveWorldStates(Player *player) override
bool Update(uint32 diff) override
uint32 m_HordeTowersControlled
uint32 m_AllianceTowersControlled
Definition Unit.h:769