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
 
ZoneScriptoperator= (ZoneScript const &right)
 
ZoneScriptoperator= (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
BattlegroundMapbattlegroundMap
 
Battlegroundbattleground
 

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

Definition at line 250 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CanCaptureFlag()

bool battleground_warsong_gulch::CanCaptureFlag ( AreaTrigger areaTrigger,
Player player 
)
inlineoverridevirtual

Reimplemented from ZoneScript.

Definition at line 478 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DoForFlagKeepers()

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

Definition at line 231 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetFlagCarrierGUID()

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

Definition at line 287 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetFlagState()

FlagState battleground_warsong_gulch::GetFlagState ( TeamId  team) const
inline

Definition at line 279 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetPrematureWinner()

Team battleground_warsong_gulch::GetPrematureWinner ( )
inlineoverridevirtual

Reimplemented from BattlegroundScript.

Definition at line 576 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:

◆ HandleFlagRoomCapturePoint()

void battleground_warsong_gulch::HandleFlagRoomCapturePoint ( )
inline

Definition at line 295 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ OnAreaTriggerCreate()

void battleground_warsong_gulch::OnAreaTriggerCreate ( AreaTrigger areaTrigger)
inlineoverridevirtual

Reimplemented from ZoneScript.

Definition at line 368 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:

◆ OnCaptureFlag()

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

Reimplemented from ZoneScript.

Definition at line 498 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ OnEnd()

void battleground_warsong_gulch::OnEnd ( Team  winner)
inlineoverridevirtual

Reimplemented from BattlegroundScript.

Definition at line 216 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:

◆ OnFlagStateChange()

void battleground_warsong_gulch::OnFlagStateChange ( GameObject flagInBase,
FlagState  oldValue,
FlagState  newValue,
Player player 
)
inlineoverridevirtual

Reimplemented from ZoneScript.

Definition at line 387 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:

◆ OnGameObjectCreate()

void battleground_warsong_gulch::OnGameObjectCreate ( GameObject gameObject)
inlineoverridevirtual

Reimplemented from ZoneScript.

Definition at line 344 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:

◆ OnStart()

void battleground_warsong_gulch::OnStart ( )
inlineoverridevirtual

Reimplemented from BattlegroundScript.

Definition at line 197 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:

◆ OnUpdate()

void battleground_warsong_gulch::OnUpdate ( uint32  diff)
inlineoverridevirtual

Reimplemented from BattlegroundScript.

Definition at line 151 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:

◆ RemoveAssaultDebuffFromPlayer()

void battleground_warsong_gulch::RemoveAssaultDebuffFromPlayer ( Player player) const
inline

Definition at line 273 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ResetAssaultDebuff()

void battleground_warsong_gulch::ResetAssaultDebuff ( )
inline

Definition at line 239 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetLastFlagCapture()

void battleground_warsong_gulch::SetLastFlagCapture ( Team  team)
inline

Definition at line 586 of file battleground_warsong_gulch.cpp.

+ Here is the caller graph for this function:

◆ UpdateFlagState()

void battleground_warsong_gulch::UpdateFlagState ( uint32  team,
FlagState  value 
) const
inline

Definition at line 307 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ UpdateTeamScore()

void battleground_warsong_gulch::UpdateTeamScore ( TeamId  team) const
inline

Definition at line 336 of file battleground_warsong_gulch.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ _assaultStackCount

uint8 battleground_warsong_gulch::_assaultStackCount
private

Definition at line 598 of file battleground_warsong_gulch.cpp.

◆ _bothFlagsKept

bool battleground_warsong_gulch::_bothFlagsKept
private

Definition at line 593 of file battleground_warsong_gulch.cpp.

◆ _capturePointAreaTriggers

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

Definition at line 599 of file battleground_warsong_gulch.cpp.

◆ _doors

GuidSet battleground_warsong_gulch::_doors
private

Definition at line 594 of file battleground_warsong_gulch.cpp.

◆ _flagAssaultTimer

TimeTracker battleground_warsong_gulch::_flagAssaultTimer
private

Definition at line 597 of file battleground_warsong_gulch.cpp.

◆ _flags

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

Definition at line 595 of file battleground_warsong_gulch.cpp.

◆ _honorEndKills

uint32 battleground_warsong_gulch::_honorEndKills
private

Definition at line 602 of file battleground_warsong_gulch.cpp.

◆ _honorWinKills

uint32 battleground_warsong_gulch::_honorWinKills
private

Definition at line 601 of file battleground_warsong_gulch.cpp.

◆ _lastFlagCaptureTeam

Team battleground_warsong_gulch::_lastFlagCaptureTeam
private

Definition at line 592 of file battleground_warsong_gulch.cpp.

◆ _reputationCapture

uint32 battleground_warsong_gulch::_reputationCapture
private

Definition at line 603 of file battleground_warsong_gulch.cpp.

◆ FLAG_ASSAULT_TIMER

constexpr Seconds battleground_warsong_gulch::FLAG_ASSAULT_TIMER = 30s
staticconstexpr

Definition at line 33 of file battleground_warsong_gulch.cpp.

◆ 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.


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