diff options
author | Ghaster <theghaster1@gmail.com> | 2024-08-22 23:29:45 +0200 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2024-08-22 23:47:29 +0200 |
commit | 7e831374cb9ae91b01e07b87d7590817613c864a (patch) | |
tree | 733748c1de8883926f0f64db1ea835e8f17c0134 /src | |
parent | 6a000124352a2b1c1176c7a828693431c2070fc5 (diff) |
Core/Players: Fix SPELLMOD_PCT on login (#30179)
(cherry picked from commit 6904dfc20bc685e519b839943aaa22f3237c0ca7)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index d3905dcc807..844ca5685e7 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -21372,13 +21372,13 @@ void Player::SendSpellModifiers() const case SPELLMOD_PCT: if (!pctModifier || pctModifier->ModIndex != uint8(mod->op)) { - pctModifier = &flatMods.Modifiers.emplace_back(); + pctModifier = &pctMods.Modifiers.emplace_back(); pctModifier->ModIndex = uint8(mod->op); } boost::from_block_range(&static_cast<SpellModifierByClassMask const*>(mod)->mask[0], &static_cast<SpellModifierByClassMask const*>(mod)->mask[0] + 4, mask); for (std::size_t classIndex = mask.find_first(); classIndex != decltype(mask)::npos; classIndex = mask.find_next(classIndex)) { - float& modifierValue = getOrCreateModifierData(pctModifier->ModifierData, classIndex, 0.0f); + float& modifierValue = getOrCreateModifierData(pctModifier->ModifierData, classIndex, 1.0f); modifierValue *= 1.0f + CalculatePct(1.0f, static_cast<SpellModifierByClassMask const*>(mod)->value); } break; |