diff options
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 8 | ||||
-rwxr-xr-x | src/server/game/Spells/SpellEffects.cpp | 4 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 91d9f32eb9b..93740a637d3 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -10655,6 +10655,14 @@ uint32 Unit::SpellDamageBonus(Unit* victim, SpellEntry const* spellProto, uint32 if (victim->GetAuraEffect(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_PRIEST, 0x100000, 0, 0, GetGUID())) AddPctN(DoneTotalMod, aurEff->GetAmount()); } + // Shadow Word: Death + else if (spellProto->SpellFamilyFlags[1] & 0x2) + { + // Glyph of Shadow Word: Death + if (AuraEffect* aurEff = GetAuraEffect(55682, 1)) + if (victim->HasAuraState(AURA_STATE_HEALTHLESS_35_PERCENT)) + AddPctN(DoneTotalMod, aurEff->GetAmount()); + } break; case SPELLFAMILY_PALADIN: // Judgement of Vengeance/Judgement of Corruption diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 5eb0a440f8e..9fc8d6cb6dc 100755 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -558,11 +558,11 @@ void Spell::SpellDamageSchoolDmg(SpellEffIndex effIndex) case SPELLFAMILY_PRIEST: { // Shadow Word: Death - deals damage equal to damage done to caster - if ((m_spellInfo->SpellFamilyFlags[1] & 0x2)) + if (m_spellInfo->SpellFamilyFlags[1] & 0x2) { int32 back_damage = m_caster->SpellDamageBonus(unitTarget, m_spellInfo, (uint32)damage, SPELL_DIRECT_DAMAGE); // Pain and Suffering reduces damage - if (AuraEffect * aurEff = m_caster->GetDummyAuraEffect(SPELLFAMILY_PRIEST, 2874, 0)) + if (AuraEffect* aurEff = m_caster->GetDummyAuraEffect(SPELLFAMILY_PRIEST, 2874, 0)) AddPctN(back_damage, -aurEff->GetAmount()); if (back_damage < int32(unitTarget->GetHealth())) |