diff --git a/plugin/src/main/java/com/denizenscript/denizen/objects/InventoryTag.java b/plugin/src/main/java/com/denizenscript/denizen/objects/InventoryTag.java index 7721b0928f..b825075a3b 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/objects/InventoryTag.java +++ b/plugin/src/main/java/com/denizenscript/denizen/objects/InventoryTag.java @@ -1215,7 +1215,7 @@ public static void registerTags() { // NOTE: Could just also convert items to an array and pass it all in at once... for (ItemTag itm : items) { - List leftovers = dummyInv.addWithLeftovers(0, true, itm.getItemStack()); + List leftovers = dummyInv.addWithLeftovers(0, true, itm.getItemStack().clone()); if (!leftovers.isEmpty()) { return new ElementTag(false); } @@ -1262,7 +1262,7 @@ public static void registerTags() { attribute.fulfill(1); } for (ItemTag item: items) { - dummyInv.add(0, item.getItemStack()); + dummyInv.add(0, item.getItemStack().clone()); } return dummyInv; }); diff --git a/plugin/src/main/java/com/denizenscript/denizen/utilities/implementation/DenizenCoreImplementation.java b/plugin/src/main/java/com/denizenscript/denizen/utilities/implementation/DenizenCoreImplementation.java index f58b4c1819..131296a2a7 100644 --- a/plugin/src/main/java/com/denizenscript/denizen/utilities/implementation/DenizenCoreImplementation.java +++ b/plugin/src/main/java/com/denizenscript/denizen/utilities/implementation/DenizenCoreImplementation.java @@ -570,10 +570,7 @@ public boolean setSpecialDef(String def, ScriptQueue queue, ObjectTag value) { if (baseData == null) { return true; } - PlayerTag player = value.asType(PlayerTag.class, baseData.getTagContext()); - if (player == null) { - return false; - } + PlayerTag player = value == null ? null : value.asType(PlayerTag.class, baseData.getTagContext()); if (queue.getLastEntryExecuted() != null) { ((BukkitScriptEntryData) queue.getLastEntryExecuted().entryData).setPlayer(player); } @@ -587,10 +584,7 @@ else if (def.equals("__npc")) { if (baseData == null) { return true; } - NPCTag npc = value.asType(NPCTag.class, baseData.getTagContext()); - if (npc == null) { - return false; - } + NPCTag npc = value == null ? null : value.asType(NPCTag.class, baseData.getTagContext()); if (queue.getLastEntryExecuted() != null) { ((BukkitScriptEntryData) queue.getLastEntryExecuted().entryData).setNPC(npc); }