From f7cc04e9dd71a00d4aa79654a93060871af2d154 Mon Sep 17 00:00:00 2001 From: megamage Date: Fri, 3 Apr 2009 16:33:25 -0600 Subject: [PATCH] [7606] Fix use % power burn in effects Author: Lutik --HG-- branch : trunk --- src/game/SpellEffects.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index ac408381a83..051b4f1775c 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -2468,6 +2468,14 @@ void Spell::EffectPowerBurn(uint32 i) Unit* caster = m_originalCaster ? m_originalCaster : m_caster; + // burn x% of target's mana, up to maximum of 2x% of caster's mana (Mana Burn) + if(m_spellInfo->ManaCostPercentage) + { + uint32 maxdamage = m_caster->GetMaxPower(powertype) * damage * 2 / 100; + damage = unitTarget->GetMaxPower(powertype) * damage / 100; + if(damage > maxdamage) damage = maxdamage; + } + int32 curPower = int32(unitTarget->GetPower(powertype)); uint32 power = damage;