Change from 10 to 50 for harder progression
This commit is contained in:
@@ -89,19 +89,21 @@ public static class Tools
|
||||
totalXp += BazookaManager.Instance.GetGameStoreTotalCoinBerries() * 10;
|
||||
if (totalXp < 0) totalXp = 0;
|
||||
|
||||
double discriminant = 95 * 95 + 20.0 * (double)totalXp;
|
||||
double level = (-95 + Math.Sqrt(discriminant)) / 10.0;
|
||||
double levelDivisor = 50.0;
|
||||
|
||||
double discriminant = 95 * 95 + levelDivisor * 2 * (double)totalXp;
|
||||
double level = (-95 + Math.Sqrt(discriminant)) / levelDivisor;
|
||||
double flooredLevel = Math.Floor(level);
|
||||
|
||||
BigInteger xpAtStartOfLevel = (BigInteger)(5 * flooredLevel * flooredLevel + 95 * flooredLevel);
|
||||
BigInteger xpAtStartOfLevel = (BigInteger)(levelDivisor / 2 * flooredLevel * flooredLevel + 95 * flooredLevel);
|
||||
|
||||
double nextLevel = flooredLevel + 1;
|
||||
BigInteger xpAtNextLevel = (BigInteger)(5 * nextLevel * nextLevel + 95 * nextLevel);
|
||||
BigInteger xpAtNextLevel = (BigInteger)(levelDivisor / 2 * nextLevel * nextLevel + 95 * nextLevel);
|
||||
|
||||
BigInteger totalXpForLevel = xpAtNextLevel - xpAtStartOfLevel;
|
||||
BigInteger currentXpInLevel = totalXp - xpAtStartOfLevel;
|
||||
|
||||
double percentDone = (double)currentXpInLevel / (double)totalXpForLevel * 100.0;
|
||||
double percentDone = totalXpForLevel == 0 ? 0.0 : (double)currentXpInLevel / (double)totalXpForLevel * 100.0;
|
||||
|
||||
return (totalXp, flooredLevel, currentXpInLevel, totalXpForLevel, percentDone);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user