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

This commit is contained in:
Shauren
2021-05-15 16:08:09 +02:00
parent 12ed21e690
commit 5158136ee8

View File

@@ -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
{