aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Entities/Player/Player.cpp5
1 files changed, 4 insertions, 1 deletions
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
{