AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
OPvPCapturePointNA Class Reference

#include "OutdoorPvPNA.h"

Inheritance diagram for OPvPCapturePointNA:
OPvPCapturePoint

Public Member Functions

 OPvPCapturePointNA (OutdoorPvP *pvp)
 
bool Update (uint32 diff) override
 
void ChangeState () override
 
void SendChangePhase () override
 
void FillInitialWorldStates (WorldPacket &data) override
 
bool HandlePlayerEnter (Player *player) override
 
void HandlePlayerLeave (Player *player) override
 
bool HandleCustomSpell (Player *player, uint32 spellId, GameObject *go) override
 
int32 HandleOpenGo (Player *player, GameObject *go) override
 
uint32 GetAliveGuardsCount ()
 
TeamId GetControllingFaction () const
 
- Public Member Functions inherited from OPvPCapturePoint
 OPvPCapturePoint (OutdoorPvP *pvp)
 
virtual ~OPvPCapturePoint ()=default
 
virtual void FillInitialWorldStates (WorldPacket &)
 
void SendUpdateWorldState (uint32 field, uint32 value)
 
void SendObjectiveComplete (uint32 id, ObjectGuid guid=ObjectGuid::Empty)
 
virtual bool HandlePlayerEnter (Player *player)
 
virtual void HandlePlayerLeave (Player *player)
 
bool IsInsideObjective (Player *player) const
 
virtual bool HandleCustomSpell (Player *player, uint32 spellId, GameObject *go)
 
virtual int32 HandleOpenGo (Player *player, GameObject *go)
 
virtual bool Update (uint32 diff)
 
virtual void ChangeState ()=0
 
virtual void ChangeTeam (TeamId)
 
virtual void SendChangePhase ()
 
virtual bool HandleGossipOption (Player *player, Creature *creature, uint32 gossipId)
 
virtual bool CanTalkTo (Player *player, Creature *c, GossipMenuItems const &gso)
 
virtual bool HandleDropFlag (Player *player, uint32 spellId)
 
virtual void DeleteSpawns ()
 
void AddGO (uint32 type, ObjectGuid::LowType guid, uint32 entry=0)
 
void AddCre (uint32 type, ObjectGuid::LowType guid, uint32 entry=0)
 
bool SetCapturePointData (uint32 entry, uint32 map, float x, float y, float z, float o=0, float rotation0=0, float rotation1=0, float rotation2=0, float rotation3=0)
 
void SetSlider (float slider)
 
float GetSlider () const
 

Protected Member Functions

void FactionTakeOver (TeamId teamId)
 
void DespawnGOs ()
 
void DespawnCreatures (HalaaNPCS teamNPC)
 
void SpawnNPCsForTeam (HalaaNPCS teamNPC)
 
void SpawnGOsForTeam (TeamId teamId)
 
void UpdateWyvernRoostWorldState (uint32 roost)
 
void UpdateHalaaWorldState ()
 
- Protected Member Functions inherited from OPvPCapturePoint
bool AddObject (uint32 type, uint32 entry, uint32 map, float x, float y, float z, float o, float rotation0, float rotation1, float rotation2, float rotation3)
 
bool AddCreature (uint32 type, uint32 entry, uint32 map, float x, float y, float z, float o, uint32 spawntimeDelay=0)
 
bool DelCreature (uint32 type)
 
bool DelObject (uint32 type)
 
bool DelCapturePoint ()
 

Private Attributes

bool m_capturable
 
uint32 m_GuardsAlive
 
TeamId m_ControllingFaction
 
uint32 m_WyvernStateNorth
 
uint32 m_WyvernStateSouth
 
uint32 m_WyvernStateEast
 
uint32 m_WyvernStateWest
 
uint32 m_HalaaState
 
uint32 m_RespawnTimer
 
uint32 m_GuardCheckTimer
 
bool m_canRecap
 

Additional Inherited Members

- Public Attributes inherited from OPvPCapturePoint
ObjectGuid::LowType m_capturePointSpawnId {}
 
GameObject_capturePoint {}
 
- Protected Attributes inherited from OPvPCapturePoint
std::array< PlayerSet, 2 > _activePlayers
 
float _maxValue {}
 
float _minValue {}
 
float _maxSpeed {}
 
float _value {}
 
TeamId _team { TEAM_NEUTRAL }
 
ObjectiveStates _oldState { OBJECTIVESTATE_NEUTRAL }
 
ObjectiveStates _state { OBJECTIVESTATE_NEUTRAL }
 
uint32 _neutralValuePct {}
 
OutdoorPvP_pvp {}
 
std::unordered_map< uint32, ObjectGuid::LowType_objects
 
std::unordered_map< uint32, ObjectGuid::LowType_creatures
 
std::unordered_map< ObjectGuid::LowType, uint32_objectTypes
 
std::unordered_map< ObjectGuid::LowType, uint32_creatureTypes
 

Detailed Description

Constructor & Destructor Documentation

◆ OPvPCapturePointNA()

OPvPCapturePointNA::OPvPCapturePointNA ( OutdoorPvP pvp)
258 :
262{
263 SetCapturePointData(182210, 530, -1572.57f, 7945.3f, -22.475f, 2.05949f, 0.0f, 0.0f, 0.857167f, 0.515038f);
264}
const uint32 NA_GUARD_CHECK_TIME
Definition: OutdoorPvPNA.h:47
@ HALAA_N
Definition: OutdoorPvPNA.h:208
const uint32 NA_RESPAWN_TIME
Definition: OutdoorPvPNA.h:45
@ TEAM_NEUTRAL
Definition: SharedDefines.h:762
Definition: OutdoorPvP.h:90
bool SetCapturePointData(uint32 entry, uint32 map, float x, float y, float z, float o=0, float rotation0=0, float rotation1=0, float rotation2=0, float rotation3=0)
Definition: OutdoorPvP.cpp:127
uint32 m_WyvernStateNorth
Definition: OutdoorPvPNA.h:264
bool m_canRecap
Definition: OutdoorPvPNA.h:275
uint32 m_RespawnTimer
Definition: OutdoorPvPNA.h:271
bool m_capturable
Definition: OutdoorPvPNA.h:258
uint32 m_HalaaState
Definition: OutdoorPvPNA.h:269
TeamId m_ControllingFaction
Definition: OutdoorPvPNA.h:262
uint32 m_WyvernStateWest
Definition: OutdoorPvPNA.h:267
uint32 m_WyvernStateEast
Definition: OutdoorPvPNA.h:266
uint32 m_GuardsAlive
Definition: OutdoorPvPNA.h:260
uint32 m_GuardCheckTimer
Definition: OutdoorPvPNA.h:273
uint32 m_WyvernStateSouth
Definition: OutdoorPvPNA.h:265

References OPvPCapturePoint::SetCapturePointData().

Member Function Documentation

◆ ChangeState()

void OPvPCapturePointNA::ChangeState ( )
overridevirtual

Implements OPvPCapturePoint.

785{
786 uint32 artkit = 21;
787 switch (_state)
788 {
791 break;
794 if (m_canRecap)
796 artkit = 2;
797 break;
800 if (m_canRecap)
802 artkit = 1;
803 break;
806 break;
809 break;
812 artkit = 2;
813 break;
816 artkit = 1;
817 break;
818 }
819
820 auto bounds = sMapMgr->FindMap(530, 0)->GetGameObjectBySpawnIdStore().equal_range(m_capturePointSpawnId);
821 for (auto itr = bounds.first; itr != bounds.second; ++itr)
822 itr->second->SetGoArtKit(artkit);
823
825}
std::uint32_t uint32
Definition: Define.h:107
@ HALAA_N_A
Definition: OutdoorPvPNA.h:209
@ HALAA_H
Definition: OutdoorPvPNA.h:212
@ HALAA_A
Definition: OutdoorPvPNA.h:210
@ HALAA_N_H
Definition: OutdoorPvPNA.h:211
@ TEAM_ALLIANCE
Definition: SharedDefines.h:760
@ TEAM_HORDE
Definition: SharedDefines.h:761
#define sMapMgr
Definition: MapMgr.h:219
@ OBJECTIVESTATE_HORDE
Definition: OutdoorPvP.h:44
@ OBJECTIVESTATE_NEUTRAL_HORDE_CHALLENGE
Definition: OutdoorPvP.h:46
@ OBJECTIVESTATE_ALLIANCE
Definition: OutdoorPvP.h:43
@ OBJECTIVESTATE_NEUTRAL_ALLIANCE_CHALLENGE
Definition: OutdoorPvP.h:45
@ OBJECTIVESTATE_HORDE_ALLIANCE_CHALLENGE
Definition: OutdoorPvP.h:48
@ OBJECTIVESTATE_NEUTRAL
Definition: OutdoorPvP.h:42
@ OBJECTIVESTATE_ALLIANCE_HORDE_CHALLENGE
Definition: OutdoorPvP.h:47
ObjectiveStates _state
Definition: OutdoorPvP.h:166
ObjectGuid::LowType m_capturePointSpawnId
Definition: OutdoorPvP.h:124
void FactionTakeOver(TeamId teamId)
Definition: OutdoorPvPNA.cpp:190
void UpdateHalaaWorldState()
Definition: OutdoorPvPNA.cpp:837

References OPvPCapturePoint::_state, FactionTakeOver(), HALAA_A, HALAA_H, HALAA_N, HALAA_N_A, HALAA_N_H, m_canRecap, OPvPCapturePoint::m_capturePointSpawnId, m_HalaaState, OBJECTIVESTATE_ALLIANCE, OBJECTIVESTATE_ALLIANCE_HORDE_CHALLENGE, OBJECTIVESTATE_HORDE, OBJECTIVESTATE_HORDE_ALLIANCE_CHALLENGE, OBJECTIVESTATE_NEUTRAL, OBJECTIVESTATE_NEUTRAL_ALLIANCE_CHALLENGE, OBJECTIVESTATE_NEUTRAL_HORDE_CHALLENGE, sMapMgr, TEAM_ALLIANCE, TEAM_HORDE, and UpdateHalaaWorldState().

Referenced by Update().

◆ DespawnCreatures()

void OPvPCapturePointNA::DespawnCreatures ( HalaaNPCS  teamNPC)
protected
122{
123 for (int i = 0; i < NA_HALAA_CREATURE_TEAM_SPAWN; i++)
124 {
125 ObjectGuid::LowType spawnId = teamNPC[i];
126 auto bounds = _pvp->GetMap()->GetCreatureBySpawnIdStore().equal_range(spawnId);
127 CreatureData const* data = sObjectMgr->GetCreatureData(spawnId);
128 for (auto itr = bounds.first; itr != bounds.second;)
129 {
130 // can happen when closing the core
131 Creature* c = itr->second;
132 if (c)
133 {
134 ++itr;
136 sObjectMgr->RemoveCreatureFromGrid(spawnId, data);
137 _creatures[i] = 0;
139 }
140 }
141 }
142}
@ NA_HALAA_CREATURE_TEAM_SPAWN
Definition: OutdoorPvPNA.h:133
#define sObjectMgr
Definition: ObjectMgr.h:1635
Definition: Creature.h:43
Definition: CreatureData.h:370
void AddObjectToRemoveList()
Definition: Object.cpp:2160
uint32 LowType
Definition: ObjectGuid.h:122
CreatureBySpawnIdContainer & GetCreatureBySpawnIdStore()
Definition: Map.h:518
std::unordered_map< ObjectGuid::LowType, uint32 > _creatureTypes
Definition: OutdoorPvP.h:180
std::unordered_map< uint32, ObjectGuid::LowType > _creatures
Definition: OutdoorPvP.h:178
OutdoorPvP * _pvp
Definition: OutdoorPvP.h:172
Map * GetMap() const
Definition: OutdoorPvP.h:243

References OPvPCapturePoint::_creatures, OPvPCapturePoint::_creatureTypes, OPvPCapturePoint::_pvp, WorldObject::AddObjectToRemoveList(), Map::GetCreatureBySpawnIdStore(), OutdoorPvP::GetMap(), NA_HALAA_CREATURE_TEAM_SPAWN, and sObjectMgr.

Referenced by FactionTakeOver(), and Update().

◆ DespawnGOs()

void OPvPCapturePointNA::DespawnGOs ( )
protected
183{
184 for (int i = 0; i < NA_CONTROL_GO_NUM; ++i)
185 {
186 DelObject(i);
187 }
188}
@ NA_CONTROL_GO_NUM
Definition: OutdoorPvPNA.h:109
bool DelObject(uint32 type)
Definition: OutdoorPvP.cpp:193

References OPvPCapturePoint::DelObject(), and NA_CONTROL_GO_NUM.

Referenced by FactionTakeOver(), and Update().

◆ FactionTakeOver()

void OPvPCapturePointNA::FactionTakeOver ( TeamId  teamId)
protected
191{
195 sWorld->SendZoneText(NA_HALAA_GRAVEYARD_ZONE, sObjectMgr->GetAcoreStringForDBCLocale(LANG_OPVP_NA_LOSE_A));
197 sWorld->SendZoneText(NA_HALAA_GRAVEYARD_ZONE, sObjectMgr->GetAcoreStringForDBCLocale(LANG_OPVP_NA_LOSE_H));
199 m_ControllingFaction = teamId;
202 DespawnGOs();
203 SpawnGOsForTeam(teamId);
206 m_capturable = false;
207 m_canRecap = false;
208 this->UpdateHalaaWorldState();
209 if (teamId == TEAM_ALLIANCE)
210 {
219 sWorld->SendZoneText(NA_HALAA_GRAVEYARD_ZONE, sObjectMgr->GetAcoreStringForDBCLocale(LANG_OPVP_NA_CAPTURE_A));
220 }
221 else
222 {
231 sWorld->SendZoneText(NA_HALAA_GRAVEYARD_ZONE, sObjectMgr->GetAcoreStringForDBCLocale(LANG_OPVP_NA_CAPTURE_H));
232 }
237}
const uint32 NA_HALAA_GRAVEYARD
Definition: OutdoorPvPNA.h:39
const uint32 NA_GUARDS_MAX
Definition: OutdoorPvPNA.h:35
@ WYVERN_NEU_HORDE
Definition: OutdoorPvPNA.h:200
@ WYVERN_NEU_ALLIANCE
Definition: OutdoorPvPNA.h:201
@ NA_ROOST_W
Definition: OutdoorPvPNA.h:95
@ NA_ROOST_E
Definition: OutdoorPvPNA.h:97
@ NA_ROOST_N
Definition: OutdoorPvPNA.h:96
@ NA_ROOST_S
Definition: OutdoorPvPNA.h:94
const uint32 NA_HALAA_GRAVEYARD_ZONE
Definition: OutdoorPvPNA.h:41
@ NA_CAPTURE_BUFF
Definition: OutdoorPvPNA.h:29
@ NA_UI_ALLIANCE_GUARDS_SHOW
Definition: OutdoorPvPNA.h:54
@ NA_UI_HORDE_GUARDS_SHOW
Definition: OutdoorPvPNA.h:53
@ NA_UI_GUARDS_LEFT
Definition: OutdoorPvPNA.h:56
HalaaNPCS halaaNPCAlly
Definition: OutdoorPvPNA.cpp:40
HalaaNPCS halaaNPCHorde
Definition: OutdoorPvPNA.cpp:39
#define sGraveyard
Definition: GameGraveyard.h:74
@ LANG_OPVP_NA_CAPTURE_A
Definition: Language.h:1225
@ LANG_OPVP_NA_LOSE_A
Definition: Language.h:1227
@ LANG_OPVP_NA_LOSE_H
Definition: Language.h:1226
@ LANG_OPVP_NA_CAPTURE_H
Definition: Language.h:1224
#define sWorld
Definition: World.h:443
void TeamApplyBuff(TeamId teamId, uint32 spellId, uint32 spellId2=0, Player *sameMapPlr=nullptr)
Definition: OutdoorPvP.cpp:670
void SendUpdateWorldState(uint32 field, uint32 value)
Definition: OutdoorPvP.cpp:456
void UpdateWyvernRoostWorldState(uint32 roost)
Definition: OutdoorPvPNA.cpp:846
void SpawnNPCsForTeam(HalaaNPCS teamNPC)
Definition: OutdoorPvPNA.cpp:144
void DespawnGOs()
Definition: OutdoorPvPNA.cpp:182
void DespawnCreatures(HalaaNPCS teamNPC)
Definition: OutdoorPvPNA.cpp:121
TeamId GetControllingFaction() const
Definition: OutdoorPvPNA.cpp:116
void SpawnGOsForTeam(TeamId teamId)
Definition: OutdoorPvPNA.cpp:158

References OPvPCapturePoint::_pvp, DespawnCreatures(), DespawnGOs(), GetControllingFaction(), halaaNPCAlly, halaaNPCHorde, LANG_OPVP_NA_CAPTURE_A, LANG_OPVP_NA_CAPTURE_H, LANG_OPVP_NA_LOSE_A, LANG_OPVP_NA_LOSE_H, m_canRecap, m_capturable, m_ControllingFaction, m_GuardsAlive, m_WyvernStateEast, m_WyvernStateNorth, m_WyvernStateSouth, m_WyvernStateWest, NA_CAPTURE_BUFF, NA_GUARDS_MAX, NA_HALAA_GRAVEYARD, NA_HALAA_GRAVEYARD_ZONE, NA_ROOST_E, NA_ROOST_N, NA_ROOST_S, NA_ROOST_W, NA_UI_ALLIANCE_GUARDS_SHOW, NA_UI_GUARDS_LEFT, NA_UI_HORDE_GUARDS_SHOW, OutdoorPvP::SendUpdateWorldState(), sGraveyard, sObjectMgr, SpawnGOsForTeam(), SpawnNPCsForTeam(), sWorld, TEAM_ALLIANCE, TEAM_HORDE, TEAM_NEUTRAL, OutdoorPvP::TeamApplyBuff(), UpdateHalaaWorldState(), UpdateWyvernRoostWorldState(), WYVERN_NEU_ALLIANCE, and WYVERN_NEU_HORDE.

Referenced by ChangeState(), and Update().

◆ FillInitialWorldStates()

void OPvPCapturePointNA::FillInitialWorldStates ( WorldPacket data)
overridevirtual

Reimplemented from OPvPCapturePoint.

307{
309 {
310 data << NA_UI_HORDE_GUARDS_SHOW << uint32(0);
312 }
314 {
315 data << NA_UI_HORDE_GUARDS_SHOW << uint32(1);
317 }
318 else
319 {
320 data << NA_UI_HORDE_GUARDS_SHOW << uint32(0);
322 }
323
326
328 data << NA_UI_TOWER_SLIDER_POS << uint32(50);
329 data << NA_UI_TOWER_SLIDER_N << uint32(100);
330
335
340
345
350
354 data << NA_MAP_HALAA_HORDE << uint32(bool(m_HalaaState & HALAA_H));
356}
@ WYVERN_ALLIANCE
Definition: OutdoorPvPNA.h:203
@ WYVERN_HORDE
Definition: OutdoorPvPNA.h:202
@ NA_MAP_HALAA_NEU_A
Definition: OutdoorPvPNA.h:83
@ NA_MAP_WYVERN_SOUTH_NEU_H
Definition: OutdoorPvPNA.h:67
@ NA_MAP_HALAA_HORDE
Definition: OutdoorPvPNA.h:85
@ NA_MAP_WYVERN_NORTH_NEU_A
Definition: OutdoorPvPNA.h:63
@ NA_UI_TOWER_SLIDER_DISPLAY
Definition: OutdoorPvPNA.h:58
@ NA_MAP_HALAA_NEUTRAL
Definition: OutdoorPvPNA.h:82
@ NA_MAP_WYVERN_WEST_NEU_A
Definition: OutdoorPvPNA.h:73
@ NA_MAP_WYVERN_SOUTH_NEU_A
Definition: OutdoorPvPNA.h:68
@ NA_MAP_WYVERN_WEST_H
Definition: OutdoorPvPNA.h:74
@ NA_MAP_WYVERN_NORTH_NEU_H
Definition: OutdoorPvPNA.h:62
@ NA_MAP_HALAA_ALLIANCE
Definition: OutdoorPvPNA.h:86
@ NA_MAP_WYVERN_EAST_H
Definition: OutdoorPvPNA.h:79
@ NA_MAP_WYVERN_SOUTH_A
Definition: OutdoorPvPNA.h:70
@ NA_UI_TOWER_SLIDER_N
Definition: OutdoorPvPNA.h:60
@ NA_UI_GUARDS_MAX
Definition: OutdoorPvPNA.h:55
@ NA_MAP_WYVERN_EAST_A
Definition: OutdoorPvPNA.h:80
@ NA_UI_TOWER_SLIDER_POS
Definition: OutdoorPvPNA.h:59
@ NA_MAP_WYVERN_NORTH_H
Definition: OutdoorPvPNA.h:64
@ NA_MAP_WYVERN_WEST_A
Definition: OutdoorPvPNA.h:75
@ NA_MAP_WYVERN_EAST_NEU_A
Definition: OutdoorPvPNA.h:78
@ NA_MAP_WYVERN_EAST_NEU_H
Definition: OutdoorPvPNA.h:77
@ NA_MAP_HALAA_NEU_H
Definition: OutdoorPvPNA.h:84
@ NA_MAP_WYVERN_WEST_NEU_H
Definition: OutdoorPvPNA.h:72
@ NA_MAP_WYVERN_NORTH_A
Definition: OutdoorPvPNA.h:65
@ NA_MAP_WYVERN_SOUTH_H
Definition: OutdoorPvPNA.h:69

References HALAA_A, HALAA_H, HALAA_N, HALAA_N_A, HALAA_N_H, m_ControllingFaction, m_GuardsAlive, m_HalaaState, m_WyvernStateEast, m_WyvernStateNorth, m_WyvernStateSouth, m_WyvernStateWest, NA_GUARDS_MAX, NA_MAP_HALAA_ALLIANCE, NA_MAP_HALAA_HORDE, NA_MAP_HALAA_NEU_A, NA_MAP_HALAA_NEU_H, NA_MAP_HALAA_NEUTRAL, NA_MAP_WYVERN_EAST_A, NA_MAP_WYVERN_EAST_H, NA_MAP_WYVERN_EAST_NEU_A, NA_MAP_WYVERN_EAST_NEU_H, NA_MAP_WYVERN_NORTH_A, NA_MAP_WYVERN_NORTH_H, NA_MAP_WYVERN_NORTH_NEU_A, NA_MAP_WYVERN_NORTH_NEU_H, NA_MAP_WYVERN_SOUTH_A, NA_MAP_WYVERN_SOUTH_H, NA_MAP_WYVERN_SOUTH_NEU_A, NA_MAP_WYVERN_SOUTH_NEU_H, NA_MAP_WYVERN_WEST_A, NA_MAP_WYVERN_WEST_H, NA_MAP_WYVERN_WEST_NEU_A, NA_MAP_WYVERN_WEST_NEU_H, NA_UI_ALLIANCE_GUARDS_SHOW, NA_UI_GUARDS_LEFT, NA_UI_GUARDS_MAX, NA_UI_HORDE_GUARDS_SHOW, NA_UI_TOWER_SLIDER_DISPLAY, NA_UI_TOWER_SLIDER_N, NA_UI_TOWER_SLIDER_POS, TEAM_ALLIANCE, TEAM_HORDE, WYVERN_ALLIANCE, WYVERN_HORDE, WYVERN_NEU_ALLIANCE, and WYVERN_NEU_HORDE.

Referenced by OutdoorPvPNA::FillInitialWorldStates().

◆ GetAliveGuardsCount()

uint32 OPvPCapturePointNA::GetAliveGuardsCount ( )
104{
105 uint32 count = 0;
106 for (auto itr = _creatures.begin(); itr != _creatures.end(); ++itr)
107 {
108 auto bounds = _pvp->GetMap()->GetCreatureBySpawnIdStore().equal_range(itr->second);
109 for (auto itr2 = bounds.first; itr2 != bounds.second; ++itr2)
110 if (itr2->second->IsAlive() && (itr2->second->GetEntry() == NA_HALAANI_GUARD_A || itr2->second->GetEntry() == NA_HALAANI_GUARD_H))
111 ++count;
112 }
113 return count;
114}
@ NA_HALAANI_GUARD_H
Definition: OutdoorPvPNA.h:127
@ NA_HALAANI_GUARD_A
Definition: OutdoorPvPNA.h:126

References OPvPCapturePoint::_creatures, OPvPCapturePoint::_pvp, Map::GetCreatureBySpawnIdStore(), OutdoorPvP::GetMap(), NA_HALAANI_GUARD_A, and NA_HALAANI_GUARD_H.

Referenced by Update().

◆ GetControllingFaction()

TeamId OPvPCapturePointNA::GetControllingFaction ( ) const

◆ HandleCustomSpell()

bool OPvPCapturePointNA::HandleCustomSpell ( Player player,
uint32  spellId,
GameObject go 
)
overridevirtual

Reimplemented from OPvPCapturePoint.

402{
403 std::vector<uint32> nodes;
404 nodes.resize(2);
405 bool retval = false;
406 switch (spellId)
407 {
410 nodes[1] = FlightPathEndNodes[NA_ROOST_N];
411 player->ActivateTaxiPathTo(nodes);
412 FlagPlayerPvP(player);
413 retval = true;
414 break;
417 nodes[1] = FlightPathEndNodes[NA_ROOST_S];
418 player->ActivateTaxiPathTo(nodes);
419 FlagPlayerPvP(player);
420 retval = true;
421 break;
424 nodes[1] = FlightPathEndNodes[NA_ROOST_W];
425 player->ActivateTaxiPathTo(nodes);
426 FlagPlayerPvP(player);
427 retval = true;
428 break;
431 nodes[1] = FlightPathEndNodes[NA_ROOST_E];
432 player->ActivateTaxiPathTo(nodes);
433 FlagPlayerPvP(player);
434 retval = true;
435 break;
436 default:
437 break;
438 }
439
440 if (retval)
441 {
442 //Adding items
443 uint32 noSpaceForCount = 0;
444
445 // check space and find places
446 ItemPosCountVec dest;
447
448 int32 count = 10;
449 // bomb id count
450 InventoryResult msg = player->CanStoreNewItem(NULL_BAG, NULL_SLOT, dest, NA_HALAA_BOMB, count, &noSpaceForCount);
451 if (msg != EQUIP_ERR_OK) // convert to possible store amount
452 count -= noSpaceForCount;
453
454 if (count == 0 || dest.empty()) // can't add any
455 {
456 return true;
457 }
458
459 Item* item = player->StoreNewItem(dest, NA_HALAA_BOMB, true);
460
461 if (count > 0 && item)
462 {
463 player->SendNewItem(item, count, true, false);
464 }
465
466 return true;
467 }
468 return false;
469}
std::int32_t int32
Definition: Define.h:103
@ NA_SPELL_FLY_SOUTH
Definition: OutdoorPvPNA.h:117
@ NA_SPELL_FLY_WEST
Definition: OutdoorPvPNA.h:118
@ NA_SPELL_FLY_EAST
Definition: OutdoorPvPNA.h:120
@ NA_SPELL_FLY_NORTH
Definition: OutdoorPvPNA.h:119
const uint32 NA_HALAA_BOMB
Definition: OutdoorPvPNA.h:49
const uint32 FlightPathEndNodes[FLIGHT_NODES_NUM]
Definition: OutdoorPvPNA.h:113
const uint32 FlightPathStartNodes[FLIGHT_NODES_NUM]
Definition: OutdoorPvPNA.h:112
void FlagPlayerPvP(Player *player)
Definition: OutdoorPvPNA.cpp:395
std::vector< ItemPosCount > ItemPosCountVec
Definition: Player.h:776
InventoryResult
Definition: Item.h:46
@ EQUIP_ERR_OK
Definition: Item.h:47
@ NULL_BAG
Definition: Item.h:40
@ NULL_SLOT
Definition: Item.h:41
Definition: Item.h:220
bool ActivateTaxiPathTo(std::vector< uint32 > const &nodes, Creature *npc=nullptr, uint32 spellid=1)
Definition: Player.cpp:10265
void SendNewItem(Item *item, uint32 count, bool received, bool created, bool broadcast=false, bool sendChatMessage=true)
Definition: PlayerStorage.cpp:4751
Item * StoreNewItem(ItemPosCountVec const &pos, uint32 item, bool update, int32 randomPropertyId=0)
Definition: PlayerStorage.cpp:2524
InventoryResult CanStoreNewItem(uint8 bag, uint8 slot, ItemPosCountVec &dest, uint32 item, uint32 count, uint32 *no_space_count=nullptr) const
Definition: Player.h:1291

References Player::ActivateTaxiPathTo(), Player::CanStoreNewItem(), EQUIP_ERR_OK, FlagPlayerPvP(), FlightPathEndNodes, FlightPathStartNodes, NA_HALAA_BOMB, NA_ROOST_E, NA_ROOST_N, NA_ROOST_S, NA_ROOST_W, NA_SPELL_FLY_EAST, NA_SPELL_FLY_NORTH, NA_SPELL_FLY_SOUTH, NA_SPELL_FLY_WEST, NULL_BAG, NULL_SLOT, Player::SendNewItem(), and Player::StoreNewItem().

◆ HandleOpenGo()

int32 OPvPCapturePointNA::HandleOpenGo ( Player player,
GameObject go 
)
overridevirtual

Reimplemented from OPvPCapturePoint.

472{
473 int32 retval = OPvPCapturePoint::HandleOpenGo(player, go);
474 if (retval >= 0)
475 {
476 const go_type* gos = nullptr;
478 gos = AllianceControlGOs;
480 gos = HordeControlGOs;
481 else
482 return -1;
483
484 int32 del = -1;
485 int32 del2 = -1;
486 int32 add = -1;
487 int32 add2 = -1;
488
489 switch (retval)
490 {
493 add = NA_ROOST_S;
494 add2 = NA_BOMB_WAGON_S;
497 else
500 FlagPlayerPvP(player);
501 break;
504 add = NA_ROOST_N;
505 add2 = NA_BOMB_WAGON_N;
508 else
511 FlagPlayerPvP(player);
512 break;
515 add = NA_ROOST_W;
516 add2 = NA_BOMB_WAGON_W;
519 else
522 FlagPlayerPvP(player);
523 break;
526 add = NA_ROOST_E;
527 add2 = NA_BOMB_WAGON_E;
530 else
533 FlagPlayerPvP(player);
534 break;
535 case NA_BOMB_WAGON_S:
536 del = NA_BOMB_WAGON_S;
537 del2 = NA_ROOST_S;
541 else
544 FlagPlayerPvP(player);
545 break;
546 case NA_BOMB_WAGON_N:
547 del = NA_BOMB_WAGON_N;
548 del2 = NA_ROOST_N;
552 else
555 FlagPlayerPvP(player);
556 break;
557 case NA_BOMB_WAGON_W:
558 del = NA_BOMB_WAGON_W;
559 del2 = NA_ROOST_W;
563 else
566 FlagPlayerPvP(player);
567 break;
568 case NA_BOMB_WAGON_E:
569 del = NA_BOMB_WAGON_E;
570 del2 = NA_ROOST_E;
574 else
577 FlagPlayerPvP(player);
578 break;
579 default:
580 return -1;
581 break;
582 }
583
584 if (del > -1)
585 DelObject(del);
586
587 if (del2 > -1)
588 DelObject(del2);
589
590 if (add > -1)
591 AddObject(add, gos[add].entry, gos[add].map, gos[add].x, gos[add].y, gos[add].z, gos[add].o, gos[add].rot0, gos[add].rot1, gos[add].rot2, gos[add].rot3);
592
593 if (add2 > -1)
594 AddObject(add2, gos[add2].entry, gos[add2].map, gos[add2].x, gos[add2].y, gos[add2].z, gos[add2].o, gos[add2].rot0, gos[add2].rot1, gos[add2].rot2, gos[add2].rot3);
595
596 return retval;
597 }
598 return -1;
599}
const go_type HordeControlGOs[NA_CONTROL_GO_NUM]
Definition: OutdoorPvPNA.h:138
@ NA_BOMB_WAGON_E
Definition: OutdoorPvPNA.h:102
@ NA_DESTROYED_ROOST_S
Definition: OutdoorPvPNA.h:104
@ NA_BOMB_WAGON_N
Definition: OutdoorPvPNA.h:101
@ NA_BOMB_WAGON_W
Definition: OutdoorPvPNA.h:100
@ NA_DESTROYED_ROOST_E
Definition: OutdoorPvPNA.h:107
@ NA_BOMB_WAGON_S
Definition: OutdoorPvPNA.h:99
@ NA_DESTROYED_ROOST_N
Definition: OutdoorPvPNA.h:106
@ NA_DESTROYED_ROOST_W
Definition: OutdoorPvPNA.h:105
const go_type AllianceControlGOs[NA_CONTROL_GO_NUM]
Definition: OutdoorPvPNA.h:157
Definition: OutdoorPvP.h:53
bool AddObject(uint32 type, uint32 entry, uint32 map, float x, float y, float z, float o, float rotation0, float rotation1, float rotation2, float rotation3)
Definition: OutdoorPvP.cpp:105
virtual int32 HandleOpenGo(Player *player, GameObject *go)
Definition: OutdoorPvP.cpp:611

References OPvPCapturePoint::AddObject(), AllianceControlGOs, OPvPCapturePoint::DelObject(), FlagPlayerPvP(), OPvPCapturePoint::HandleOpenGo(), HordeControlGOs, m_ControllingFaction, m_WyvernStateEast, m_WyvernStateNorth, m_WyvernStateSouth, m_WyvernStateWest, NA_BOMB_WAGON_E, NA_BOMB_WAGON_N, NA_BOMB_WAGON_S, NA_BOMB_WAGON_W, NA_DESTROYED_ROOST_E, NA_DESTROYED_ROOST_N, NA_DESTROYED_ROOST_S, NA_DESTROYED_ROOST_W, NA_ROOST_E, NA_ROOST_N, NA_ROOST_S, NA_ROOST_W, TEAM_ALLIANCE, TEAM_HORDE, UpdateWyvernRoostWorldState(), WYVERN_ALLIANCE, WYVERN_HORDE, WYVERN_NEU_ALLIANCE, and WYVERN_NEU_HORDE.

◆ HandlePlayerEnter()

bool OPvPCapturePointNA::HandlePlayerEnter ( Player player)
overridevirtual

Reimplemented from OPvPCapturePoint.

240{
242 {
244 uint32 phase = (uint32)ceil((_value + _maxValue) / (2 * _maxValue) * 100.0f);
247 return true;
248 }
249 return false;
250}
phase
Definition: boss_skadi.cpp:103
void SendUpdateWorldState(uint32 variable, uint32 value) const
Definition: PlayerUpdates.cpp:2197
uint32 _neutralValuePct
Definition: OutdoorPvP.h:169
float _maxValue
Definition: OutdoorPvP.h:153
virtual bool HandlePlayerEnter(Player *player)
Definition: OutdoorPvP.cpp:34
float _value
Definition: OutdoorPvP.h:160

References OPvPCapturePoint::_maxValue, OPvPCapturePoint::_neutralValuePct, OPvPCapturePoint::_value, OPvPCapturePoint::HandlePlayerEnter(), NA_UI_TOWER_SLIDER_DISPLAY, NA_UI_TOWER_SLIDER_N, NA_UI_TOWER_SLIDER_POS, and Player::SendUpdateWorldState().

Referenced by Update().

◆ HandlePlayerLeave()

void OPvPCapturePointNA::HandlePlayerLeave ( Player player)
overridevirtual

Reimplemented from OPvPCapturePoint.

253{
256}
virtual void HandlePlayerLeave(Player *player)
Definition: OutdoorPvP.cpp:46

References OPvPCapturePoint::HandlePlayerLeave(), NA_UI_TOWER_SLIDER_DISPLAY, and Player::SendUpdateWorldState().

Referenced by Update().

◆ SendChangePhase()

void OPvPCapturePointNA::SendChangePhase ( )
overridevirtual

Reimplemented from OPvPCapturePoint.

828{
829 // send this too, sometimes the slider disappears, dunno why :(
831 // send these updates to only the ones in this objective
832 uint32 phase = (uint32)ceil((_value + _maxValue) / (2 * _maxValue) * 100.0f);
835}
void SendUpdateWorldState(uint32 field, uint32 value)
Definition: OutdoorPvP.cpp:465

References OPvPCapturePoint::_maxValue, OPvPCapturePoint::_neutralValuePct, OPvPCapturePoint::_value, NA_UI_TOWER_SLIDER_DISPLAY, NA_UI_TOWER_SLIDER_N, NA_UI_TOWER_SLIDER_POS, and OPvPCapturePoint::SendUpdateWorldState().

Referenced by Update().

◆ SpawnGOsForTeam()

void OPvPCapturePointNA::SpawnGOsForTeam ( TeamId  teamId)
protected
159{
160 const go_type* gos = nullptr;
161 if (teamId == TEAM_ALLIANCE)
162 gos = AllianceControlGOs;
163 else if (teamId == TEAM_HORDE)
164 gos = HordeControlGOs;
165 else
166 return;
167 for (int i = 0; i < NA_CONTROL_GO_NUM; ++i)
168 {
169 if (i == NA_ROOST_S ||
170 i == NA_ROOST_W ||
171 i == NA_ROOST_N ||
172 i == NA_ROOST_E ||
173 i == NA_BOMB_WAGON_S ||
174 i == NA_BOMB_WAGON_W ||
175 i == NA_BOMB_WAGON_N ||
176 i == NA_BOMB_WAGON_E)
177 continue; // roosts and bomb wagons are spawned when someone uses the matching destroyed roost
178 AddObject(i, gos[i].entry, gos[i].map, gos[i].x, gos[i].y, gos[i].z, gos[i].o, gos[i].rot0, gos[i].rot1, gos[i].rot2, gos[i].rot3);
179 }
180}

References OPvPCapturePoint::AddObject(), AllianceControlGOs, HordeControlGOs, NA_BOMB_WAGON_E, NA_BOMB_WAGON_N, NA_BOMB_WAGON_S, NA_BOMB_WAGON_W, NA_CONTROL_GO_NUM, NA_ROOST_E, NA_ROOST_N, NA_ROOST_S, NA_ROOST_W, TEAM_ALLIANCE, and TEAM_HORDE.

Referenced by FactionTakeOver().

◆ SpawnNPCsForTeam()

void OPvPCapturePointNA::SpawnNPCsForTeam ( HalaaNPCS  teamNPC)
protected
145{
146 for (int i = 0; i < NA_HALAA_CREATURE_TEAM_SPAWN; i++)
147 {
148 ObjectGuid::LowType spawnId = teamNPC[i];
149 const CreatureData* data = sObjectMgr->GetCreatureData(spawnId);
150 if (data) {
151 UpdateCreatureHalaa(spawnId, _pvp->GetMap(), data->posX, data->posY);
152 _creatures[i] = spawnId;
154 }
155 }
156}
void UpdateCreatureHalaa(ObjectGuid::LowType spawnId, Map *map, float x, float y)
Definition: OutdoorPvPNA.cpp:84
float posY
Definition: CreatureData.h:380
float posX
Definition: CreatureData.h:379

References OPvPCapturePoint::_creatures, OPvPCapturePoint::_creatureTypes, OPvPCapturePoint::_pvp, OutdoorPvP::GetMap(), NA_HALAA_CREATURE_TEAM_SPAWN, CreatureData::posX, CreatureData::posY, sObjectMgr, and UpdateCreatureHalaa().

Referenced by FactionTakeOver().

◆ Update()

bool OPvPCapturePointNA::Update ( uint32  diff)
overridevirtual

Reimplemented from OPvPCapturePoint.

602{
603 if (!_capturePoint)
604 return false;
605
606 float radius = ((float)_capturePoint->GetGOInfo()->capturePoint.radius);
607
608 for (PlayerSet playerSet : _activePlayers)
609 {
610 for (ObjectGuid playerGuid : playerSet)
611 {
612 if (Player* player = ObjectAccessor::FindPlayer(playerGuid))
613 if (!_capturePoint->IsWithinDistInMap(player, radius) || !player->IsOutdoorPvPActive())
614 HandlePlayerLeave(player);
615 }
616 }
617
618 std::list<Player*> players;
621 Cell::VisitWorldObjects(_capturePoint, searcher, radius);
622
623 for (Player* player : players)
624 {
625 if (player->IsOutdoorPvPActive())
626 {
627 if (_activePlayers[player->GetTeamId()].insert(player->GetGUID()).second)
628 HandlePlayerEnter(player);
629 }
630 }
631
632 if (m_GuardCheckTimer < diff)
633 {
636 if (cnt != m_GuardsAlive)
637 {
638 m_GuardsAlive = cnt;
639 if (m_GuardsAlive == 0)
640 {
641 m_capturable = true;
643 sWorld->SendZoneText(NA_HALAA_GRAVEYARD_ZONE, sObjectMgr->GetAcoreStringForDBCLocale(LANG_OPVP_NA_DEFENSELESS));
644 }
645 else
646 m_capturable = false;
647 // update the guard count for the players in zone
649 }
650 }
651 else m_GuardCheckTimer -= diff;
652
653 if (m_capturable) {
654 if (m_RespawnTimer < diff)
655 {
656 // if the guards have been killed, then the challenger has one hour to take over halaa.
657 // in case they fail to do it, the guards are respawned, and they have to start again.
661 }
662 else
663 {
665 _value = -_maxValue;
666 }
667 // we reset again the artkit, map icons, sliders and respawn Halaa for controller team
669 ChangeState();
671 return true;
672 }
673 else if (GetControllingFaction() != TEAM_NEUTRAL) // Don't decrease the respawn timer if the team is not HORDE or ALLIANCE
674 m_RespawnTimer -= diff;
675
676 // get the difference of numbers
677 float factDiff = ((float)_activePlayers[0].size() - (float)_activePlayers[1].size()) * diff / OUTDOORPVP_OBJECTIVE_UPDATE_INTERVAL;
678 if (!factDiff)
679 return false;
680
681 float maxDiff = _maxSpeed * diff;
682
683 if (factDiff < 0)
684 {
685 // horde is in majority, but it's already horde-controlled -> no change
687 return false;
688
689 if (factDiff < -maxDiff)
690 factDiff = -maxDiff;
691 }
692 else
693 {
694 // ally is in majority, but it's already ally-controlled -> no change
696 return false;
697
698 if (factDiff > maxDiff)
699 factDiff = maxDiff;
700 }
701
702 float oldValue = _value;
703 TeamId oldTeam = _team;
704
706
707 _value += factDiff;
708
709 if (_value < -_minValue) // red
710 {
711 if (_value < -_maxValue) //check if the m_value is lower than max, that means horde capped point
712 {
713 _value = -_maxValue;
716 }
717 else //then point is still in battle between teams
718 {
720 {
722 }
723 else
724 {
726 }
727 }
729 {
730 //When the point goes through neutral, the same faction can recapture again to respawn the guards, still need check blizzlike
731 m_canRecap = true;
732 DespawnGOs();
734 }
735 }
736 else //blue
737 {
738 if (_value > _maxValue) //check if the m_value is bigger than max, that means alliance capped point
739 {
743 }
744 else //then point is still in battle between teams
745 {
747 {
749 }
750 else
751 {
753 }
754 }
756 {
757 //When the point goes through neutral, the same faction can recapture again to respawn the guards, still need check blizzlike
758 m_canRecap = true;
759 DespawnGOs();
761 }
762 }
763
764 if (_value != oldValue)
765 {
767 }
768
769 if (_oldState != _state)
770 {
771 if (oldTeam != _team)
772 {
773 ChangeTeam(oldTeam);
774 }
775 ChangeState();
776 return true;
777 }
778 }
779 else
780 SendUpdateWorldState(NA_UI_TOWER_SLIDER_DISPLAY, 0); //Point is not capturable so we hide the slider
781 return false;
782}
TeamId
Definition: SharedDefines.h:759
@ LANG_OPVP_NA_DEFENSELESS
Definition: Language.h:1228
#define OUTDOORPVP_OBJECTIVE_UPDATE_INTERVAL
Definition: OutdoorPvPMgr.h:21
GuidSet PlayerSet
Definition: OutdoorPvP.h:87
Player * FindPlayer(ObjectGuid const guid)
Definition: ObjectAccessor.cpp:245
bool IsWithinDistInMap(Player const *player) const
Definition: GameObject.cpp:3005
GameObjectTemplate const * GetGOInfo() const
Definition: GameObject.h:136
uint32 radius
Definition: GameObjectData.h:196
struct GameObjectTemplate::@230::@254 capturePoint
Definition: ObjectGuid.h:118
Definition: Player.h:1081
static void VisitWorldObjects(WorldObject const *obj, T &visitor, float radius, bool dont_load=true)
Definition: CellImpl.h:192
Definition: GridNotifiers.h:525
Definition: GridNotifiers.h:1354
GameObject * _capturePoint
Definition: OutdoorPvP.h:125
float _minValue
Definition: OutdoorPvP.h:154
ObjectiveStates _oldState
Definition: OutdoorPvP.h:165
TeamId _team
Definition: OutdoorPvP.h:162
std::array< PlayerSet, 2 > _activePlayers
Definition: OutdoorPvP.h:150
virtual void ChangeTeam(TeamId)
Definition: OutdoorPvP.h:117
float _maxSpeed
Definition: OutdoorPvP.h:157
void ChangeState() override
Definition: OutdoorPvPNA.cpp:784
bool HandlePlayerEnter(Player *player) override
Definition: OutdoorPvPNA.cpp:239
uint32 GetAliveGuardsCount()
Definition: OutdoorPvPNA.cpp:103
void HandlePlayerLeave(Player *player) override
Definition: OutdoorPvPNA.cpp:252
void SendChangePhase() override
Definition: OutdoorPvPNA.cpp:827

References OPvPCapturePoint::_activePlayers, OPvPCapturePoint::_capturePoint, OPvPCapturePoint::_maxSpeed, OPvPCapturePoint::_maxValue, OPvPCapturePoint::_minValue, OPvPCapturePoint::_oldState, OPvPCapturePoint::_pvp, OPvPCapturePoint::_state, OPvPCapturePoint::_team, OPvPCapturePoint::_value, GameObjectTemplate::capturePoint, ChangeState(), OPvPCapturePoint::ChangeTeam(), DespawnCreatures(), DespawnGOs(), FactionTakeOver(), ObjectAccessor::FindPlayer(), GetAliveGuardsCount(), GetControllingFaction(), GameObject::GetGOInfo(), halaaNPCAlly, halaaNPCHorde, HandlePlayerEnter(), HandlePlayerLeave(), GameObject::IsWithinDistInMap(), LANG_OPVP_NA_DEFENSELESS, m_canRecap, m_capturable, m_GuardCheckTimer, m_GuardsAlive, m_RespawnTimer, NA_GUARD_CHECK_TIME, NA_HALAA_GRAVEYARD_ZONE, NA_RESPAWN_TIME, NA_UI_GUARDS_LEFT, NA_UI_TOWER_SLIDER_DISPLAY, OBJECTIVESTATE_ALLIANCE, OBJECTIVESTATE_ALLIANCE_HORDE_CHALLENGE, OBJECTIVESTATE_HORDE, OBJECTIVESTATE_HORDE_ALLIANCE_CHALLENGE, OBJECTIVESTATE_NEUTRAL, OBJECTIVESTATE_NEUTRAL_ALLIANCE_CHALLENGE, OBJECTIVESTATE_NEUTRAL_HORDE_CHALLENGE, OUTDOORPVP_OBJECTIVE_UPDATE_INTERVAL, GameObjectTemplate::radius, SendChangePhase(), OPvPCapturePoint::SendUpdateWorldState(), OutdoorPvP::SendUpdateWorldState(), sObjectMgr, sWorld, TEAM_ALLIANCE, TEAM_HORDE, TEAM_NEUTRAL, and Cell::VisitWorldObjects().

Referenced by OutdoorPvPNA::Update().

◆ UpdateHalaaWorldState()

◆ UpdateWyvernRoostWorldState()

void OPvPCapturePointNA::UpdateWyvernRoostWorldState ( uint32  roost)
protected
847{
848 switch (roost)
849 {
850 case NA_ROOST_S:
855 break;
856 case NA_ROOST_N:
861 break;
862 case NA_ROOST_W:
867 break;
868 case NA_ROOST_E:
873 break;
874 }
875}

References OPvPCapturePoint::_pvp, m_WyvernStateEast, m_WyvernStateNorth, m_WyvernStateSouth, m_WyvernStateWest, NA_MAP_WYVERN_EAST_A, NA_MAP_WYVERN_EAST_H, NA_MAP_WYVERN_EAST_NEU_A, NA_MAP_WYVERN_EAST_NEU_H, NA_MAP_WYVERN_NORTH_A, NA_MAP_WYVERN_NORTH_H, NA_MAP_WYVERN_NORTH_NEU_A, NA_MAP_WYVERN_NORTH_NEU_H, NA_MAP_WYVERN_SOUTH_A, NA_MAP_WYVERN_SOUTH_H, NA_MAP_WYVERN_SOUTH_NEU_A, NA_MAP_WYVERN_SOUTH_NEU_H, NA_MAP_WYVERN_WEST_A, NA_MAP_WYVERN_WEST_H, NA_MAP_WYVERN_WEST_NEU_A, NA_MAP_WYVERN_WEST_NEU_H, NA_ROOST_E, NA_ROOST_N, NA_ROOST_S, NA_ROOST_W, OutdoorPvP::SendUpdateWorldState(), WYVERN_ALLIANCE, WYVERN_HORDE, WYVERN_NEU_ALLIANCE, and WYVERN_NEU_HORDE.

Referenced by FactionTakeOver(), and HandleOpenGo().

Member Data Documentation

◆ m_canRecap

bool OPvPCapturePointNA::m_canRecap
private

◆ m_capturable

bool OPvPCapturePointNA::m_capturable
private

Referenced by FactionTakeOver(), and Update().

◆ m_ControllingFaction

TeamId OPvPCapturePointNA::m_ControllingFaction
private

◆ m_GuardCheckTimer

uint32 OPvPCapturePointNA::m_GuardCheckTimer
private

Referenced by Update().

◆ m_GuardsAlive

uint32 OPvPCapturePointNA::m_GuardsAlive
private

◆ m_HalaaState

uint32 OPvPCapturePointNA::m_HalaaState
private

◆ m_RespawnTimer

uint32 OPvPCapturePointNA::m_RespawnTimer
private

Referenced by Update().

◆ m_WyvernStateEast

uint32 OPvPCapturePointNA::m_WyvernStateEast
private

◆ m_WyvernStateNorth

uint32 OPvPCapturePointNA::m_WyvernStateNorth
private

◆ m_WyvernStateSouth

uint32 OPvPCapturePointNA::m_WyvernStateSouth
private

◆ m_WyvernStateWest

uint32 OPvPCapturePointNA::m_WyvernStateWest
private