From 44e4cb14e6f6053821fcb08ab17385a5dd1e0fe1 Mon Sep 17 00:00:00 2001 From: Jeremy Schroeder Date: Tue, 12 Nov 2013 20:05:45 -0500 Subject: [PATCH] dMaterial.matches() returns true on any m@ prefixed string --- .../java/net/aufdemrand/denizen/objects/dMaterial.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/aufdemrand/denizen/objects/dMaterial.java b/src/main/java/net/aufdemrand/denizen/objects/dMaterial.java index 7a596a64c8..06efb8dbe5 100644 --- a/src/main/java/net/aufdemrand/denizen/objects/dMaterial.java +++ b/src/main/java/net/aufdemrand/denizen/objects/dMaterial.java @@ -336,7 +336,12 @@ public static dMaterial valueOf(String string) { */ public static boolean matches(String arg) { - if (arg.toUpperCase().matches("(?:M@)?RANDOM")) + // Avoid case sensitivity + arg = arg.toUpperCase(); + + if (arg.startsWith("M@")) return true; + + if (arg.matches("(?:M@)?RANDOM")) return true; Matcher m = materialPattern.matcher(arg); @@ -640,7 +645,7 @@ else return new Element(material.name().equalsIgnoreCase(compared.getMaterial(). // by bukkit and should be used sparingly. // --> if (attribute.startsWith("data")) - return new Element(material.name()) + return new Element(getData()) .getAttribute(attribute.fulfill(1)); return new Element(identify()).getAttribute(attribute.fulfill(0));