562 {
564 {
565 canBeRecalculated = false;
566
567
568 float ap = caster->GetTotalAttackPowerValue(
BASE_ATTACK);
570 float mwbMin = 0.f;
571 float mwbMax = 0.f;
573 {
576 }
577
578 float mwb = ((mwbMin + mwbMax) / 2 + ap * mws / 14000) * 0.2f;
579 amount +=
int32(caster->ApplyEffectModifiers(
GetSpellInfo(), aurEff->GetEffIndex(), mwb));
580
581
582
584 {
587 }
588 }
589 }
std::int32_t int32
Definition: Define.h:104
std::uint8_t uint8
Definition: Define.h:110
T AddPct(T &base, U pct)
Definition: Util.h:67
#define MAX_ITEM_PROTO_DAMAGES
Definition: ItemTemplate.h:622
@ BASE_ATTACK
Definition: Unit.h:396
@ MINDAMAGE
Definition: Unit.h:254
@ MAXDAMAGE
Definition: Unit.h:255
@ EFFECT_2
Definition: SharedDefines.h:32
@ AURA_STATE_HEALTH_ABOVE_75_PERCENT
Definition: SharedDefines.h:1287
SpellInfo const * GetSpellInfo() const
Definition: SpellScript.cpp:1005
Unit * GetCaster() const
Definition: SpellScript.cpp:1020
Unit * GetUnitOwner() const
Definition: SpellScript.cpp:1030