New exp calculations.

This commit is contained in:
snowleo 2012-08-03 10:21:03 +02:00
parent ab82f550cf
commit 80f001fdb7

View file

@ -46,7 +46,15 @@ public class SetExpFix
private static int getExpToLevel(final int level)
{
return 7 + (level * 7 >> 1);
if (level >= 30)
{
return 62 + (level - 30) * 7;
}
if (level >= 15)
{
return 17 + (level - 15) * 3;
}
return 17;
}
//This method is required because the bukkit player.getTotalExperience() method, shows exp that has been 'spent'.
@ -56,7 +64,8 @@ public class SetExpFix
int exp = (int)Math.round(getExpToLevel(player) * player.getExp());
int currentLevel = player.getLevel();
while (currentLevel > 0) {
while (currentLevel > 0)
{
currentLevel--;
exp += getExpToLevel(currentLevel);
}