diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index f87548d18..f37d493ec 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -1345,7 +1345,7 @@ void Unit::CalculateSpellDamageTaken(SpellNonMeleeDamage* damageInfo, int32 dama } int32 cleanDamage = 0; - if (Unit::IsDamageReducedByArmor(damageSchoolMask, spellInfo)) + if (!spellInfo->HasAttribute(SPELL_ATTR4_IGNORE_DAMAGE_TAKEN_MODIFIERS) && Unit::IsDamageReducedByArmor(damageSchoolMask, spellInfo)) { int32 oldDamage = damage; damage = Unit::CalcArmorReducedDamage(this, victim, damage, spellInfo, 0, attackType); diff --git a/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp b/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp index 7076ab750..c57bc427e 100644 --- a/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp +++ b/src/server/scripts/Northrend/Naxxramas/boss_gluth.cpp @@ -256,7 +256,7 @@ class spell_gluth_decimate : public SpellScript return; } - GetCaster()->CastSpell(unitTarget, SPELL_DECIMATE_DAMAGE); + GetCaster()->CastSpell(unitTarget, SPELL_DECIMATE_DAMAGE, true); } } @@ -271,7 +271,7 @@ class spell_gluth_decimate_damage : public SpellScript { PrepareSpellScript(spell_gluth_decimate_damage) - void RecalculateDamage() + void HandleDamage(SpellEffIndex /*effIndex*/) { Unit* target = GetHitUnit(); if (!target) @@ -291,7 +291,7 @@ class spell_gluth_decimate_damage : public SpellScript void Register() override { - OnHit += SpellHitFn(spell_gluth_decimate_damage::RecalculateDamage); + OnEffectHitTarget += SpellEffectFn(spell_gluth_decimate_damage::HandleDamage, EFFECT_0, SPELL_EFFECT_SCHOOL_DAMAGE); } };