aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGhaster <theghaster1@gmail.com>2024-08-22 23:29:45 +0200
committerOvahlord <dreadkiller@gmx.de>2024-08-22 23:47:29 +0200
commit7e831374cb9ae91b01e07b87d7590817613c864a (patch)
tree733748c1de8883926f0f64db1ea835e8f17c0134 /src
parent6a000124352a2b1c1176c7a828693431c2070fc5 (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.cpp4
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;