aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp3
-rw-r--r--src/server/game/Spells/Auras/SpellAuraDefines.h2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 21a9c44d608..4d6319c73b4 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -8504,6 +8504,9 @@ int32 Unit::ModifyPower(Powers power, int32 dVal)
if (dVal == 0)
return 0;
+ if (dVal > 0)
+ dVal *= GetTotalAuraMultiplierByMiscValue(SPELL_AURA_MOD_POWER_GAIN_PCT, power);
+
int32 curPower = GetPower(power);
int32 val = dVal + curPower;
diff --git a/src/server/game/Spells/Auras/SpellAuraDefines.h b/src/server/game/Spells/Auras/SpellAuraDefines.h
index 2df9c9bd955..d8742ea51d9 100644
--- a/src/server/game/Spells/Auras/SpellAuraDefines.h
+++ b/src/server/game/Spells/Auras/SpellAuraDefines.h
@@ -401,7 +401,7 @@ enum AuraType : uint32
SPELL_AURA_PHASE_GROUP = 326, // Puts the player in all the phases that are in the group with id = miscB
SPELL_AURA_PHASE_ALWAYS_VISIBLE = 327, // NYI - sets PhaseShiftFlags::AlwaysVisible
SPELL_AURA_TRIGGER_SPELL_ON_POWER_PCT = 328, // NYI Triggers spell when power goes above (MiscB = 0) or falls below (MiscB = 1) specified percent value (once, not every time condition has meet)
- SPELL_AURA_MOD_POWER_GAIN_PCT = 329, // NYI
+ SPELL_AURA_MOD_POWER_GAIN_PCT = 329,
SPELL_AURA_CAST_WHILE_WALKING = 330,
SPELL_AURA_FORCE_WEATHER = 331,
SPELL_AURA_OVERRIDE_ACTIONBAR_SPELLS = 332,