diff options
author | GunfighterJ <joseph.jenniges@gmail.com> | 2013-01-28 22:30:00 -0600 |
---|---|---|
committer | GunfighterJ <joseph.jenniges@gmail.com> | 2013-01-28 23:11:43 -0600 |
commit | 74b63a6f2dc6834fc7d9b8d96e94a64b747f981b (patch) | |
tree | 447a6f80f2b149c950bd0b9f33e0fd8207e3678b | |
parent | ce7d83adb6f7666ee72bdc085c2797f4e9b9c345 (diff) | |
download | Essentials-74b63a6f2dc6834fc7d9b8d96e94a64b747f981b.tar Essentials-74b63a6f2dc6834fc7d9b8d96e94a64b747f981b.tar.gz Essentials-74b63a6f2dc6834fc7d9b8d96e94a64b747f981b.tar.lz Essentials-74b63a6f2dc6834fc7d9b8d96e94a64b747f981b.tar.xz Essentials-74b63a6f2dc6834fc7d9b8d96e94a64b747f981b.zip |
Ignore itemmeta on sell
-rw-r--r-- | Essentials/src/com/earth2me/essentials/commands/Commandsell.java | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsell.java b/Essentials/src/com/earth2me/essentials/commands/Commandsell.java index ec3262958..a70b1e3cc 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandsell.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandsell.java @@ -43,7 +43,7 @@ public class Commandsell extends EssentialsCommand } try { - totalWorth += sellItem(user, stack, args, true); + totalWorth += sellItem(user, stack, args, true); } catch (Exception e) { @@ -164,11 +164,23 @@ public class Commandsell extends EssentialsCommand } //TODO: Prices for Enchantments - final ItemStack ris = is.clone(); - ris.setAmount(amount); - user.getInventory().removeItem(ris); + ItemStack[] pinv = user.getInventory().getContents(); + int itemIndex = -1; + for (int i = 0; i < pinv.length; i++) + { + if (pinv[i] != null) + { + if (pinv[i].getType() == is.getType() && pinv[i].getDurability() == is.getDurability()) + { + itemIndex = i; + break; + } + } + } + pinv[itemIndex].setAmount(pinv[itemIndex].getAmount() - amount); + user.getInventory().setContents(pinv); user.updateInventory(); - Trade.log("Command", "Sell", "Item", user.getName(), new Trade(ris, ess), user.getName(), new Trade(worth * amount, ess), user.getLocation(), ess); + Trade.log("Command", "Sell", "Item", user.getName(), new Trade(pinv[itemIndex], ess), user.getName(), new Trade(worth * amount, ess), user.getLocation(), ess); user.giveMoney(worth * amount); user.sendMessage(_("itemSold", Util.displayCurrency(worth * amount, ess), amount, is.getType().toString().toLowerCase(Locale.ENGLISH), Util.displayCurrency(worth, ess))); logger.log(Level.INFO, _("itemSoldConsole", user.getDisplayName(), is.getType().toString().toLowerCase(Locale.ENGLISH), Util.displayCurrency(worth * amount, ess), amount, Util.displayCurrency(worth, ess))); |