45 defenseMessage->
Data.MessageText = text;
46 defenseMessage->
Data.Write();
47 return defenseMessage;
83 itr->second->Update(diff);
102 Player* groupGuy = itr.GetSource();
125 if (itr->second->HandleCustomSpell(player, spellId, go))
141 if (itr->second->HandleOpenGo(player, go) >= 0)
150 if (itr->second->HandleDropFlag(player,
id))
165 for (GuidSet::const_iterator itr =
m_players[team].begin(); itr !=
m_players[team].end(); ++itr)
178 return plSet.find(player->
GetGUID()) != plSet.end();
185 for (GuidSet::iterator itr =
m_players[team].begin(); itr !=
m_players[team].end(); ++itr)
187 player->CastSpell(player, (
uint32)spellId,
true);
191 for (GuidSet::iterator itr =
m_players[team].begin(); itr !=
m_players[team].end(); ++itr)
193 player->RemoveAura((
uint32)-spellId);
221 auto controlzone = gameobject->GetGOInfo()->controlZone;
223 if (eventId == controlzone.CaptureEventAlliance)
225 else if (eventId == controlzone.CaptureEventHorde)
227 else if (eventId == controlzone.ContestedEventAlliance)
229 else if (eventId == controlzone.ContestedEventHorde)
231 else if (eventId == controlzone.NeutralEventAlliance)
233 else if (eventId == controlzone.NeutralEventHorde)
235 else if (eventId == controlzone.ProgressEventAlliance)
237 else if (eventId == controlzone.ProgressEventHorde)
244template<
class Worker>
250 if (player->GetZoneId() == zoneId)
#define TC_LOG_DEBUG(filterType__, message__,...)
std::set< ObjectGuid > GuidSet
@ GAMEOBJECT_TYPE_CONTROL_ZONE
uint8 constexpr PVP_TEAMS_COUNT
ObjectGuid const & GetGUID() const
virtual void HandleNeutralEventHorde(GameObject *controlZone)
virtual void HandleProgressEventAlliance(GameObject *controlZone)
virtual void HandleContestedEventAlliance(GameObject *controlZone)
virtual void HandleNeutralEventAlliance(GameObject *controlZone)
virtual void HandleCaptureEventHorde(GameObject *controlZone)
virtual void HandleProgressEventHorde(GameObject *controlZone)
virtual void HandleContestedEventHorde(GameObject *controlZone)
virtual void HandleCaptureEventAlliance(GameObject *controlZone)
Trinity::PacketSenderOwning< WorldPackets::Chat::DefenseMessage > * operator()(LocaleConstant locale) const
DefenseMessageBuilder(uint32 zoneId, uint32 id)
uint32 _id
BroadcastTextId.
OPvPCapturePoint(OutdoorPvP *pvp)
virtual bool HandleCustomSpell(Player *player, uint32 spellId, GameObject *go)
virtual int32 HandleOpenGo(Player *player, GameObject *go)
GameObject * ToGameObject()
virtual void HandlePlayerEnterZone(Player *player, uint32 zone)
OPvPCapturePointMap m_capturePoints
bool HasPlayer(Player const *player) const
virtual void Update(uint32 diff)
int32 GetWorldState(int32 worldStateId) const
void TeamApplyBuff(TeamId team, uint32 spellId, uint32 spellId2=0)
void RegisterZone(uint32 zoneid)
virtual void SendRemoveWorldStates(Player *)
void SetWorldState(int32 worldStateId, int32 value)
virtual bool HandleCustomSpell(Player *player, uint32 spellId, GameObject *go)
virtual void HandlePlayerLeaveZone(Player *player, uint32 zone)
virtual bool HandleOpenGo(Player *player, GameObject *go)
void TeamCastSpell(TeamId team, int32 spellId)
virtual void HandlePlayerResurrects(Player *player, uint32 zone)
ControlZoneHandlerMap ControlZoneHandlers
virtual void HandleKillImpl(Player *, Unit *)
void ProcessEvent(WorldObject *target, uint32 eventId, WorldObject *invoker) override
void BroadcastWorker(Worker &_worker, uint32 zoneId)
void SendDefenseMessage(uint32 zoneId, uint32 id)
virtual void HandleKill(Player *killer, Unit *killed)
virtual bool HandleDropFlag(Player *player, uint32 spellId)
void BroadcastPacket(WorldPacket const *data) const
void SendDirectMessage(WorldPacket const *data) const
bool IsAtGroupRewardDistance(WorldObject const *pRewardSource) const
WorldSession * GetSession() const
Group * GetGroup(Optional< uint8 > partyIndex)
bool IsOutdoorPvPActive() const
std::string const & GetName() const
bool PlayerLogout() const
TC_GAME_API Player * FindPlayer(ObjectGuid const &)
TC_GAME_API void SetValue(int32 worldStateId, int32 value, bool hidden, Map *map)
TC_GAME_API int32 GetValue(int32 worldStateId, Map const *map)