From 530631e0a73c0bcd540f063cef975ecd827307b2 Mon Sep 17 00:00:00 2001 From: Matan Shukry Date: Sat, 17 Apr 2021 23:42:34 +0300 Subject: Core/Auras: Implemented SPELL_AURA_SCHOOL_ABSORB_OVERKILL (#26269) --- src/server/scripts/Spells/spell_priest.cpp | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'src/server/scripts/Spells') diff --git a/src/server/scripts/Spells/spell_priest.cpp b/src/server/scripts/Spells/spell_priest.cpp index 7e377f496a8..8a0995098af 100644 --- a/src/server/scripts/Spells/spell_priest.cpp +++ b/src/server/scripts/Spells/spell_priest.cpp @@ -759,22 +759,18 @@ class spell_priest_spirit_of_redemption : public AuraScript return ValidateSpellInfo({ SPELL_PRIEST_SPIRIT_OF_REDEMPTION }); } - void HandleAbsorb(AuraEffect* aurEff, DamageInfo& dmgInfo, uint32& /*absorbAmount*/) + void HandleAbsorb(AuraEffect* aurEff, DamageInfo& dmgInfo, uint32& absorbAmount) { Unit* target = GetTarget(); - if (dmgInfo.GetDamage() >= target->GetHealth()) - { - target->CastSpell(target, SPELL_PRIEST_SPIRIT_OF_REDEMPTION, aurEff); - target->SetFullHealth(); - return; - } + target->CastSpell(target, SPELL_PRIEST_SPIRIT_OF_REDEMPTION, aurEff); + target->SetFullHealth(); - PreventDefaultAction(); + absorbAmount = dmgInfo.GetDamage(); } void Register() override { - OnEffectAbsorb += AuraEffectAbsorbFn(spell_priest_spirit_of_redemption::HandleAbsorb, EFFECT_0); + OnEffectAbsorb += AuraEffectAbsorbOverkillFn(spell_priest_spirit_of_redemption::HandleAbsorb, EFFECT_0); } }; -- cgit v1.2.3