diff options
| -rw-r--r-- | sql/base/world_database.sql | 2 | ||||
| -rw-r--r-- | sql/updates/world/2011_05_10_03_world_spell_bonus_data.sql | 1 | ||||
| -rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 2 | ||||
| -rwxr-xr-x | src/server/game/Spells/SpellEffects.cpp | 2 |
4 files changed, 6 insertions, 1 deletions
diff --git a/sql/base/world_database.sql b/sql/base/world_database.sql index b2d7abe456a..992a29a95ac 100644 --- a/sql/base/world_database.sql +++ b/sql/base/world_database.sql @@ -17119,7 +17119,7 @@ INSERT INTO `spell_bonus_data` (`entry`,`direct_bonus`,`dot_bonus`,`ap_bonus`,`a (980, -1, 0.1, -1, -1, 'Warlock - Curse of Agony'), (603, -1, 2, -1, -1, 'Warlock - Curse of Doom'), (18220, 0.96, -1, -1, -1, 'Warlock - Dark Pact Rank 1'), -(6789, 0.214, -1, -1, -1, 'Warlock - Death Coil'), +(6789, 0.2143, -1, -1, -1, 'Warlock - Death Coil'), (689, -1, 0.143, -1, -1, 'Warlock - Drain Life'), (5138, 0, 0, 0, 0, 'Warlock - Drain Mana'), (1120, -1, 0.429, -1, -1, 'Warlock - Drain Soul'), diff --git a/sql/updates/world/2011_05_10_03_world_spell_bonus_data.sql b/sql/updates/world/2011_05_10_03_world_spell_bonus_data.sql new file mode 100644 index 00000000000..b5885ef86a0 --- /dev/null +++ b/sql/updates/world/2011_05_10_03_world_spell_bonus_data.sql @@ -0,0 +1 @@ +UPDATE `spell_bonus_data` SET `direct_bonus` = 0.2143 WHERE `entry` = 6789; diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 3d7df3940f5..c3876b6169f 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -11029,6 +11029,8 @@ uint32 Unit::SpellHealingBonus(Unit *pVictim, SpellEntry const *spellProto, uint scripted = true; break; } + if (spellProto->Effect[i] == SPELL_EFFECT_HEALTH_LEECH) + scripted = true; } // Check for table values diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index eb0e5588db7..237b347c62a 100755 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -2354,6 +2354,8 @@ void Spell::EffectHealthLeech(SpellEffIndex effIndex) if (!unitTarget || !unitTarget->isAlive() || damage < 0) return; + damage = m_caster->SpellDamageBonus(unitTarget, m_spellInfo, uint32(damage), SPELL_DIRECT_DAMAGE); + sLog->outDebug(LOG_FILTER_SPELLS_AURAS, "HealthLeech :%i", damage); float healMultiplier = SpellMgr::CalculateSpellEffectValueMultiplier(m_spellInfo, effIndex, m_originalCaster, this); |
