diff options
Diffstat (limited to 'src/game/Spell.cpp')
-rw-r--r-- | src/game/Spell.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index c97e35f1396..0c53ec763c5 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -3242,6 +3242,12 @@ void Spell::TakePower() { if(ihit->missCondition != SPELL_MISS_NONE && ihit->missCondition != SPELL_MISS_MISS/* && ihit->targetGUID!=m_caster->GetGUID()*/) hit = false; + if (ihit->missCondition != SPELL_MISS_NONE) + { + //lower spell cost on fail (by talent aura) + if(Player *modOwner = ((Player*)m_caster)->GetSpellModOwner()) + modOwner->ApplySpellMod(m_spellInfo->Id, SPELLMOD_SPELL_COST_REFUND_ON_FAIL, m_powerCost); + } break; } if(hit && NeedsComboPoints(m_spellInfo)) |