Fixes UB in caps.c (#5878)
This commit is contained in:
parent
878724c9ae
commit
816d3020fa
1 changed files with 2 additions and 2 deletions
|
@ -54,7 +54,7 @@ u32 GetSoftLevelCapExpValue(u32 level, u32 expValue)
|
||||||
if (B_LEVEL_CAP_EXP_UP)
|
if (B_LEVEL_CAP_EXP_UP)
|
||||||
{
|
{
|
||||||
levelDifference = currentLevelCap - level;
|
levelDifference = currentLevelCap - level;
|
||||||
if (levelDifference > ARRAY_COUNT(sExpScalingUp))
|
if (levelDifference > ARRAY_COUNT(sExpScalingUp) - 1)
|
||||||
return expValue + (expValue / sExpScalingUp[ARRAY_COUNT(sExpScalingUp) - 1]);
|
return expValue + (expValue / sExpScalingUp[ARRAY_COUNT(sExpScalingUp) - 1]);
|
||||||
else
|
else
|
||||||
return expValue + (expValue / sExpScalingUp[levelDifference]);
|
return expValue + (expValue / sExpScalingUp[levelDifference]);
|
||||||
|
@ -71,7 +71,7 @@ u32 GetSoftLevelCapExpValue(u32 level, u32 expValue)
|
||||||
else if (B_EXP_CAP_TYPE == EXP_CAP_SOFT)
|
else if (B_EXP_CAP_TYPE == EXP_CAP_SOFT)
|
||||||
{
|
{
|
||||||
levelDifference = level - currentLevelCap;
|
levelDifference = level - currentLevelCap;
|
||||||
if (levelDifference > ARRAY_COUNT(sExpScalingDown))
|
if (levelDifference > ARRAY_COUNT(sExpScalingDown) - 1)
|
||||||
return expValue / sExpScalingDown[ARRAY_COUNT(sExpScalingDown) - 1];
|
return expValue / sExpScalingDown[ARRAY_COUNT(sExpScalingDown) - 1];
|
||||||
else
|
else
|
||||||
return expValue / sExpScalingDown[levelDifference];
|
return expValue / sExpScalingDown[levelDifference];
|
||||||
|
|
Loading…
Reference in a new issue