diff options
author | mik1893 <michele.roscelli@gmail.com> | 2015-07-15 18:21:43 +0200 |
---|---|---|
committer | mik1893 <michele.roscelli@gmail.com> | 2015-07-15 18:21:43 +0200 |
commit | 35f0d8e9c1e89c3095c82e0dd89d9f8f08f288a3 (patch) | |
tree | a73e5ddcbb1ee0dfbb5a729c5f0c4766a4148dca /src | |
parent | d81f15759b29157354ef447a29e43bb665faff75 (diff) | |
parent | 07df574b432c641c37691b43d199daa4f69b2602 (diff) |
Merge pull request #14883 from tkrokli/omen_of_clarity
[3.3.5] Core/Spells: Avoid losing spell mod auras when check on spellcast fails
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 30c02db9150..a5901e1d2e1 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -2901,6 +2901,14 @@ void Spell::prepare(SpellCastTargets const* targets, AuraEffect const* triggered triggeredByAura->GetBase()->SetDuration(0); } + if (m_caster->GetTypeId() == TYPEID_PLAYER) + { + m_caster->ToPlayer()->RestoreSpellMods(this); + // cleanup after mod system + // triggered spell pointer can be not removed in some cases + m_caster->ToPlayer()->SetSpellModTakingSpell(this, false); + } + SendCastResult(result); finish(false); |