summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2012-08-03 10:29:22 +0200
committersnowleo <schneeleo@gmail.com>2012-08-03 10:29:22 +0200
commitc8a07ecdb5033da2644097d5ac5c891922b9bde8 (patch)
tree1d63de35356e66ae71ea03005184e39cbd6f4765
parent80f001fdb78811da64587db0484683867c6180ca (diff)
downloadEssentials-c8a07ecdb5033da2644097d5ac5c891922b9bde8.tar
Essentials-c8a07ecdb5033da2644097d5ac5c891922b9bde8.tar.gz
Essentials-c8a07ecdb5033da2644097d5ac5c891922b9bde8.tar.lz
Essentials-c8a07ecdb5033da2644097d5ac5c891922b9bde8.tar.xz
Essentials-c8a07ecdb5033da2644097d5ac5c891922b9bde8.zip
Another fix for /exp
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandexp.java4
-rw-r--r--Essentials/src/com/earth2me/essentials/craftbukkit/SetExpFix.java13
2 files changed, 14 insertions, 3 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandexp.java b/Essentials/src/com/earth2me/essentials/commands/Commandexp.java
index de4727fa0..0f1fe4ea6 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandexp.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandexp.java
@@ -2,7 +2,6 @@ package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.User;
-import com.earth2me.essentials.Util;
import com.earth2me.essentials.craftbukkit.SetExpFix;
import org.bukkit.Server;
import org.bukkit.command.CommandSender;
@@ -122,8 +121,7 @@ public class Commandexp extends EssentialsCommand
private void showExp(final CommandSender sender, final User target)
{
final int totalExp = SetExpFix.getTotalExperience(target);
- final int expLeft = (int)Util.roundDouble(((((3.5 * target.getLevel()) + 6.7) - (totalExp - ((1.75 * (target.getLevel() * target.getLevel())) + (5.00 * target.getLevel())))) + 1));
- sender.sendMessage(_("exp", target.getDisplayName(), SetExpFix.getTotalExperience(target), target.getLevel(), expLeft));
+ sender.sendMessage(_("exp", target.getDisplayName(), SetExpFix.getTotalExperience(target), target.getLevel(), SetExpFix.getExpUntilNextLevel(target)));
}
private void setExp(final CommandSender sender, final User target, final String strAmount, final boolean give)
diff --git a/Essentials/src/com/earth2me/essentials/craftbukkit/SetExpFix.java b/Essentials/src/com/earth2me/essentials/craftbukkit/SetExpFix.java
index cdcc34bca..d044d55d8 100644
--- a/Essentials/src/com/earth2me/essentials/craftbukkit/SetExpFix.java
+++ b/Essentials/src/com/earth2me/essentials/craftbukkit/SetExpFix.java
@@ -71,4 +71,17 @@ public class SetExpFix
}
return exp;
}
+
+ public static int getExpUntilNextLevel(final Player player)
+ {
+ int exp = 0;
+ int currentLevel = player.getLevel() + 1;
+
+ while (currentLevel > 0)
+ {
+ currentLevel--;
+ exp += getExpToLevel(currentLevel);
+ }
+ return exp - getTotalExperience(player);
+ }
}