diff options
author | ementalo <ementalo@e251c2fe-e539-e718-e476-b85c1f46cddb> | 2011-05-07 13:03:45 +0000 |
---|---|---|
committer | ementalo <ementalo@e251c2fe-e539-e718-e476-b85c1f46cddb> | 2011-05-07 13:03:45 +0000 |
commit | d53be400cf5cbdc6de3e153a8128ef975c694ec8 (patch) | |
tree | 1d216e93f9f48521b5b04b819665936ff25becba | |
parent | 45a1ffdb64d4df7ca24c8c95312a207dd030a0f4 (diff) | |
download | Essentials-d53be400cf5cbdc6de3e153a8128ef975c694ec8.tar Essentials-d53be400cf5cbdc6de3e153a8128ef975c694ec8.tar.gz Essentials-d53be400cf5cbdc6de3e153a8128ef975c694ec8.tar.lz Essentials-d53be400cf5cbdc6de3e153a8128ef975c694ec8.tar.xz Essentials-d53be400cf5cbdc6de3e153a8128ef975c694ec8.zip |
[trunk] metadata support in itemsdb.java, allows worth commands with metadata
git-svn-id: https://svn.java.net/svn/essentials~svn/trunk@1364 e251c2fe-e539-e718-e476-b85c1f46cddb
-rw-r--r-- | Essentials/src/com/earth2me/essentials/ItemDb.java | 15 | ||||
-rw-r--r-- | Essentials/src/com/earth2me/essentials/commands/Commandworth.java | 1 |
2 files changed, 14 insertions, 2 deletions
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)"); } |