358 {
362
364 {
365
367
369
370
372 float pctFromDefense = (defenseSkillValue >= reqDefForMaxHeal)
373 ? 1.0f
374 : float(defenseSkillValue) / float(reqDefForMaxHeal);
375
378 }
379 else if (remainingHealth <
int32(allowedHealth))
380 {
381
384 : allowedHealth - remainingHealth;
386 }
387 }
std::int32_t int32
Definition Define.h:103
std::uint32_t uint32
Definition Define.h:107
@ SPELLVALUE_BASE_POINT0
Definition SpellDefines.h:113
T CalculatePct(T base, U pct)
Definition Util.h:52
Unit * GetTarget() const
Definition SpellScript.cpp:1180
uint32 GetDamage() const
Definition Unit.h:373
uint32 GetDefenseSkillValue(Unit const *target=nullptr) const
Definition Unit.cpp:3779
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:1418
uint32 GetHealth() const
Definition Unit.h:1109
uint32 CountPctFromMaxHealth(int32 pct) const
Definition Unit.h:1122
uint8 GetLevel() const
Definition Unit.h:1104