aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/Spell.cpp
diff options
context:
space:
mode:
authorOvah <dreadkiller@gmx.de>2020-04-25 15:54:08 -0300
committerKeader <keader.android@gmail.com>2020-04-25 16:07:18 -0300
commitf1e4ee21f8da41c71f4cbafaa85e89c6275c1db2 (patch)
treeceafcc118375267a14fb381654147cfd4e1a9b27 /src/server/game/Spells/Spell.cpp
parent7c91c423d05aabc18d5c36af9ecc2a9c5f49970d (diff)
Core/AI: Implemented OnSpellCastInterrupt and OnSuccessfulSpellCast hooks
Ported from: 020825902c066cee532f1b9a24205c196da2662d and 1aa42e97a81e285fa34316ad9cfe9657865e3c35
Diffstat (limited to 'src/server/game/Spells/Spell.cpp')
-rw-r--r--src/server/game/Spells/Spell.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index 52c634cc05a..5a75f6a0388 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -3454,6 +3454,11 @@ void Spell::_cast(bool skipCheck)
hitMask |= PROC_HIT_NORMAL;
Unit::ProcSkillsAndAuras(m_originalCaster, nullptr, procAttacker, PROC_FLAG_NONE, PROC_SPELL_TYPE_MASK_ALL, PROC_SPELL_PHASE_CAST, hitMask, this, nullptr, nullptr);
+
+ // Call CreatureAI hook OnSuccessfulSpellCast
+ if (Creature* caster = m_originalCaster->ToCreature())
+ if (caster->IsAIEnabled())
+ caster->AI()->OnSuccessfulSpellCast(GetSpellInfo());
}
template <class Container>