diff --git a/Essentials/src/com/earth2me/essentials/ItemDb.java b/Essentials/src/com/earth2me/essentials/ItemDb.java index a793a0258..3d845f005 100644 --- a/Essentials/src/com/earth2me/essentials/ItemDb.java +++ b/Essentials/src/com/earth2me/essentials/ItemDb.java @@ -89,14 +89,25 @@ public class ItemDb public static ItemStack get(String id) throws Exception { - int itemid = getUnsafe(id); + int itemid; + short metaData =0; + if(id.matches("^\\d+:\\d+$")) + { + itemid = getUnsafe(id.split(":")[0]); + metaData = (short)getUnsafe(id.split(":")[1]); + } + else + { + itemid = getUnsafe(id); + } + Material mat = Material.getMaterial(itemid); if (mat == null) { throw new Exception("Unknown item id: "+itemid); } ItemStack retval = new ItemStack(mat); retval.setAmount(Essentials.getStatic().getSettings().getDefaultStackSize()); - retval.setDurability(durabilities.containsKey(id.toLowerCase()) ? durabilities.get(id.toLowerCase()) : 0); + retval.setDurability(metaData !=0 ? metaData :(durabilities.containsKey(id.toLowerCase()) ? durabilities.get(id.toLowerCase()) : 0)); return retval; } diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandworth.java b/Essentials/src/com/earth2me/essentials/commands/Commandworth.java index 1b53d13d9..069061c78 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandworth.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandworth.java @@ -49,6 +49,7 @@ public class Commandworth extends EssentialsCommand user.charge(this); user.sendMessage("§7Stack of " + is.getType().toString().toLowerCase().replace("_", "") + + (is.getDurability() !=0 ? " with metadata of "+ String.valueOf(is.getDurability()) : "") + " worth §c" + Util.formatCurrency(worth*amount) + "§7 (" + amount + " item(s) at " + Util.formatCurrency(worth) + " each)"); }