1670 {
1672
1674 if (!healInfo)
1675 return;
1676
1678
1680 {
1681
1682 absorb += protEff->GetAmount();
1683
1684
1685 if (absorb > 20000)
1686 absorb = 200000;
1687
1688 protEff->SetAmount(absorb);
1689
1690
1691 protEff->GetBase()->RefreshDuration();
1692 }
1693 else
1695 }
std::int32_t int32
Definition Define.h:103
@ SPELLVALUE_BASE_POINT0
Definition SpellDefines.h:113
T CalculatePct(T base, U pct)
Definition Util.h:52
Definition SpellAuraEffects.h:39
void PreventDefaultAction()
Definition SpellScript.cpp:1000
Unit * GetTarget() const
Definition SpellScript.cpp:1180
uint32 GetHeal() const
Definition Unit.h:429
HealInfo * GetHealInfo() const
Definition Unit.h:470
SpellCastResult CastCustomSpell(Unit *victim, uint32 spellId, int32 const *bp0, int32 const *bp1, int32 const *bp2, bool triggered, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition Unit.cpp:1446
AuraEffect * GetAuraEffect(uint32 spellId, uint8 effIndex, ObjectGuid casterGUID=ObjectGuid::Empty) const
Definition Unit.cpp:5790
@ SPELL_PROTECTION_OF_ANCIENT_KINGS
Definition spell_item.cpp:1652