summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Essentials/src/com/earth2me/essentials/ItemDb.java12
1 files changed, 9 insertions, 3 deletions
diff --git a/Essentials/src/com/earth2me/essentials/ItemDb.java b/Essentials/src/com/earth2me/essentials/ItemDb.java
index 936563997..6dd82f156 100644
--- a/Essentials/src/com/earth2me/essentials/ItemDb.java
+++ b/Essentials/src/com/earth2me/essentials/ItemDb.java
@@ -8,6 +8,8 @@ import java.io.IOException;
import java.io.InputStream;
import java.util.*;
import java.util.logging.Logger;
+import java.util.regex.Pattern;
+import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
@@ -88,11 +90,15 @@ public class ItemDb
public static ItemStack get(String id) throws Exception
{
- ItemStack retval = new ItemStack(getUnsafe(id));
+ int 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.getSettings().getDefaultStackSize());
retval.setDurability(durabilities.containsKey(id.toLowerCase()) ? durabilities.get(id.toLowerCase()) : 0);
- if (items.containsValue(retval.getTypeId()) || true) return retval;
- throw new Exception("Unknown item numeric: " + retval);
+ return retval;
}
private static int getUnsafe(String id) throws Exception