diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-07-12 12:29:22 +0200 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2024-07-14 19:02:57 +0200 |
commit | cdfe0f21f720d189e8c8dd680b6b0327548cff1b (patch) | |
tree | 973b805fd038cfdac0230b51cee807e7478dafe4 /src/server/game/Maps/ZoneScript.h | |
parent | db2d4c484baa07bdd9456b46cb1adb8dee9f2d78 (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)
(cherry picked from commit ec2631eca3a397dffd2e525b34c131c283beb167)
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*/) { } |