summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorementalo <ementalo@e251c2fe-e539-e718-e476-b85c1f46cddb>2011-05-07 13:03:45 +0000
committerementalo <ementalo@e251c2fe-e539-e718-e476-b85c1f46cddb>2011-05-07 13:03:45 +0000
commitd53be400cf5cbdc6de3e153a8128ef975c694ec8 (patch)
tree1d216e93f9f48521b5b04b819665936ff25becba
parent45a1ffdb64d4df7ca24c8c95312a207dd030a0f4 (diff)
downloadEssentials-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.java15
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandworth.java1
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)");
}