summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2013-01-21 14:15:53 +0000
committerKHobbits <rob@khobbits.co.uk>2013-01-21 14:15:53 +0000
commit91701e8c2f34a98b62dfec0d769731118b1a3927 (patch)
treee4e2784996d55ecf5938e176d14d2443d84b7f86
parent9cef107bc348b75bf363bb90a4cbdbef54ca0e02 (diff)
downloadEssentials-91701e8c2f34a98b62dfec0d769731118b1a3927.tar
Essentials-91701e8c2f34a98b62dfec0d769731118b1a3927.tar.gz
Essentials-91701e8c2f34a98b62dfec0d769731118b1a3927.tar.lz
Essentials-91701e8c2f34a98b62dfec0d769731118b1a3927.tar.xz
Essentials-91701e8c2f34a98b62dfec0d769731118b1a3927.zip
Allow negative exp to be given
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandexp.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandexp.java b/Essentials/src/com/earth2me/essentials/commands/Commandexp.java
index fc043f3a0..e8c187d29 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandexp.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandexp.java
@@ -149,6 +149,7 @@ public class Commandexp extends EssentialsCommand
sender.sendMessage(_("exp", target.getDisplayName(), SetExpFix.getTotalExperience(target), target.getLevel(), SetExpFix.getExpUntilNextLevel(target)));
}
+ //TODO: Limit who can give negative exp?
private void setExp(final CommandSender sender, final User target, String strAmount, final boolean give) throws NotEnoughArgumentsException
{
long amount;
@@ -167,7 +168,7 @@ public class Commandexp extends EssentialsCommand
else
{
amount = Long.parseLong(strAmount);
- if (amount < 0 || amount > Integer.MAX_VALUE)
+ if (amount > Integer.MAX_VALUE || amount < Integer.MIN_VALUE)
{
throw new NotEnoughArgumentsException();
}
@@ -181,6 +182,10 @@ public class Commandexp extends EssentialsCommand
{
amount = (long)Integer.MAX_VALUE;
}
+ if (amount < 0l)
+ {
+ amount = 0l;
+ }
SetExpFix.setTotalExperience(target, (int)amount);
sender.sendMessage(_("expSet", target.getDisplayName(), amount));
}