![]() |
TrinityCore
|
#include <OutdoorPvP.h>
Inheritance diagram for OutdoorPvP:Public Types | |
| typedef std::map< ObjectGuid::LowType, std::unique_ptr< OPvPCapturePoint > > | OPvPCapturePointMap |
| typedef std::unordered_map< uint32, std::unique_ptr< OutdoorPvPControlZoneHandler > > | ControlZoneHandlerMap |
Public Member Functions | |
| OutdoorPvP (Map *map) | |
| OutdoorPvP (OutdoorPvP const &right)=delete | |
| OutdoorPvP (OutdoorPvP &&right)=delete | |
| OutdoorPvP & | operator= (OutdoorPvP const &right)=delete |
| OutdoorPvP & | operator= (OutdoorPvP &&right)=delete |
| virtual | ~OutdoorPvP () |
| virtual bool | HandleAreaTrigger (Player *, uint32, bool) |
| virtual bool | HandleCustomSpell (Player *player, uint32 spellId, GameObject *go) |
| virtual bool | HandleOpenGo (Player *player, GameObject *go) |
| virtual bool | SetupOutdoorPvP () |
| void | OnCreatureCreate (Creature *) override |
| int32 | GetWorldState (int32 worldStateId) const |
| void | SetWorldState (int32 worldStateId, int32 value) |
| virtual void | Update (uint32 diff) |
| virtual void | HandleKill (Player *killer, Unit *killed) |
| virtual void | HandleKillImpl (Player *, Unit *) |
| virtual void | AwardKillBonus (Player *) |
| uint32 | GetTypeId () const |
| virtual bool | HandleDropFlag (Player *player, uint32 spellId) |
| void | TeamApplyBuff (TeamId team, uint32 spellId, uint32 spellId2=0) |
| void | SendDefenseMessage (uint32 zoneId, uint32 id) |
| Map * | GetMap () const |
| void | ProcessEvent (WorldObject *target, uint32 eventId, WorldObject *invoker) override |
Public Member Functions inherited from ZoneScript | |
| ZoneScript () noexcept | |
| ZoneScript (ZoneScript const &right) | |
| ZoneScript (ZoneScript &&right) noexcept | |
| ZoneScript & | operator= (ZoneScript const &right) |
| ZoneScript & | operator= (ZoneScript &&right) noexcept |
| virtual | ~ZoneScript () |
| virtual uint32 | GetCreatureEntry (ObjectGuid::LowType, CreatureData const *data) |
| virtual uint32 | GetGameObjectEntry (ObjectGuid::LowType, uint32 entry) |
| virtual void | OnCreatureRemove (Creature *) |
| virtual void | OnGameObjectCreate (GameObject *) |
| virtual void | OnGameObjectRemove (GameObject *) |
| virtual void | OnAreaTriggerCreate (AreaTrigger *areaTrigger) |
| virtual void | OnAreaTriggerRemove (AreaTrigger *areaTrigger) |
| virtual void | OnUnitDeath (Unit *unit) |
| virtual void | OnCreatureGroupDepleted (CreatureGroup const *creatureGroup) |
| 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 | TriggerGameEvent (uint32 gameEventId, WorldObject *source=nullptr, WorldObject *target=nullptr) |
| virtual void | DoAction (uint32 actionId, WorldObject *source=nullptr, WorldObject *target=nullptr) |
| virtual void | OnFlagStateChange (GameObject *flagInBase, FlagState oldValue, FlagState newValue, Player *player) |
| virtual bool | CanCaptureFlag (AreaTrigger *areaTrigger, Player *player) |
| virtual void | OnCaptureFlag (AreaTrigger *areaTrigger, Player *player) |
| virtual void | OnFlagTaken (GameObject *flag, Player *player) |
| virtual void | OnFlagDropped (ObjectGuid const &flagGuid, Player *player) |
Static Public Member Functions | |
| static TeamId | GetTeamIdByTeam (uint32 team) |
Protected Member Functions | |
| virtual void | SendRemoveWorldStates (Player *) |
| void | BroadcastPacket (WorldPacket const *data) const |
| virtual void | HandlePlayerEnterZone (Player *player, uint32 zone) |
| virtual void | HandlePlayerLeaveZone (Player *player, uint32 zone) |
| virtual void | HandlePlayerResurrects (Player *player, uint32 zone) |
| void | RegisterZone (uint32 zoneid) |
| bool | HasPlayer (Player const *player) const |
| void | TeamCastSpell (TeamId team, int32 spellId) |
| template<class Worker > | |
| void | BroadcastWorker (Worker &_worker, uint32 zoneId) |
Protected Attributes | |
| OPvPCapturePointMap | m_capturePoints |
| ControlZoneHandlerMap | ControlZoneHandlers |
| GuidSet | m_players [2] |
| uint32 | m_TypeId |
| Map * | m_map |
Friends | |
| class | OutdoorPvPMgr |
Definition at line 127 of file OutdoorPvP.h.
| typedef std::unordered_map<uint32 , std::unique_ptr<OutdoorPvPControlZoneHandler> > OutdoorPvP::ControlZoneHandlerMap |
Definition at line 144 of file OutdoorPvP.h.
| typedef std::map<ObjectGuid::LowType, std::unique_ptr<OPvPCapturePoint> > OutdoorPvP::OPvPCapturePointMap |
Definition at line 143 of file OutdoorPvP.h.
|
explicit |
Definition at line 60 of file OutdoorPvP.cpp.
|
delete |
|
delete |
|
virtualdefault |
|
inlinevirtual |
Definition at line 172 of file OutdoorPvP.h.
|
protected |
Definition at line 161 of file OutdoorPvP.cpp.
References ObjectAccessor::FindPlayer(), m_players, PVP_TEAMS_COUNT, and Player::SendDirectMessage().
|
protected |
Definition at line 245 of file OutdoorPvP.cpp.
References ObjectAccessor::FindPlayer(), m_players, and PVP_TEAMS_COUNT.
Referenced by SendDefenseMessage().
|
inline |
Definition at line 195 of file OutdoorPvP.h.
Referenced by OutdoorPvPMgr::AddZone(), OPvPCapturePointNA::FactionTakeOver(), OPvPCapturePointNA::GetAliveGuardsCount(), OutdoorPvPTF::HandleCapture(), OutdoorPvPHP::HandleKillImpl(), OPvPCapturePointNA::Update(), and OutdoorPvPTF::Update().
Definition at line 180 of file OutdoorPvP.h.
References ALLIANCE, HORDE, TEAM_ALLIANCE, TEAM_HORDE, and TEAM_NEUTRAL.
|
inline |
Definition at line 174 of file OutdoorPvP.h.
Definition at line 86 of file OutdoorPvP.cpp.
References WorldStateMgr::GetValue(), and m_map.
Referenced by npc_zm_field_scout::CanObtainBanner(), and OutdoorPvPSI::HandleAreaTrigger().
Reimplemented in OutdoorPvPSI.
Definition at line 147 of file OutdoorPvP.h.
|
virtual |
Reimplemented in OutdoorPvPSI.
Definition at line 122 of file OutdoorPvP.cpp.
References m_capturePoints.
Reimplemented in OutdoorPvPSI.
Definition at line 147 of file OutdoorPvP.cpp.
References m_capturePoints.
Definition at line 96 of file OutdoorPvP.cpp.
References Player::GetGroup(), BaseEntity::GetTypeId(), HandleKillImpl(), Player::IsAtGroupRewardDistance(), Player::IsOutdoorPvPActive(), and TYPEID_UNIT.
Reimplemented in OutdoorPvPHP, OutdoorPvPNA, and OutdoorPvPZM.
Definition at line 169 of file OutdoorPvP.h.
Referenced by HandleKill().
|
virtual |
Definition at line 138 of file OutdoorPvP.cpp.
References m_capturePoints.
Reimplemented in OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.
Definition at line 64 of file OutdoorPvP.cpp.
References BaseEntity::GetGUID(), Player::GetTeamId(), and m_players.
Referenced by OutdoorPvPMgr::HandlePlayerEnterZone(), OutdoorPvPHP::HandlePlayerEnterZone(), OutdoorPvPNA::HandlePlayerEnterZone(), OutdoorPvPSI::HandlePlayerEnterZone(), OutdoorPvPTF::HandlePlayerEnterZone(), and OutdoorPvPZM::HandlePlayerEnterZone().
Reimplemented in OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.
Definition at line 69 of file OutdoorPvP.cpp.
References BaseEntity::GetGUID(), WorldObject::GetName(), Player::GetSession(), Player::GetTeamId(), m_players, WorldSession::PlayerLogout(), SendRemoveWorldStates(), and TC_LOG_DEBUG.
Referenced by OutdoorPvPHP::HandlePlayerLeaveZone(), OutdoorPvPNA::HandlePlayerLeaveZone(), OutdoorPvPSI::HandlePlayerLeaveZone(), OutdoorPvPTF::HandlePlayerLeaveZone(), and OutdoorPvPZM::HandlePlayerLeaveZone().
Definition at line 78 of file OutdoorPvP.cpp.
|
protected |
Definition at line 175 of file OutdoorPvP.cpp.
References BaseEntity::GetGUID(), Player::GetTeamId(), and m_players.
|
inlineoverridevirtual |
Reimplemented from ZoneScript.
Definition at line 158 of file OutdoorPvP.h.
|
delete |
|
delete |
|
overridevirtual |
Reimplemented from ZoneScript.
Reimplemented in OutdoorPvPTF.
Definition at line 210 of file OutdoorPvP.cpp.
References ControlZoneHandlers, GAMEOBJECT_TYPE_CONTROL_ZONE, ControlZoneHandler::HandleCaptureEventAlliance(), ControlZoneHandler::HandleCaptureEventHorde(), ControlZoneHandler::HandleContestedEventAlliance(), ControlZoneHandler::HandleContestedEventHorde(), ControlZoneHandler::HandleNeutralEventAlliance(), ControlZoneHandler::HandleNeutralEventHorde(), ControlZoneHandler::HandleProgressEventAlliance(), ControlZoneHandler::HandleProgressEventHorde(), and Object::ToGameObject().
Referenced by OutdoorPvPTF::ProcessEvent().
|
protected |
Definition at line 170 of file OutdoorPvP.cpp.
References sOutdoorPvPMgr.
Referenced by OutdoorPvPHP::SetupOutdoorPvP(), OutdoorPvPNA::SetupOutdoorPvP(), OutdoorPvPSI::SetupOutdoorPvP(), OutdoorPvPTF::SetupOutdoorPvP(), and OutdoorPvPZM::SetupOutdoorPvP().
Definition at line 203 of file OutdoorPvP.cpp.
References BroadcastWorker().
Referenced by OPvPCapturePointNA::FactionTakeOver(), TFControlZoneHandler::HandleNeutralEventAlliance(), TFControlZoneHandler::HandleNeutralEventHorde(), OPvPCapturePointZM_Graveyard::HandleOpenGo(), HPControlZoneHandler::HandleProgressEventAlliance(), TFControlZoneHandler::HandleProgressEventAlliance(), ZMControlZoneHandler::HandleProgressEventAlliance(), HPControlZoneHandler::HandleProgressEventHorde(), TFControlZoneHandler::HandleProgressEventHorde(), and ZMControlZoneHandler::HandleProgressEventHorde().
|
inlineprotectedvirtual |
Reimplemented in OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.
Definition at line 211 of file OutdoorPvP.h.
Referenced by HandlePlayerLeaveZone().
|
inlinevirtual |
Reimplemented in OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.
Definition at line 156 of file OutdoorPvP.h.
Referenced by OutdoorPvPMgr::CreateOutdoorPvPForMap().
Definition at line 91 of file OutdoorPvP.cpp.
References m_map, and WorldStateMgr::SetValue().
Referenced by OPvPCapturePointNA::FactionTakeOver(), OutdoorPvPSI::HandleAreaTrigger(), OutdoorPvPTF::HandleCapture(), ZMControlZoneHandler::HandleNeutralEvent(), ZMControlZoneHandler::HandleProgressEventAlliance(), ZMControlZoneHandler::HandleProgressEventHorde(), OutdoorPvPTF::ProcessEvent(), OutdoorPvPNA::SendMapWorldStates(), OutdoorPvPSI::SetupOutdoorPvP(), OutdoorPvPHP::Update(), OPvPCapturePointNA::Update(), OutdoorPvPTF::Update(), OPvPCapturePointZM_Graveyard::UpdateTowerState(), and OPvPCapturePointNA::UpdateWyvernRoostWorldState().
Definition at line 197 of file OutdoorPvP.cpp.
References OTHER_TEAM, and TeamCastSpell().
Referenced by OPvPCapturePointNA::FactionTakeOver(), OutdoorPvPSI::HandleAreaTrigger(), OutdoorPvPTF::HandleCapture(), OPvPCapturePointZM_Graveyard::HandleOpenGo(), and OutdoorPvPHP::Update().
Definition at line 181 of file OutdoorPvP.cpp.
References ObjectAccessor::FindPlayer(), and m_players.
Referenced by OutdoorPvPTF::ProcessEvent(), TeamApplyBuff(), and OutdoorPvPHP::Update().
|
virtual |
Reimplemented in OutdoorPvPHP, OutdoorPvPNA, OutdoorPvPSI, OutdoorPvPTF, and OutdoorPvPZM.
Definition at line 80 of file OutdoorPvP.cpp.
References m_capturePoints.
Referenced by OutdoorPvPMgr::Update(), OutdoorPvPHP::Update(), OutdoorPvPTF::Update(), and OutdoorPvPZM::Update().
|
friend |
Definition at line 129 of file OutdoorPvP.h.
|
protected |
Definition at line 204 of file OutdoorPvP.h.
Referenced by OutdoorPvPHP::GetControlZoneTowerNorthHandler(), OutdoorPvPHP::GetControlZoneTowerSouthHandler(), OutdoorPvPHP::GetControlZoneTowerWestHandler(), OutdoorPvPHP::OutdoorPvPHP(), OutdoorPvPNA::OutdoorPvPNA(), OutdoorPvPTF::OutdoorPvPTF(), OutdoorPvPZM::OutdoorPvPZM(), ProcessEvent(), OutdoorPvPHP::SendRemoveWorldStates(), OutdoorPvPTF::SendRemoveWorldStates(), and OutdoorPvPZM::SendRemoveWorldStates().
|
protected |
Definition at line 202 of file OutdoorPvP.h.
Referenced by HandleCustomSpell(), HandleDropFlag(), HandleOpenGo(), and Update().
|
protected |
Definition at line 229 of file OutdoorPvP.h.
Referenced by GetWorldState(), OutdoorPvPSI::HandleAreaTrigger(), and SetWorldState().
|
protected |
Definition at line 206 of file OutdoorPvP.h.
Referenced by BroadcastPacket(), BroadcastWorker(), HandlePlayerEnterZone(), HandlePlayerLeaveZone(), HasPlayer(), and TeamCastSpell().
|
protected |
Definition at line 208 of file OutdoorPvP.h.
Referenced by OutdoorPvPHP::OutdoorPvPHP(), OutdoorPvPNA::OutdoorPvPNA(), OutdoorPvPSI::OutdoorPvPSI(), OutdoorPvPTF::OutdoorPvPTF(), and OutdoorPvPZM::OutdoorPvPZM().