From c7ea2be1d1dc31cc0d105a723f22e7f10f5e3053 Mon Sep 17 00:00:00 2001 From: VladimirMangos Date: Sun, 23 May 2010 15:24:47 +0400 Subject: [PATCH] [9962] Modify way 4x damage bonus claculated for spell 1120 and ranks. * Now apply 4x bonus dependent from target health in time spell cast, not from current health in tick. * 4x bonus applied to own spell damage value, not to total taken damage. --- src/game/SpellAuras.cpp | 10 ++++++++++ src/game/Unit.cpp | 8 -------- src/shared/revision_nr.h | 2 +- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index cb7b90b1c..64607c7f4 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -4888,6 +4888,16 @@ void Aura::HandlePeriodicDamage(bool apply, bool Real) } break; } + case SPELLFAMILY_WARLOCK: + { + // Drain Soul + if (m_spellProto->SpellFamilyFlags & UI64LIT(0x0000000000004000)) + { + if (m_target->GetHealth() * 100 / m_target->GetMaxHealth() <= 25) + m_modifier.m_amount *= 4; + } + break; + } case SPELLFAMILY_DRUID: { // Rake diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index c65f5f4b5..962414e6a 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -9125,15 +9125,7 @@ uint32 Unit::SpellDamageBonusDone(Unit *pVictim, SpellEntry const *spellProto, u break; } case SPELLFAMILY_WARLOCK: - { - // Drain Soul - if (spellProto->SpellFamilyFlags & UI64LIT(0x0000000000004000)) - { - if (pVictim->GetHealth() * 100 / pVictim->GetMaxHealth() <= 25) - DoneTotalMod *= 4; - } break; - } case SPELLFAMILY_PRIEST: { // Glyph of Smite diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 1a1d651fb..ff8fbf761 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "9961" + #define REVISION_NR "9962" #endif // __REVISION_NR_H__