18#ifndef __BATTLEGROUNDEY_H
19#define __BATTLEGROUNDEY_H
119#define BG_EY_NotEYWeekendHonorTicks 260
120#define BG_EY_EYWeekendHonorTicks 160
181 uint32 worldStateAllianceStatusBarIcon,
uint32 worldStateHordeStatusBarIcon)
270 void Reset()
override;
@ BG_EY_FLAG_STATE_ON_PLAYER
@ BG_EY_FLAG_STATE_ON_BASE
@ BG_EY_FLAG_STATE_ON_GROUND
@ BG_EY_FLAG_STATE_WAIT_RESPAWN
const std::array< BattlegroundEYPointIconsStruct, EY_POINTS_MAX > m_PointsIconStruct
const std::array< uint32, EY_POINTS_MAX > BG_EY_FlagPoints
@ BG_EY_WARNING_NEAR_VICTORY_SCORE
const std::array< uint8, EY_POINTS_MAX > BG_EY_TickPoints
static constexpr Seconds BG_EY_FLAG_ASSAULT_TIMER
@ BLOOD_ELF_HORDE_CONTROL
@ DRAENEI_RUINS_HORDE_CONTROL_STATE
@ NETHERSTORM_FLAG_STATE_ALLIANCE
@ FEL_REAVER_ALLIANCE_CONTROL_STATE
@ MAGE_TOWER_ALLIANCE_CONTROL
@ MAGE_TOWER_HORDE_CONTROL_STATE
@ FEL_REAVER_ALLIANCE_CONTROL
@ DRAENEI_RUINS_UNCONTROL
@ NETHERSTORM_FLAG_STATE_HORDE
@ DRAENEI_RUINS_ALLIANCE_CONTROL
@ DRAENEI_RUINS_ALLIANCE_CONTROL_STATE
@ BLOOD_ELF_ALLIANCE_CONTROL_STATE
@ BLOOD_ELF_ALLIANCE_CONTROL
@ DRAENEI_RUINS_HORDE_CONTROL
@ MAGE_TOWER_HORDE_CONTROL
@ PROGRESS_BAR_PERCENT_GREY
@ MAGE_TOWER_ALLIANCE_CONTROL_STATE
@ FEL_REAVER_HORDE_CONTROL_STATE
@ FEL_REAVER_HORDE_CONTROL
@ BLOOD_ELF_HORDE_CONTROL_STATE
@ EY_PLAYERS_OUT_OF_POINTS
BG_EY_ExploitTeleportLocations
@ EY_EXPLOIT_TELEPORT_LOCATION_ALLIANCE
@ EY_EXPLOIT_TELEPORT_LOCATION_HORDE
static constexpr Seconds POINTS_TICK_TIME
@ BG_EY_TEXT_HORDE_LOST_BLOOD_ELF_TOWER
@ BG_EY_TEXT_ALLIANCE_TAKEN_MAGE_TOWER
@ BG_EY_TEXT_HORDE_LOST_FEL_REAVER_RUINS
@ BG_EY_TEXT_ALLIANCE_TAKEN_FEL_REAVER_RUINS
@ BG_EY_TEXT_ALLIANCE_LOST_MAGE_TOWER
@ BG_EY_TEXT_HORDE_LOST_DRAENEI_RUINS
@ BG_EY_TEXT_HORDE_LOST_MAGE_TOWER
@ BG_EY_TEXT_HORDE_TAKEN_DRAENEI_RUINS
@ BG_EY_TEXT_HORDE_TAKEN_MAGE_TOWER
@ BG_EY_TEXT_ALLIANCE_TAKEN_BLOOD_ELF_TOWER
@ BG_EY_TEXT_ALLIANCE_CAPTURED_FLAG
@ BG_EY_TEXT_ALLIANCE_TAKEN_DRAENEI_RUINS
@ BG_EY_TEXT_FLAG_DROPPED
@ BG_EY_TEXT_HORDE_TAKEN_FEL_REAVER_RUINS
@ BG_EY_TEXT_HORDE_TAKEN_BLOOD_ELF_TOWER
@ BG_EY_TEXT_HORDE_CAPTURED_FLAG
@ BG_EY_TEXT_ALLIANCE_LOST_BLOOD_ELF_TOWER
@ BG_EY_TEXT_ALLIANCE_LOST_FEL_REAVER_RUINS
@ BG_EY_TEXT_ALLIANCE_LOST_DRAENEI_RUINS
const std::array< BattlegroundEYCapturingPointStruct, EY_POINTS_MAX > m_CapturingPointTypes
@ BG_EY_EVENT_START_BATTLE
EYBattlegroundObjectEntry
@ BG_OBJECT_HU_TOWER_CAP_EY_ENTRY
@ BG_OBJECT_BE_TOWER_CAP_EY_ENTRY
@ BG_OBJECT_FLAG2_EY_ENTRY
@ BG_OBJECT_FR_TOWER_CAP_EY_ENTRY
@ BG_OBJECT_A_DOOR_EY_ENTRY
@ BG_OBJECT_H_DOOR_EY_ENTRY
@ BG_OBJECT_DR_TOWER_CAP_EY_ENTRY
const std::array< BattlegroundEYLosingPointStruct, EY_POINTS_MAX > m_LosingPointTypes
EYBattlegroundPointsTrigger
@ AREATRIGGER_CAPTURE_FLAG
@ EY_POINT_STATE_UNCONTROLLED
@ BG_EY_SOUND_FLAG_PICKED_UP_ALLIANCE
@ BG_EY_SOUND_FLAG_CAPTURED_HORDE
@ BG_EY_SOUND_FLAG_PICKED_UP_HORDE
@ BG_EY_SOUND_FLAG_CAPTURED_ALLIANCE
@ BG_EY_BRUTAL_ASSAULT_SPELL
@ BG_EY_NETHERSTORM_FLAG_SPELL
@ BG_EY_PLAYER_DROPPED_FLAG_SPELL
@ BG_EY_FOCUSED_ASSAULT_SPELL
static constexpr uint16 BG_EY_FLAG_BRUTAL_ASSAULT_STACK_COUNT
std::chrono::seconds Seconds
Seconds shorthand typedef.
std::unordered_set< ObjectGuid > GuidUnorderedSet
void HandleProgressEventAlliance(GameObject *controlZone) override
void HandleProgressEventHorde(GameObject *controlZone) override
void HandleNeutralEventHorde(GameObject *controlZone) override
BattlegroundEY * _battleground
BattlegroundEYControlZoneHandler(BattlegroundEY *bg, uint32 point)
void HandleNeutralEventAlliance(GameObject *controlZone) override
uint32 m_FlagCapturedBgObjectType
void RemovePoint(Team team, uint32 Points=1)
void AddPoints(Team team, uint32 Points)
bool CanCaptureFlag(AreaTrigger *areaTrigger, Player *player) override
GuidUnorderedSet _doorGUIDs
void DoForFlagKeepers(std::function< void(Player *)> action) const
void EndBattleground(Team winner) override
uint8 GetControlledBaseCount(TeamId teamId) const
void HandleKillPlayer(Player *player, Player *killer) override
bool SetupBattleground() override
WorldSafeLocsEntry const * GetExploitTeleportLocation(Team team) override
std::unordered_map< uint32, std::unique_ptr< BattlegroundEYControlZoneHandler > > _controlZoneHandlers
void ResetAssaultDebuff()
void StartingEventOpenDoors() override
void OnGameObjectCreate(GameObject *gameObject) override
void RemoveAssaultDebuffFromPlayer(Player *player)
void ApplyAssaultDebuffToPlayer(Player *player)
uint16 _assaultStackCount
TimeTracker _flagAssaultTimer
void PostUpdateImpl(uint32 diff) override
Post-update hook.
void EventTeamCapturedPoint(TeamId teamId, uint32 point, GameObject *controlZone)
std::array< uint32, PVP_TEAMS_COUNT > m_HonorScoreTics
void SetTeamPoint(Team team, uint32 Points=0)
void UpdatePointsCount(TeamId teamId)
void UpdateTeamScore(TeamId Team)
void ProcessEvent(WorldObject *target, uint32 eventId, WorldObject *invoker) override
Team GetPrematureWinner() override
BattlegroundEY(BattlegroundTemplate const *battlegroundTemplate)
void EventTeamLostPoint(TeamId teamId, uint32 point, GameObject *controlZone)
void OnFlagStateChange(GameObject *flagInBase, FlagState oldValue, FlagState newValue, Player *player) override
void OnCaptureFlag(AreaTrigger *areaTrigger, Player *player) override
int32 m_TeamScores[PVP_TEAMS_COUNT]
static TeamId GetTeamIndexByTeamId(Team team)
BattlegroundEYCapturingPointStruct(uint32 _MessageIdAlliance, uint32 _MessageIdHorde)
BattlegroundEYLosingPointStruct(uint32 _MessageIdAlliance, uint32 _MessageIdHorde)
BattlegroundEYPointIconsStruct(uint32 _WorldStateControlIndex, uint32 _WorldStateAllianceControlledIndex, uint32 _WorldStateHordeControlledIndex, uint32 worldStateAllianceStatusBarIcon, uint32 worldStateHordeStatusBarIcon)
uint32 WorldStateHordeControlledIndex
uint32 WorldStateAllianceControlledIndex
uint32 WorldStateHordeStatusBarIcon
uint32 WorldStateControlIndex
uint32 WorldStateAllianceStatusBarIcon