From 5158136ee8a77046e37bafa192481b8b61d4a116 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sat, 15 May 2021 16:08:09 +0200 Subject: [PATCH] Core/Players: Fixed last tick of power regeneration when reaching minimum or maximum value not being visible clientside and not triggering auras on power value change --- src/server/game/Entities/Player/Player.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 5887a25aa69..bf9356f5e6a 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -1815,6 +1815,7 @@ void Player::Regenerate(Powers power) else return; + bool forcesSetPower = false; if (addvalue < 0.0f) { if (curValue > minPower + integerValue) @@ -1826,6 +1827,7 @@ void Player::Regenerate(Powers power) { curValue = minPower; m_powerFraction[powerIndex] = 0; + forcesSetPower = true; } } else @@ -1839,13 +1841,14 @@ void Player::Regenerate(Powers power) { curValue = maxPower; m_powerFraction[powerIndex] = 0; + forcesSetPower = true; } } if (GetCommandStatus(CHEAT_POWER)) curValue = maxPower; - if (m_regenTimerCount >= 2000) + if (m_regenTimerCount >= 2000 || forcesSetPower) SetPower(power, curValue); else {