diff options
author | John Holiver <none@none> | 2010-05-26 14:54:56 -0300 |
---|---|---|
committer | John Holiver <none@none> | 2010-05-26 14:54:56 -0300 |
commit | ff7308f754455843b36a76457245f0f31bf769b7 (patch) | |
tree | f439d7aac16816530b79d93fe079dad98d7b65ce | |
parent | 3cd4626dacddf9ba34473f2dac511ea0c07bd048 (diff) |
Re-re-fix for Life Tap (3.3.3).
I hope that this one is the last.
Each rank now use diferent spell power gains (0, 0.2, 0.5).
--HG--
branch : trunk
-rw-r--r-- | src/game/SpellEffects.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index f38715a9359..4f0c693efbb 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -1630,8 +1630,16 @@ void Spell::EffectDummy(uint32 i) // Life Tap if (m_spellInfo->SpellFamilyFlags[0] & SPELLFAMILYFLAG_WARLOCK_LIFETAP) { - int32 damage = m_spellInfo->EffectBasePoints[0] + (6 * m_spellInfo->baseLevel); - int32 mana = damage + (m_caster->ToPlayer()->GetUInt32Value(PLAYER_FIELD_MOD_DAMAGE_DONE_POS+SPELL_SCHOOL_SHADOW) / 2); + float spFactor = 0; + switch (m_spellInfo->Id) + { + case 11689: spFactor = 0.2; break; + case 27222: + case 57946: spFactor = 0.5; break; + default: spFactor = 0; break; + } + int32 damage = m_spellInfo->EffectBasePoints[0] + (6.3875 * m_spellInfo->baseLevel); + int32 mana = damage + (m_caster->ToPlayer()->GetUInt32Value(PLAYER_FIELD_MOD_DAMAGE_DONE_POS+SPELL_SCHOOL_SHADOW) * spFactor); if (unitTarget && (int32(unitTarget->GetHealth()) > damage)) { |