diff options
author | GunfighterJ <joseph.jenniges@gmail.com> | 2013-01-19 12:46:04 -0600 |
---|---|---|
committer | GunfighterJ <joseph.jenniges@gmail.com> | 2013-01-19 12:50:35 -0600 |
commit | 22ef464c43c4e8fc8dc12f4cd974198760ba4e9f (patch) | |
tree | de96e6359fda3230cd09e65b0aa6f04cee5465bb /Essentials/src/com/earth2me/essentials/commands/Commandeco.java | |
parent | 57480b2c5d25bec580910e0206e409def7e07b1b (diff) | |
download | Essentials-22ef464c43c4e8fc8dc12f4cd974198760ba4e9f.tar Essentials-22ef464c43c4e8fc8dc12f4cd974198760ba4e9f.tar.gz Essentials-22ef464c43c4e8fc8dc12f4cd974198760ba4e9f.tar.lz Essentials-22ef464c43c4e8fc8dc12f4cd974198760ba4e9f.tar.xz Essentials-22ef464c43c4e8fc8dc12f4cd974198760ba4e9f.zip |
/eco overhaul, adds /eco set
Diffstat (limited to 'Essentials/src/com/earth2me/essentials/commands/Commandeco.java')
-rw-r--r-- | Essentials/src/com/earth2me/essentials/commands/Commandeco.java | 62 |
1 files changed, 51 insertions, 11 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandeco.java b/Essentials/src/com/earth2me/essentials/commands/Commandeco.java index dd6d6ad0d..1c391a9bd 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandeco.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandeco.java @@ -18,6 +18,8 @@ public class Commandeco extends EssentialsCommand @Override public void run(final Server server, final CommandSender sender, final String commandLabel, final String[] args) throws Exception { + double startingBalance = (double)ess.getSettings().getStartingBalance(); + String start = ess.getSettings().getCurrencySymbol() + ess.getSettings().getStartingBalance(); if (args.length < 2) { throw new NotEnoughArgumentsException(); @@ -34,8 +36,11 @@ public class Commandeco extends EssentialsCommand throw new NotEnoughArgumentsException(ex); } + double min = ess.getSettings().getMinMoney(); + if (args[1].contentEquals("**")) { + server.broadcastMessage(_("resetBalAll", start)); for (String sUser : ess.getUserMap().getAllUniqueUsers()) { final User player = ess.getUser(sUser); @@ -49,17 +54,30 @@ public class Commandeco extends EssentialsCommand if (player.canAfford(amount, false)) { player.takeMoney(amount); - } + } + else + { + if (player.getMoney() > 0) + { + player.setMoney(0); + } + } break; case RESET: - player.setMoney(amount == 0 ? ess.getSettings().getStartingBalance() : amount); + player.setMoney(startingBalance); + break; + + case SET: + boolean underMinimum = (player.getMoney() - amount) < min; + player.setMoney(underMinimum ? min : amount); break; } } } else if (args[1].contentEquals("*")) { + server.broadcastMessage(_("resetBal", start)); for (Player onlinePlayer : server.getOnlinePlayers()) { final User player = ess.getUser(onlinePlayer); @@ -70,15 +88,26 @@ public class Commandeco extends EssentialsCommand break; case TAKE: - if (!player.canAfford(amount, false)) + if (player.canAfford(amount)) { - throw new Exception(_("notEnoughMoney")); + player.takeMoney(amount); + } + else + { + if (player.getMoney() > 0) + { + player.setMoney(0); + } } - player.takeMoney(amount); break; case RESET: - player.setMoney(amount == 0 ? ess.getSettings().getStartingBalance() : amount); + player.setMoney(startingBalance); + break; + + case SET: + boolean underMinimum = (player.getMoney() - amount) < min; + player.setMoney(underMinimum ? min : amount); break; } } @@ -93,15 +122,26 @@ public class Commandeco extends EssentialsCommand break; case TAKE: - if (!player.canAfford(amount, false)) + if (player.canAfford(amount)) { - throw new Exception(_("notEnoughMoney")); + player.takeMoney(amount); + } + else + { + if (player.getMoney() > 0) + { + player.setMoney(0); + } } - player.takeMoney(amount, sender); break; case RESET: - player.setMoney(amount == 0 ? ess.getSettings().getStartingBalance() : amount); + player.setMoney(startingBalance); + break; + + case SET: + boolean underMinimum = (player.getMoney() - amount) < min; + player.setMoney(underMinimum ? min : amount); break; } } @@ -110,6 +150,6 @@ public class Commandeco extends EssentialsCommand private enum EcoCommands { - GIVE, TAKE, RESET + GIVE, TAKE, RESET, SET } } |