Ignore itemmeta on sell

This commit is contained in:
GunfighterJ 2013-01-28 22:30:00 -06:00
parent ce7d83adb6
commit 74b63a6f2d

View File

@ -164,11 +164,23 @@ public class Commandsell extends EssentialsCommand
} }
//TODO: Prices for Enchantments //TODO: Prices for Enchantments
final ItemStack ris = is.clone(); ItemStack[] pinv = user.getInventory().getContents();
ris.setAmount(amount); int itemIndex = -1;
user.getInventory().removeItem(ris); 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(); 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.giveMoney(worth * amount);
user.sendMessage(_("itemSold", Util.displayCurrency(worth * amount, ess), amount, is.getType().toString().toLowerCase(Locale.ENGLISH), Util.displayCurrency(worth, ess))); 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))); logger.log(Level.INFO, _("itemSoldConsole", user.getDisplayName(), is.getType().toString().toLowerCase(Locale.ENGLISH), Util.displayCurrency(worth * amount, ess), amount, Util.displayCurrency(worth, ess)));