diff options
author | Matan Shukry <matanshukry@gmail.com> | 2021-02-23 18:36:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-23 17:36:36 +0100 |
commit | 03f1d3cedf66711ec375c421ddbb458a9992800b (patch) | |
tree | 6c331b685cfdd2b8637041f31934b6630a860b9a | |
parent | 23aa13257a0af0143651f48ac3af65435ba9f346 (diff) |
Core/Auras: Implemented SPELL_AURA_MOD_POWER_GAIN_PCT (#26132)
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 3 | ||||
-rw-r--r-- | src/server/game/Spells/Auras/SpellAuraDefines.h | 2 |
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, |