TrinityCore
Loading...
Searching...
No Matches
battleground_warsong_gulch Struct Reference
+ Inheritance diagram for battleground_warsong_gulch:

Public Types

enum  Misc { MAX_TEAM_SCORE = 3 , FLAG_BRUTAL_ASSAULT_STACK_COUNT = 5 }
 
enum  Spells : uint32 {
  SPELL_FOCUSED_ASSAULT = 46392 , SPELL_BRUTAL_ASSAULT = 46393 , SPELL_CAPTURED_ALLIANCE_COSMETIC_FX = 262508 , SPELL_CAPTURED_HORDE_COSMETIC_FX = 262512 ,
  SPELL_WARSONG_FLAG = 23333 , SPELL_WARSONG_FLAG_DROPPED = 23334 , SPELL_SILVERWING_FLAG = 23335 , SPELL_SILVERWING_FLAG_DROPPED = 23336 ,
  SPELL_QUICK_CAP_TIMER = 183317
}
 
enum  AreaTriggers : uint32 { AT_CAPTURE_POINT_ALLIANCE = 30 , AT_CAPTURE_POINT_HORDE = 31 }
 
enum  Events : uint32 { EVENT_START_BATTLE = 35912 }
 
enum  PvpStats : uint32 { PVP_STAT_FLAG_CAPTURES = 928 , PVP_STAT_FLAG_RETURNS = 929 }
 
enum  WorldStates : int32 {
  WORLD_STATE_FLAG_STATE_ALLIANCE = 1545 , WORLD_STATE_FLAG_STATE_HORDE = 1546 , WORLD_STATE_FLAG_STATE_NEUTRAL = 1547 , WORLD_STATE_HORDE_FLAG_COUNT_PICKED_UP = 17712 ,
  WORLD_STATE_ALLIANCE_FLAG_COUNT_PICKED_UP = 17713 , WORLD_STATE_FLAG_CAPTURES_ALLIANCE = 1581 , WORLD_STATE_FLAG_CAPTURES_HORDE = 1582 , WORLD_STATE_FLAG_CAPTURES_MAX = 1601 ,
  WORLD_STATE_FLAG_CAPTURES_MAX_NEW = 17303 , WORLD_STATE_FLAG_CONTROL_HORDE = 2338 , WORLD_STATE_FLAG_CONTROL_ALLIANCE = 2339 , WORLD_STATE_STATE_TIMER = 4248 ,
  WORLD_STATE_STATE_TIMER_ACTIVE = 4247
}
 
enum  Texts {
  TEXT_START_ONE_MINUTE = 10015 , TEXT_START_HALF_MINUTE = 10016 , TEXT_BATTLE_HAS_BEGUN = 10014 , TEXT_CAPTURED_HORDE_FLAG = 9801 ,
  TEXT_CAPTURED_ALLIANCE_FLAG = 9802 , TEXT_FLAGS_PLACED = 9803 , TEXT_ALLIANCE_FLAG_PICKED_UP = 9804 , TEXT_ALLIANCE_FLAG_DROPPED = 9805 ,
  TEXT_HORDE_FLAG_PICKED_UP = 9807 , TEXT_HORDE_FLAG_DROPPED = 9806 , TEXT_ALLIANCE_FLAG_RETURNED = 9808 , TEXT_HORDE_FLAG_RETURNED = 9809
}
 
enum  Sounds {
  SOUND_FLAG_CAPTURED_ALLIANCE = 8173 , SOUND_FLAG_CAPTURED_HORDE = 8213 , SOUND_FLAG_PLACED = 8232 , SOUND_FLAG_RETURNED = 8192 ,
  SOUND_HORDE_FLAG_PICKED_UP = 8212 , SOUND_ALLIANCE_FLAG_PICKED_UP = 8174 , SOUND_FLAGS_RESPAWNED = 8232
}
 
enum  GameObjects {
  OBJECT_ALLIANCE_DOOR = 309704 , OBJECT_PORTCULLIS_009 = 309705 , OBJECT_PORTCULLIS_002 = 309883 , OBJECT_COLLISION_PC_SIZE = 242273 ,
  OBJECT_HORDE_GATE_1 = 352709 , OBJECT_HORDE_GATE_2 = 352710 , OBJECT_ALLIANCE_FLAG_IN_BASE = 227741 , OBJECT_HORDE_FLAG_IN_BASE = 227740
}
 

Public Member Functions

 battleground_warsong_gulch (BattlegroundMap *map)
 
void OnUpdate (uint32 diff) override
 
void OnStart () override
 
void OnEnd (Team winner) override
 
template<std::invocable< Player * > Action>
void DoForFlagKeepers (Action const &action) const
 
void ResetAssaultDebuff ()
 
void ApplyAssaultDebuffToPlayer (Player *player) const
 
void RemoveAssaultDebuffFromPlayer (Player *player) const
 
FlagState GetFlagState (TeamId team) const
 
ObjectGuid const & GetFlagCarrierGUID (TeamId team) const
 
void HandleFlagRoomCapturePoint ()
 
void UpdateFlagState (uint32 team, FlagState value) const
 
void UpdateTeamScore (TeamId team) const
 
void OnGameObjectCreate (GameObject *gameObject) override
 
void OnAreaTriggerCreate (AreaTrigger *areaTrigger) override
 
void OnFlagStateChange (GameObject *flagInBase, FlagState oldValue, FlagState newValue, Player *player) override
 
bool CanCaptureFlag (AreaTrigger *areaTrigger, Player *player) override
 
void OnCaptureFlag (AreaTrigger *areaTrigger, Player *player) override
 
Team GetPrematureWinner () override
 
void SetLastFlagCapture (Team team)
 
- Public Member Functions inherited from BattlegroundScript
 BattlegroundScript (BattlegroundMap *map) noexcept
 
 ~BattlegroundScript () override=default
 
virtual void OnInit ()
 
virtual void OnPrepareStage1 ()
 
virtual void OnPrepareStage2 ()
 
virtual void OnPrepareStage3 ()
 
virtual void OnPlayerJoined (Player *player, bool inBattleground)
 
virtual void OnPlayerLeft (Player *player)
 
virtual void OnPlayerKilled (Player *victim, Player *killer)
 
virtual void OnUnitKilled (Creature *victim, Unit *killer)
 
void TriggerGameEvent (uint32 gameEventId, WorldObject *source=nullptr, WorldObject *target=nullptr) 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 OnCreatureCreate (Creature *)
 
virtual void OnCreatureRemove (Creature *)
 
virtual void OnGameObjectRemove (GameObject *)
 
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 ProcessEvent (WorldObject *obj, uint32 eventId, WorldObject *invoker)
 
virtual void DoAction (uint32 actionId, WorldObject *source=nullptr, WorldObject *target=nullptr)
 
virtual void OnFlagTaken (GameObject *flag, Player *player)
 
virtual void OnFlagDropped (ObjectGuid const &flagGuid, Player *player)
 

Static Public Attributes

static constexpr Seconds FLAG_ASSAULT_TIMER = 30s
 
static constexpr std::array< std::array< uint32, 3 >, 2 > HONOR_REWARDS
 

Private Attributes

Team _lastFlagCaptureTeam
 
bool _bothFlagsKept
 
GuidSet _doors
 
std::array< ObjectGuid, PVP_TEAMS_COUNT > _flags
 
TimeTracker _flagAssaultTimer
 
uint8 _assaultStackCount
 
std::array< ObjectGuid, PVP_TEAMS_COUNT > _capturePointAreaTriggers
 
uint32 _honorWinKills
 
uint32 _honorEndKills
 
uint32 _reputationCapture
 

Additional Inherited Members

- Protected Member Functions inherited from BattlegroundScript
void UpdateWorldState (int32 worldStateId, int32 value, bool hidden=false) const
 
- Protected Attributes inherited from BattlegroundScript
BattlegroundMap * battlegroundMap
 
Battleground * battleground
 

Detailed Description

Definition at line 31 of file battleground_warsong_gulch.cpp.

Member Enumeration Documentation

◆ AreaTriggers

Enumerator
AT_CAPTURE_POINT_ALLIANCE 
AT_CAPTURE_POINT_HORDE 

Definition at line 54 of file battleground_warsong_gulch.cpp.

◆ Events

Enumerator
EVENT_START_BATTLE 

Definition at line 60 of file battleground_warsong_gulch.cpp.

◆ GameObjects

Enumerator
OBJECT_ALLIANCE_DOOR 
OBJECT_PORTCULLIS_009 
OBJECT_PORTCULLIS_002 
OBJECT_COLLISION_PC_SIZE 
OBJECT_HORDE_GATE_1 
OBJECT_HORDE_GATE_2 
OBJECT_ALLIANCE_FLAG_IN_BASE 
OBJECT_HORDE_FLAG_IN_BASE 

Definition at line 115 of file battleground_warsong_gulch.cpp.

◆ Misc

Enumerator
MAX_TEAM_SCORE 
FLAG_BRUTAL_ASSAULT_STACK_COUNT 

Definition at line 35 of file battleground_warsong_gulch.cpp.

◆ PvpStats

Enumerator
PVP_STAT_FLAG_CAPTURES 
PVP_STAT_FLAG_RETURNS 

Definition at line 65 of file battleground_warsong_gulch.cpp.

◆ Sounds

Enumerator
SOUND_FLAG_CAPTURED_ALLIANCE 
SOUND_FLAG_CAPTURED_HORDE 
SOUND_FLAG_PLACED 
SOUND_FLAG_RETURNED 
SOUND_HORDE_FLAG_PICKED_UP 
SOUND_ALLIANCE_FLAG_PICKED_UP 
SOUND_FLAGS_RESPAWNED 

Definition at line 104 of file battleground_warsong_gulch.cpp.

◆ Spells

Enumerator
SPELL_FOCUSED_ASSAULT 
SPELL_BRUTAL_ASSAULT 
SPELL_CAPTURED_ALLIANCE_COSMETIC_FX 
SPELL_CAPTURED_HORDE_COSMETIC_FX 
SPELL_WARSONG_FLAG 
SPELL_WARSONG_FLAG_DROPPED 
SPELL_SILVERWING_FLAG 
SPELL_SILVERWING_FLAG_DROPPED 
SPELL_QUICK_CAP_TIMER 

Definition at line 41 of file battleground_warsong_gulch.cpp.

◆ Texts

Enumerator
TEXT_START_ONE_MINUTE 
TEXT_START_HALF_MINUTE 
TEXT_BATTLE_HAS_BEGUN 
TEXT_CAPTURED_HORDE_FLAG 
TEXT_CAPTURED_ALLIANCE_FLAG 
TEXT_FLAGS_PLACED 
TEXT_ALLIANCE_FLAG_PICKED_UP 
TEXT_ALLIANCE_FLAG_DROPPED 
TEXT_HORDE_FLAG_PICKED_UP 
TEXT_HORDE_FLAG_DROPPED 
TEXT_ALLIANCE_FLAG_RETURNED 
TEXT_HORDE_FLAG_RETURNED 

Definition at line 88 of file battleground_warsong_gulch.cpp.

◆ WorldStates

Enumerator
WORLD_STATE_FLAG_STATE_ALLIANCE 
WORLD_STATE_FLAG_STATE_HORDE 
WORLD_STATE_FLAG_STATE_NEUTRAL 
WORLD_STATE_HORDE_FLAG_COUNT_PICKED_UP 
WORLD_STATE_ALLIANCE_FLAG_COUNT_PICKED_UP 
WORLD_STATE_FLAG_CAPTURES_ALLIANCE 
WORLD_STATE_FLAG_CAPTURES_HORDE 
WORLD_STATE_FLAG_CAPTURES_MAX 
WORLD_STATE_FLAG_CAPTURES_MAX_NEW 
WORLD_STATE_FLAG_CONTROL_HORDE 
WORLD_STATE_FLAG_CONTROL_ALLIANCE 
WORLD_STATE_STATE_TIMER 
WORLD_STATE_STATE_TIMER_ACTIVE 

Definition at line 71 of file battleground_warsong_gulch.cpp.

Constructor & Destructor Documentation

◆ battleground_warsong_gulch()

battleground_warsong_gulch::battleground_warsong_gulch ( BattlegroundMap *  map)
inlineexplicit

Definition at line 133 of file battleground_warsong_gulch.cpp.

Member Function Documentation

◆ ApplyAssaultDebuffToPlayer()

void battleground_warsong_gulch::ApplyAssaultDebuffToPlayer ( Player *  player) const
inline

◆ CanCaptureFlag()

◆ DoForFlagKeepers()

template<std::invocable< Player * > Action>
void battleground_warsong_gulch::DoForFlagKeepers ( Action const &  action) const
inline

◆ GetFlagCarrierGUID()

ObjectGuid const & battleground_warsong_gulch::GetFlagCarrierGUID ( TeamId  team) const
inline

◆ GetFlagState()

FlagState battleground_warsong_gulch::GetFlagState ( TeamId  team) const
inline

◆ GetPrematureWinner()

Team battleground_warsong_gulch::GetPrematureWinner ( )
inlineoverridevirtual

◆ HandleFlagRoomCapturePoint()

◆ OnAreaTriggerCreate()

void battleground_warsong_gulch::OnAreaTriggerCreate ( AreaTrigger *  areaTrigger)
inlineoverridevirtual

◆ OnCaptureFlag()

void battleground_warsong_gulch::OnCaptureFlag ( AreaTrigger *  areaTrigger,
Player *  player 
)
inlineoverridevirtual

◆ OnEnd()

void battleground_warsong_gulch::OnEnd ( Team  winner)
inlineoverridevirtual

◆ OnFlagStateChange()

◆ OnGameObjectCreate()

◆ OnStart()

◆ OnUpdate()

◆ RemoveAssaultDebuffFromPlayer()

void battleground_warsong_gulch::RemoveAssaultDebuffFromPlayer ( Player *  player) const
inline

◆ ResetAssaultDebuff()

void battleground_warsong_gulch::ResetAssaultDebuff ( )
inline

◆ SetLastFlagCapture()

void battleground_warsong_gulch::SetLastFlagCapture ( Team  team)
inline

Definition at line 586 of file battleground_warsong_gulch.cpp.

References _lastFlagCaptureTeam.

Referenced by OnCaptureFlag().

◆ UpdateFlagState()

◆ UpdateTeamScore()

Member Data Documentation

◆ _assaultStackCount

uint8 battleground_warsong_gulch::_assaultStackCount
private

◆ _bothFlagsKept

bool battleground_warsong_gulch::_bothFlagsKept
private

Definition at line 593 of file battleground_warsong_gulch.cpp.

Referenced by OnFlagStateChange(), OnUpdate(), and ResetAssaultDebuff().

◆ _capturePointAreaTriggers

std::array<ObjectGuid, PVP_TEAMS_COUNT> battleground_warsong_gulch::_capturePointAreaTriggers
private

◆ _doors

GuidSet battleground_warsong_gulch::_doors
private

Definition at line 594 of file battleground_warsong_gulch.cpp.

Referenced by OnGameObjectCreate(), and OnStart().

◆ _flagAssaultTimer

TimeTracker battleground_warsong_gulch::_flagAssaultTimer
private

Definition at line 597 of file battleground_warsong_gulch.cpp.

Referenced by OnUpdate(), and ResetAssaultDebuff().

◆ _flags

std::array<ObjectGuid, PVP_TEAMS_COUNT> battleground_warsong_gulch::_flags
private

◆ _honorEndKills

uint32 battleground_warsong_gulch::_honorEndKills
private

Definition at line 602 of file battleground_warsong_gulch.cpp.

Referenced by OnEnd().

◆ _honorWinKills

uint32 battleground_warsong_gulch::_honorWinKills
private

Definition at line 601 of file battleground_warsong_gulch.cpp.

Referenced by OnEnd().

◆ _lastFlagCaptureTeam

Team battleground_warsong_gulch::_lastFlagCaptureTeam
private

Definition at line 592 of file battleground_warsong_gulch.cpp.

Referenced by OnUpdate(), and SetLastFlagCapture().

◆ _reputationCapture

uint32 battleground_warsong_gulch::_reputationCapture
private

Definition at line 603 of file battleground_warsong_gulch.cpp.

Referenced by OnCaptureFlag().

◆ FLAG_ASSAULT_TIMER

constexpr Seconds battleground_warsong_gulch::FLAG_ASSAULT_TIMER = 30s
staticconstexpr

Definition at line 33 of file battleground_warsong_gulch.cpp.

Referenced by OnUpdate(), and ResetAssaultDebuff().

◆ HONOR_REWARDS

constexpr std::array<std::array<uint32, 3>, 2> battleground_warsong_gulch::HONOR_REWARDS
staticconstexpr
Initial value:
=
{{
{ 20, 40, 40 },
{ 60, 40, 80 }
}}

Definition at line 127 of file battleground_warsong_gulch.cpp.

Referenced by OnCaptureFlag().


The documentation for this struct was generated from the following file: