559 {
561 {
562 canBeRecalculated = false;
563
564
565 float ap = caster->GetTotalAttackPowerValue(
BASE_ATTACK);
567 float mwbMin = 0.f;
568 float mwbMax = 0.f;
570 {
573 }
574
575 float mwb = ((mwbMin + mwbMax) / 2 + ap * mws / 14000) * 0.2f;
576 amount +=
int32(caster->ApplyEffectModifiers(
GetSpellInfo(), aurEff->GetEffIndex(), mwb));
577
578
579
581 {
584 }
585 }
586 }
std::int32_t int32
Definition Define.h:103
std::uint8_t uint8
Definition Define.h:109
#define MAX_ITEM_PROTO_DAMAGES
Definition ItemTemplate.h:613
@ EFFECT_2
Definition SharedDefines.h:33
@ AURA_STATE_HEALTH_ABOVE_75_PERCENT
Definition SharedDefines.h:1326
@ MINDAMAGE
Definition Unit.h:136
@ MAXDAMAGE
Definition Unit.h:137
@ BASE_ATTACK
Definition Unit.h:210
T AddPct(T &base, U pct)
Definition Util.h:67
SpellInfo const * GetSpellInfo() const
Definition SpellScript.cpp:1005
Unit * GetCaster() const
Definition SpellScript.cpp:1020
Unit * GetUnitOwner() const
Definition SpellScript.cpp:1030