From 7e2961c204f0292b30d3bc35985472a325eae6f5 Mon Sep 17 00:00:00 2001 From: Morphan1 Date: Tue, 13 Mar 2018 03:57:37 -0400 Subject: [PATCH] Add air checks to NBT methods, fixes #1737 --- .../denizen/utilities/nbt/CustomNBT.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/plugin/src/main/java/net/aufdemrand/denizen/utilities/nbt/CustomNBT.java b/plugin/src/main/java/net/aufdemrand/denizen/utilities/nbt/CustomNBT.java index 0f1d992ea1..99aa2ae9bc 100644 --- a/plugin/src/main/java/net/aufdemrand/denizen/utilities/nbt/CustomNBT.java +++ b/plugin/src/main/java/net/aufdemrand/denizen/utilities/nbt/CustomNBT.java @@ -3,13 +3,13 @@ import net.aufdemrand.denizen.nms.NMSHandler; import net.aufdemrand.denizen.nms.util.jnbt.*; import net.aufdemrand.denizencore.utilities.CoreUtilities; +import org.bukkit.Material; import org.bukkit.entity.Entity; import org.bukkit.inventory.ItemStack; import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import java.util.UUID; public class CustomNBT { @@ -36,7 +36,7 @@ public static class AttributeReturn { } public static List getAttributes(ItemStack itemStack) { - if (itemStack == null) { + if (itemStack == null || itemStack.getType() == Material.AIR) { return null; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack); @@ -111,7 +111,7 @@ else if (mat.contains("chestp")) { } public static ItemStack addAttribute(ItemStack itemStack, String attr, String slot, int op, double amt) { - if (itemStack == null) { + if (itemStack == null || itemStack.getType() == Material.AIR) { return null; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack); @@ -146,7 +146,7 @@ public static ItemStack addAttribute(ItemStack itemStack, String attr, String sl } public static ItemStack addCustomNBT(ItemStack itemStack, String key, String value, String basekey) { - if (itemStack == null) { + if (itemStack == null || itemStack.getType() == Material.AIR) { return null; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack); @@ -169,7 +169,7 @@ public static ItemStack addCustomNBT(ItemStack itemStack, String key, String val } public static ItemStack clearAttributes(ItemStack itemStack) { - if (itemStack == null) { + if (itemStack == null || itemStack.getType() == Material.AIR) { return null; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack); @@ -181,7 +181,7 @@ public static ItemStack clearAttributes(ItemStack itemStack) { } public static ItemStack removeCustomNBT(ItemStack itemStack, String key, String basekey) { - if (itemStack == null) { + if (itemStack == null || itemStack.getType() == Material.AIR) { return null; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack); @@ -204,7 +204,7 @@ public static ItemStack removeCustomNBT(ItemStack itemStack, String key, String } public static boolean hasCustomNBT(ItemStack itemStack, String key, String basekey) { - if (itemStack == null) { + if (itemStack == null || itemStack.getType() == Material.AIR) { return false; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack); @@ -221,7 +221,7 @@ public static boolean hasCustomNBT(ItemStack itemStack, String key, String basek } public static String getCustomNBT(ItemStack itemStack, String key, String basekey) { - if (itemStack == null || key == null) { + if (itemStack == null || itemStack.getType() == Material.AIR || key == null) { return null; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack); @@ -236,7 +236,7 @@ public static String getCustomNBT(ItemStack itemStack, String key, String baseke public static List listNBT(ItemStack itemStack, String basekey) { List nbt = new ArrayList(); - if (itemStack == null) { + if (itemStack == null || itemStack.getType() == Material.AIR) { return nbt; } CompoundTag compoundTag = NMSHandler.getInstance().getItemHelper().getNbtData(itemStack);