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

#include "OutdoorPvP.h"

Inheritance diagram for OutdoorPvP:
ZoneScript OutdoorPvPEP OutdoorPvPGH OutdoorPvPHP OutdoorPvPNA OutdoorPvPSI OutdoorPvPTF OutdoorPvPZM

Public Types

typedef std::map< ObjectGuid::LowType, OPvPCapturePoint * > OPvPCapturePointMap
 
typedef std::pair< ObjectGuid::LowType, GameObject * > GoScriptPair
 
typedef std::pair< ObjectGuid::LowType, Creature * > CreatureScriptPair
 

Public Member Functions

 OutdoorPvP ()
 
 ~OutdoorPvP () override
 
void DeleteSpawns ()
 
virtual void FillInitialWorldStates (WorldPacket &)
 
virtual bool HandleAreaTrigger (Player *player, uint32 trigger)
 
virtual bool HandleCustomSpell (Player *player, uint32 spellId, GameObject *go)
 
virtual bool HandleOpenGo (Player *player, GameObject *go)
 
virtual bool SetupOutdoorPvP ()
 
void OnGameObjectCreate (GameObject *go) override
 
void OnGameObjectRemove (GameObject *go) override
 
void OnCreatureCreate (Creature *creature) override
 
void OnCreatureRemove (Creature *creature) override
 
void SendUpdateWorldState (uint32 field, uint32 value)
 
virtual bool Update (uint32 diff)
 
virtual void HandleKill (Player *killer, Unit *killed)
 
virtual void HandleKillImpl (Player *, Unit *)
 
bool IsInsideObjective (Player *player) const
 
virtual void AwardKillBonus (Player *)
 
uint32 GetTypeId ()
 
virtual bool HandleDropFlag (Player *player, uint32 spellId)
 
virtual bool HandleGossipOption (Player *player, Creature *creature, uint32 gossipid)
 
virtual bool CanTalkTo (Player *player, Creature *c, GossipMenuItems const &gso)
 
void TeamApplyBuff (TeamId teamId, uint32 spellId, uint32 spellId2=0, Player *sameMapPlr=nullptr)
 
MapGetMap () const
 
- Public Member Functions inherited from ZoneScript
 ZoneScript ()
 
virtual ~ZoneScript ()
 
virtual uint32 GetCreatureEntry (ObjectGuid::LowType, CreatureData const *data)
 
virtual uint32 GetGameObjectEntry (ObjectGuid::LowType, uint32 entry)
 
virtual void OnCreatureCreate (Creature *)
 
virtual void OnCreatureRemove (Creature *)
 
virtual void OnGameObjectCreate (GameObject *)
 
virtual void OnGameObjectRemove (GameObject *)
 
virtual void OnUnitDeath (Unit *)
 
virtual void OnCreatureEvade (Creature *)
 
virtual ObjectGuid GetGuidData (uint32) const
 
virtual void SetGuidData (uint32, ObjectGuid)
 
virtual uint64 GetData64 (uint32) const
 
virtual void SetData64 (uint32, uint64)
 
virtual uint32 GetData (uint32) const
 
virtual void SetData (uint32, uint32)
 
virtual void ProcessEvent (WorldObject *, uint32)
 

Protected Member Functions

virtual void SendRemoveWorldStates (Player *)
 
void BroadcastPacket (WorldPacket &data) const
 
virtual void HandlePlayerEnterZone (Player *player, uint32 zone)
 
virtual void HandlePlayerLeaveZone (Player *player, uint32 zone)
 
virtual void HandlePlayerResurrects (Player *player, uint32 zone)
 
void AddCapturePoint (OPvPCapturePoint *cp)
 
OPvPCapturePointGetCapturePoint (ObjectGuid::LowType spawnId) const
 
void RegisterZone (uint32 zoneid)
 
bool HasPlayer (Player const *player) const
 
void TeamCastSpell (TeamId team, int32 spellId, Player *sameMapPlr=nullptr)
 
void SetMapFromZone (uint32 zone)
 

Protected Attributes

OPvPCapturePointMap m_capturePoints
 
PlayerSet m_players [2]
 
uint32 m_TypeId
 
bool m_sendUpdate
 
std::map< ObjectGuid::LowType, GameObject * > m_GoScriptStore
 
std::map< ObjectGuid::LowType, Creature * > m_CreatureScriptStore
 
Mapm_map
 

Friends

class OutdoorPvPMgr
 

Detailed Description

Member Typedef Documentation

◆ CreatureScriptPair

◆ GoScriptPair

◆ OPvPCapturePointMap

Constructor & Destructor Documentation

◆ OutdoorPvP()

OutdoorPvP::OutdoorPvP ( )
248: m_TypeId(0), m_sendUpdate(true), m_map(nullptr) { }
uint32 m_TypeId
Definition: OutdoorPvP.h:267
bool m_sendUpdate
Definition: OutdoorPvP.h:269
Map * m_map
Definition: OutdoorPvP.h:305

◆ ~OutdoorPvP()

OutdoorPvP::~OutdoorPvP ( )
override
251{
252 DeleteSpawns();
253}
void DeleteSpawns()
Definition: OutdoorPvP.cpp:223

References DeleteSpawns().

Member Function Documentation

◆ AddCapturePoint()

void OutdoorPvP::AddCapturePoint ( OPvPCapturePoint cp)
inlineprotected

◆ AwardKillBonus()

virtual void OutdoorPvP::AwardKillBonus ( Player )
inlinevirtual
247{}

◆ BroadcastPacket()

void OutdoorPvP::BroadcastPacket ( WorldPacket data) const
protected
583{
584 // This is faster than sWorld->SendZoneMessage
585 for (uint32 team = 0; team < 2; ++team)
586 for (PlayerSet::const_iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
587 if (Player* const player = ObjectAccessor::FindPlayer(*itr))
588 player->GetSession()->SendPacket(&data);
589}
std::uint32_t uint32
Definition: Define.h:108
Player * FindPlayer(ObjectGuid const guid)
Definition: ObjectAccessor.cpp:250
Definition: Player.h:1046
PlayerSet m_players[2]
Definition: OutdoorPvP.h:265

References ObjectAccessor::FindPlayer(), and m_players.

◆ CanTalkTo()

bool OutdoorPvP::CanTalkTo ( Player player,
Creature c,
GossipMenuItems const &  gso 
)
virtual
535{
536 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
537 if (itr->second->CanTalkTo(player, c, gso))
538 return true;
539
540 return false;
541}

References m_capturePoints.

◆ DeleteSpawns()

void OutdoorPvP::DeleteSpawns ( )
224{
225 // Remove script from any registered gameobjects/creatures
226 for (auto itr = m_GoScriptStore.begin(); itr != m_GoScriptStore.end(); ++itr)
227 {
228 if (GameObject* go = itr->second)
229 go->ClearZoneScript();
230 }
231 m_GoScriptStore.clear();
232
233 for (auto itr = m_CreatureScriptStore.begin(); itr != m_CreatureScriptStore.end(); ++itr)
234 {
235 if (Creature* creature = itr->second)
236 creature->ClearZoneScript();
237 }
238 m_CreatureScriptStore.clear();
239
240 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
241 {
242 itr->second->DeleteSpawns();
243 delete itr->second;
244 }
245 m_capturePoints.clear();
246}
Definition: Creature.h:46
Definition: GameObject.h:122
std::map< ObjectGuid::LowType, Creature * > m_CreatureScriptStore
Definition: OutdoorPvP.h:303
std::map< ObjectGuid::LowType, GameObject * > m_GoScriptStore
Definition: OutdoorPvP.h:302

References m_capturePoints, m_CreatureScriptStore, and m_GoScriptStore.

Referenced by ~OutdoorPvP().

◆ FillInitialWorldStates()

virtual void OutdoorPvP::FillInitialWorldStates ( WorldPacket )
inlinevirtual

◆ GetCapturePoint()

OPvPCapturePoint * OutdoorPvP::GetCapturePoint ( ObjectGuid::LowType  spawnId) const
inlineprotected
287 {
288 OutdoorPvP::OPvPCapturePointMap::const_iterator itr = m_capturePoints.find(spawnId);
289 if (itr != m_capturePoints.end())
290 return itr->second;
291 return nullptr;
292 }

References m_capturePoints.

Referenced by OnGameObjectCreate(), and OnGameObjectRemove().

◆ GetMap()

Map * OutdoorPvP::GetMap ( ) const
inline

◆ GetTypeId()

uint32 OutdoorPvP::GetTypeId ( )
inline
249{return m_TypeId;}

References m_TypeId.

Referenced by Player::SendInitWorldStates().

◆ HandleAreaTrigger()

bool OutdoorPvP::HandleAreaTrigger ( Player player,
uint32  trigger 
)
virtual

Reimplemented in OutdoorPvPSI.

578{
579 return false;
580}

◆ HandleCustomSpell()

bool OutdoorPvP::HandleCustomSpell ( Player player,
uint32  spellId,
GameObject go 
)
virtual

Reimplemented in OutdoorPvPSI.

501{
502 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
503 if (itr->second->HandleCustomSpell(player, spellId, go))
504 return true;
505
506 return false;
507}

References m_capturePoints.

◆ HandleDropFlag()

bool OutdoorPvP::HandleDropFlag ( Player player,
uint32  spellId 
)
virtual

Reimplemented in OutdoorPvPSI.

544{
545 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
546 if (itr->second->HandleDropFlag(player, id))
547 return true;
548
549 return false;
550}

References m_capturePoints.

◆ HandleGossipOption()

bool OutdoorPvP::HandleGossipOption ( Player player,
Creature creature,
uint32  gossipid 
)
virtual
526{
527 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
528 if (itr->second->HandleGossipOption(player, creature, id))
529 return true;
530
531 return false;
532}

References m_capturePoints.

◆ HandleKill()

void OutdoorPvP::HandleKill ( Player killer,
Unit killed 
)
virtual
453{
454 if (Group* group = killer->GetGroup())
455 {
456 for (GroupReference* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next())
457 {
458 Player* groupGuy = itr->GetSource();
459
460 if (!groupGuy)
461 continue;
462
463 // skip if too far away
464 if (!groupGuy->IsAtGroupRewardDistance(killed) && killer != groupGuy)
465 continue;
466
467 // creature kills must be notified, even if not inside objective / not outdoor pvp active
468 // player kills only count if active and inside objective
469 if ((groupGuy->IsOutdoorPvPActive() && IsInsideObjective(groupGuy)) || killed->GetTypeId() == TYPEID_UNIT)
470 {
471 HandleKillImpl(groupGuy, killed);
472 }
473 }
474 }
475 else
476 {
477 // creature kills must be notified, even if not inside objective / not outdoor pvp active
478 if (killer && ((killer->IsOutdoorPvPActive() && IsInsideObjective(killer)) || killed->GetTypeId() == TYPEID_UNIT))
479 {
480 HandleKillImpl(killer, killed);
481 }
482 }
483}
@ TYPEID_UNIT
Definition: ObjectGuid.h:37
TypeID GetTypeId() const
Definition: Object.h:121
bool IsAtGroupRewardDistance(WorldObject const *pRewardSource) const
Definition: Player.cpp:12655
Group * GetGroup()
Definition: Player.h:2418
bool IsOutdoorPvPActive()
Definition: Player.cpp:6304
Definition: Group.h:168
Definition: GroupReference.h:27
GroupReference * next()
Definition: GroupReference.h:36
bool IsInsideObjective(Player *player) const
Definition: OutdoorPvP.cpp:485
virtual void HandleKillImpl(Player *, Unit *)
Definition: OutdoorPvP.h:241

References Player::GetGroup(), Object::GetTypeId(), HandleKillImpl(), Player::IsAtGroupRewardDistance(), IsInsideObjective(), Player::IsOutdoorPvPActive(), GroupReference::next(), and TYPEID_UNIT.

◆ HandleKillImpl()

virtual void OutdoorPvP::HandleKillImpl ( Player ,
Unit  
)
inlinevirtual

Reimplemented in OutdoorPvPHP, OutdoorPvPNA, and OutdoorPvPZM.

241{}

Referenced by HandleKill().

◆ HandleOpenGo()

bool OutdoorPvP::HandleOpenGo ( Player player,
GameObject go 
)
virtual
517{
518 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
519 if (itr->second->HandleOpenGo(player, go) >= 0)
520 return true;
521
522 return false;
523}

References m_capturePoints.

◆ HandlePlayerEnterZone()

void OutdoorPvP::HandlePlayerEnterZone ( Player player,
uint32  zone 
)
protectedvirtual

Reimplemented in OutdoorPvPEP, OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.

256{
257 m_players[player->GetTeamId()].insert(player->GetGUID());
258}
static ObjectGuid GetGUID(Object const *o)
Definition: Object.h:106
TeamId GetTeamId(bool original=false) const
Definition: Player.h:2059

References Object::GetGUID(), Player::GetTeamId(), and m_players.

Referenced by OutdoorPvPEP::HandlePlayerEnterZone(), OutdoorPvPHP::HandlePlayerEnterZone(), OutdoorPvPNA::HandlePlayerEnterZone(), OutdoorPvPSI::HandlePlayerEnterZone(), OutdoorPvPTF::HandlePlayerEnterZone(), and OutdoorPvPZM::HandlePlayerEnterZone().

◆ HandlePlayerLeaveZone()

void OutdoorPvP::HandlePlayerLeaveZone ( Player player,
uint32  zone 
)
protectedvirtual

Reimplemented in OutdoorPvPEP, OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.

261{
262 // inform the objectives of the leaving
263 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
264 itr->second->HandlePlayerLeave(player);
265 // remove the world state information from the player (we can't keep everyone up to date, so leave out those who are not in the concerning zones)
266 if (!player->GetSession()->PlayerLogout())
267 SendRemoveWorldStates(player);
268 m_players[player->GetTeamId()].erase(player->GetGUID());
269 LOG_DEBUG("outdoorpvp", "Player {} left an outdoorpvp zone", player->GetName());
270}
#define LOG_DEBUG(filterType__,...)
Definition: Log.h:171
std::string const & GetName() const
Definition: Object.h:446
WorldSession * GetSession() const
Definition: Player.h:1948
virtual void SendRemoveWorldStates(Player *)
Definition: OutdoorPvP.h:272
bool PlayerLogout() const
Definition: WorldSession.h:336

References Object::GetGUID(), WorldObject::GetName(), Player::GetSession(), Player::GetTeamId(), LOG_DEBUG, m_capturePoints, m_players, WorldSession::PlayerLogout(), and SendRemoveWorldStates().

Referenced by OutdoorPvPEP::HandlePlayerLeaveZone(), OutdoorPvPHP::HandlePlayerLeaveZone(), OutdoorPvPNA::HandlePlayerLeaveZone(), OutdoorPvPSI::HandlePlayerLeaveZone(), OutdoorPvPTF::HandlePlayerLeaveZone(), and OutdoorPvPZM::HandlePlayerLeaveZone().

◆ HandlePlayerResurrects()

void OutdoorPvP::HandlePlayerResurrects ( Player player,
uint32  zone 
)
protectedvirtual
273{
274}

◆ HasPlayer()

bool OutdoorPvP::HasPlayer ( Player const *  player) const
protected
597{
598 PlayerSet const& plSet = m_players[player->GetTeamId()];
599 return plSet.find(player->GetGUID()) != plSet.end();
600}
GuidSet PlayerSet
Definition: OutdoorPvP.h:86

References Object::GetGUID(), Player::GetTeamId(), and m_players.

◆ IsInsideObjective()

bool OutdoorPvP::IsInsideObjective ( Player player) const
486{
487 for (OPvPCapturePointMap::const_iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
488 if (itr->second->IsInsideObjective(player))
489 return true;
490
491 return false;
492}

References m_capturePoints.

Referenced by HandleKill().

◆ OnCreatureCreate()

void OutdoorPvP::OnCreatureCreate ( Creature creature)
overridevirtual

Reimplemented from ZoneScript.

650{
651 CreatureScriptPair sp(creature->GetGUID().GetCounter(), creature);
652 m_CreatureScriptStore.insert(sp);
653}
LowType GetCounter() const
Definition: ObjectGuid.h:147
std::pair< ObjectGuid::LowType, Creature * > CreatureScriptPair
Definition: OutdoorPvP.h:212

References ObjectGuid::GetCounter(), Object::GetGUID(), and m_CreatureScriptStore.

◆ OnCreatureRemove()

void OutdoorPvP::OnCreatureRemove ( Creature creature)
overridevirtual

Reimplemented from ZoneScript.

656{
657 m_CreatureScriptStore.erase(creature->GetGUID().GetCounter());
658}

References ObjectGuid::GetCounter(), Object::GetGUID(), and m_CreatureScriptStore.

◆ OnGameObjectCreate()

void OutdoorPvP::OnGameObjectCreate ( GameObject go)
overridevirtual

Reimplemented from ZoneScript.

627{
628 GoScriptPair sp(go->GetGUID().GetCounter(), go);
629 m_GoScriptStore.insert(sp);
630
632 return;
633
635 cp->m_capturePoint = go;
636}
@ GAMEOBJECT_TYPE_CAPTURE_POINT
Definition: SharedDefines.h:1561
GameobjectTypes GetGoType() const
Definition: GameObject.h:205
ObjectGuid::LowType GetSpawnId() const
Definition: GameObject.h:146
Definition: OutdoorPvP.h:89
OPvPCapturePoint * GetCapturePoint(ObjectGuid::LowType spawnId) const
Definition: OutdoorPvP.h:286
std::pair< ObjectGuid::LowType, GameObject * > GoScriptPair
Definition: OutdoorPvP.h:211

References GAMEOBJECT_TYPE_CAPTURE_POINT, GetCapturePoint(), ObjectGuid::GetCounter(), GameObject::GetGoType(), Object::GetGUID(), GameObject::GetSpawnId(), and m_GoScriptStore.

◆ OnGameObjectRemove()

void OutdoorPvP::OnGameObjectRemove ( GameObject go)
overridevirtual

Reimplemented from ZoneScript.

639{
640 m_GoScriptStore.erase(go->GetGUID().GetCounter());
641
643 return;
644
646 cp->m_capturePoint = nullptr;
647}

References GAMEOBJECT_TYPE_CAPTURE_POINT, GetCapturePoint(), ObjectGuid::GetCounter(), GameObject::GetGoType(), Object::GetGUID(), GameObject::GetSpawnId(), and m_GoScriptStore.

◆ RegisterZone()

void OutdoorPvP::RegisterZone ( uint32  zoneid)
protected

◆ SendRemoveWorldStates()

virtual void OutdoorPvP::SendRemoveWorldStates ( Player )
inlineprotectedvirtual

◆ SendUpdateWorldState()

◆ SetMapFromZone()

void OutdoorPvP::SetMapFromZone ( uint32  zone)
protected
661{
662 AreaTableEntry const* areaTable = sAreaTableStore.LookupEntry(zone);
663 ASSERT(areaTable);
664 Map* map = sMapMgr->CreateBaseMap(areaTable->mapid);
665 ASSERT(!map->Instanceable());
666 m_map = map;
667}
#define ASSERT
Definition: Errors.h:68
DBCStorage< AreaTableEntry > sAreaTableStore(AreaTableEntryfmt)
#define sMapMgr
Definition: MapMgr.h:221
Definition: Map.h:312
bool Instanceable() const
Definition: Map.h:446
Definition: DBCStructure.h:519
uint32 mapid
Definition: DBCStructure.h:521

References ASSERT, Map::Instanceable(), m_map, AreaTableEntry::mapid, sAreaTableStore, and sMapMgr.

Referenced by OutdoorPvPEP::SetupOutdoorPvP(), OutdoorPvPGH::SetupOutdoorPvP(), OutdoorPvPHP::SetupOutdoorPvP(), OutdoorPvPNA::SetupOutdoorPvP(), OutdoorPvPSI::SetupOutdoorPvP(), OutdoorPvPTF::SetupOutdoorPvP(), and OutdoorPvPZM::SetupOutdoorPvP().

◆ SetupOutdoorPvP()

virtual bool OutdoorPvP::SetupOutdoorPvP ( )
inlinevirtual

◆ TeamApplyBuff()

void OutdoorPvP::TeamApplyBuff ( TeamId  teamId,
uint32  spellId,
uint32  spellId2 = 0,
Player sameMapPlr = nullptr 
)
621{
622 TeamCastSpell(teamId, spellId, sameMapPlr);
623 TeamCastSpell(teamId == TEAM_ALLIANCE ? TEAM_HORDE : TEAM_ALLIANCE, spellId2 ? -(int32)spellId2 : -(int32)spellId, sameMapPlr);
624}
std::int32_t int32
Definition: Define.h:104
@ TEAM_ALLIANCE
Definition: SharedDefines.h:732
@ TEAM_HORDE
Definition: SharedDefines.h:733
void TeamCastSpell(TeamId team, int32 spellId, Player *sameMapPlr=nullptr)
Definition: OutdoorPvP.cpp:602

References TEAM_ALLIANCE, TEAM_HORDE, and TeamCastSpell().

Referenced by OPvPCapturePointNA::FactionTakeOver(), OutdoorPvPSI::HandleAreaTrigger(), OPvPCapturePointZM_GraveYard::HandleOpenGo(), OutdoorPvPHP::Update(), and OutdoorPvPTF::Update().

◆ TeamCastSpell()

void OutdoorPvP::TeamCastSpell ( TeamId  team,
int32  spellId,
Player sameMapPlr = nullptr 
)
protected
603{
604 if (spellId > 0)
605 {
606 for (PlayerSet::iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
607 if (Player* const player = ObjectAccessor::FindPlayer(*itr))
608 if (!sameMapPlr || sameMapPlr->FindMap() == player->FindMap())
609 player->CastSpell(player, (uint32)spellId, true);
610 }
611 else
612 {
613 for (PlayerSet::iterator itr = m_players[team].begin(); itr != m_players[team].end(); ++itr)
614 if (Player* const player = ObjectAccessor::FindPlayer(*itr))
615 if (!sameMapPlr || sameMapPlr->FindMap() == player->FindMap())
616 player->RemoveAura((uint32) - spellId); // by stack?
617 }
618}
Map * FindMap() const
Definition: Object.h:518

References WorldObject::FindMap(), ObjectAccessor::FindPlayer(), and m_players.

Referenced by TeamApplyBuff(), OutdoorPvPHP::Update(), and OutdoorPvPTF::Update().

◆ Update()

bool OutdoorPvP::Update ( uint32  diff)
virtual

Reimplemented in OutdoorPvPEP, OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.

277{
278 bool objective_changed = false;
279 for (OPvPCapturePointMap::iterator itr = m_capturePoints.begin(); itr != m_capturePoints.end(); ++itr)
280 {
281 if (itr->second->Update(diff))
282 objective_changed = true;
283 }
284 return objective_changed;
285}

References m_capturePoints.

Referenced by OutdoorPvPEP::Update(), OutdoorPvPHP::Update(), OutdoorPvPTF::Update(), and OutdoorPvPZM::Update().

Friends And Related Function Documentation

◆ OutdoorPvPMgr

friend class OutdoorPvPMgr
friend

Member Data Documentation

◆ m_capturePoints

◆ m_CreatureScriptStore

std::map<ObjectGuid::LowType, Creature*> OutdoorPvP::m_CreatureScriptStore
protected

◆ m_GoScriptStore

std::map<ObjectGuid::LowType, GameObject*> OutdoorPvP::m_GoScriptStore
protected

◆ m_map

Map* OutdoorPvP::m_map
protected

Referenced by GetMap(), and SetMapFromZone().

◆ m_players

◆ m_sendUpdate

bool OutdoorPvP::m_sendUpdate
protected

Referenced by SendUpdateWorldState().

◆ m_TypeId