aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/AI/CreatureAI.h
diff options
context:
space:
mode:
authoroffl <11556157+offl@users.noreply.github.com>2022-02-18 19:14:44 +0200
committerShauren <shauren.trinity@gmail.com>2022-03-26 15:15:46 +0100
commit050f55b62fded4cc73b76e42d56d98ea950cc26a (patch)
treec68bc4d938bd6b5298986dfeac578f4ba6d6028c /src/server/game/AI/CreatureAI.h
parentbb18bd47e52dc4d53623496e42d9cef96f819468 (diff)
Core/AI: OnSpellCast, OnSpellFailed, OnSpellStart hooks (#27704)
(cherry picked from commit 3dca705acc953d20e4a43d4c2b3c97a84e5ab346)
Diffstat (limited to 'src/server/game/AI/CreatureAI.h')
-rw-r--r--src/server/game/AI/CreatureAI.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/server/game/AI/CreatureAI.h b/src/server/game/AI/CreatureAI.h
index 54b5d8c15af..041b27b6889 100644
--- a/src/server/game/AI/CreatureAI.h
+++ b/src/server/game/AI/CreatureAI.h
@@ -33,7 +33,6 @@ class PlayerAI;
class WorldObject;
struct Position;
enum class QuestGiverStatus : uint32;
-enum SpellFinishReason : uint8;
typedef std::vector<AreaBoundary const*> CreatureBoundary;
@@ -140,8 +139,17 @@ class TC_GAME_API CreatureAI : public UnitAI
// Called when spell hits a target
virtual void SpellHitTarget(WorldObject* /*target*/, SpellInfo const* /*spellInfo*/) { }
- // Called when a spell either finishes, interrupts or cancels a spell cast
- virtual void OnSpellCastFinished(SpellInfo const* /*spell*/, SpellFinishReason /*reason*/) { }
+ // Called when a spell finishes
+ virtual void OnSpellCast(SpellInfo const* /*spell*/) { }
+
+ // Called when a spell fails
+ virtual void OnSpellFailed(SpellInfo const* /*spell*/) { }
+
+ // Called when a spell starts
+ virtual void OnSpellStart(SpellInfo const* /*spell*/) { }
+
+ // Called when a channeled spell finishes
+ virtual void OnChannelFinished(SpellInfo const* /*spell*/) { }
// Should return true if the NPC is currently being escorted
virtual bool IsEscorted() const { return false; }