diff options
Diffstat (limited to 'src/server/game/Spells/Spell.cpp')
| -rw-r--r-- | src/server/game/Spells/Spell.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index de711cbf0a9..2e7c93c9d80 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -584,6 +584,7 @@ m_caster((info->HasAttribute(SPELL_ATTR6_CAST_BY_CHARMER) && caster->GetCharmerO damage = 0; targetMissInfo = SPELL_MISS_NONE; effectHandleMode = SPELL_EFFECT_HANDLE_LAUNCH; + effectInfo = nullptr; m_damage = 0; m_healing = 0; m_procAttacker = 0; @@ -5081,6 +5082,7 @@ void Spell::HandleEffects(Unit* pUnitTarget, Item* pItemTarget, GameObject* pGoT gameObjTarget = pGoTarget; m_corpseTarget = pCorpseTarget; destTarget = &m_destTargets[spellEffectInfo.EffectIndex]._position; + effectInfo = &spellEffectInfo; // we do not need DamageMultiplier here. damage = CalculateDamage(spellEffectInfo); @@ -5088,7 +5090,7 @@ void Spell::HandleEffects(Unit* pUnitTarget, Item* pItemTarget, GameObject* pGoT bool preventDefault = CallScriptEffectHandlers(spellEffectInfo.EffectIndex, mode); if (!preventDefault) - (this->*SpellEffectHandlers[spellEffectInfo.Effect])(spellEffectInfo.EffectIndex); + (this->*SpellEffectHandlers[spellEffectInfo.Effect])(); } SpellCastResult Spell::CheckCast(bool strict, uint32* param1 /*= nullptr*/, uint32* param2 /*= nullptr*/) |
