From f12e733024508ffb9e44ed5514dd5e75e42f4b76 Mon Sep 17 00:00:00 2001 From: Ovahlord Date: Sat, 4 Aug 2018 22:03:05 +0200 Subject: [PATCH] Core/Spells: Divine Aegis absorb amount will now stack only up to 40% of the target's maximum health Closes #11 --- src/server/scripts/Spells/spell_priest.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/server/scripts/Spells/spell_priest.cpp b/src/server/scripts/Spells/spell_priest.cpp index 38715237ea0..30269f21586 100644 --- a/src/server/scripts/Spells/spell_priest.cpp +++ b/src/server/scripts/Spells/spell_priest.cpp @@ -295,7 +295,7 @@ class spell_pri_divine_aegis : public SpellScriptLoader if (AuraEffect const* aegis = eventInfo.GetProcTarget()->GetAuraEffect(SPELL_PRIEST_DIVINE_AEGIS, EFFECT_0)) absorb += aegis->GetAmount(); - absorb = std::min(absorb, eventInfo.GetProcTarget()->getLevel() * 125); + absorb = std::min(absorb, int32(CalculatePct(eventInfo.GetProcTarget()->GetMaxHealth(), 40))); GetTarget()->CastCustomSpell(SPELL_PRIEST_DIVINE_AEGIS, SPELLVALUE_BASE_POINT0, absorb, eventInfo.GetProcTarget(), true, nullptr, aurEff); }