diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-07-12 12:29:22 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2024-07-12 12:29:22 +0200 |
commit | ec2631eca3a397dffd2e525b34c131c283beb167 (patch) | |
tree | cd3fafd70074bf29af3e507b7e9dbd879fe9a2a4 /src/server/game/Maps/ZoneScript.h | |
parent | 9a7a83ef3074faaad037cfb4c098784695f49d30 (diff) |
Core/Instances: New ZoneScript hook - OnCreatureGroupDepleted
* Triggers when the CreatureGroup no longer has any alive members (either last alive member dies or is removed from the group)
Diffstat (limited to 'src/server/game/Maps/ZoneScript.h')
-rw-r--r-- | src/server/game/Maps/ZoneScript.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/server/game/Maps/ZoneScript.h b/src/server/game/Maps/ZoneScript.h index 3fd9e85aa19..8f37b2a3cf5 100644 --- a/src/server/game/Maps/ZoneScript.h +++ b/src/server/game/Maps/ZoneScript.h @@ -23,6 +23,7 @@ class AreaTrigger; class Creature; +class CreatureGroup; class GameObject; class Player; class Unit; @@ -41,8 +42,12 @@ enum class EncounterType : uint8 class TC_GAME_API ControlZoneHandler { public: - explicit ControlZoneHandler() = default; - virtual ~ControlZoneHandler() = default; + explicit ControlZoneHandler(); + ControlZoneHandler(ControlZoneHandler const& right); + ControlZoneHandler(ControlZoneHandler&& right) noexcept; + ControlZoneHandler& operator=(ControlZoneHandler const& right); + ControlZoneHandler& operator=(ControlZoneHandler&& right) noexcept; + virtual ~ControlZoneHandler(); virtual void HandleCaptureEventHorde([[maybe_unused]] GameObject* controlZone) { } virtual void HandleCaptureEventAlliance([[maybe_unused]] GameObject* controlZone) { } @@ -79,6 +84,9 @@ class TC_GAME_API ZoneScript virtual void OnUnitDeath([[maybe_unused]] Unit* unit) { } + // Triggers when the CreatureGroup no longer has any alive members (either last alive member dies or is removed from the group) + virtual void OnCreatureGroupDepleted([[maybe_unused]] CreatureGroup const* creatureGroup) { } + //All-purpose data storage ObjectGuid virtual ObjectGuid GetGuidData(uint32 /*DataId*/) const { return ObjectGuid::Empty; } virtual void SetGuidData(uint32 /*DataId*/, ObjectGuid /*Value*/) { } |