summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandsell.java18
1 files changed, 5 insertions, 13 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandsell.java b/Essentials/src/com/earth2me/essentials/commands/Commandsell.java
index ec3262958..5bee4766e 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandsell.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandsell.java
@@ -117,19 +117,7 @@ public class Commandsell extends EssentialsCommand
int max = 0;
for (ItemStack s : user.getInventory().getContents())
{
- if (s == null)
- {
- continue;
- }
- if (s.getTypeId() != is.getTypeId())
- {
- continue;
- }
- if (s.getDurability() != is.getDurability())
- {
- continue;
- }
- if (!s.getEnchantments().equals(is.getEnchantments()))
+ if (s == null || !s.isSimilar(is))
{
continue;
}
@@ -166,6 +154,10 @@ public class Commandsell extends EssentialsCommand
//TODO: Prices for Enchantments
final ItemStack ris = is.clone();
ris.setAmount(amount);
+ if (!user.getInventory().containsAtLeast(ris, amount)) {
+ // This should never happen.
+ throw new IllegalStateException("Trying to remove more items than are available.");
+ }
user.getInventory().removeItem(ris);
user.updateInventory();
Trade.log("Command", "Sell", "Item", user.getName(), new Trade(ris, ess), user.getName(), new Trade(worth * amount, ess), user.getLocation(), ess);