From 675028a699078f78a9a7df41ef31d3cf71a1e3e7 Mon Sep 17 00:00:00 2001 From: Aeltumn Date: Mon, 28 Aug 2023 13:44:09 +0200 Subject: [PATCH] Allow proper checking of empty item stacks --- .../org/bukkit/craftbukkit/inventory/CraftItemStack.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java index 134db8c2dd..30eba68435 100644 --- a/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/paper-server/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -45,12 +45,19 @@ public final class CraftItemStack extends ItemStack { } // Paper end - MC Utils + // Paper start - override isEmpty to use vanilla's impl + @Override + public boolean isEmpty() { + return handle == null || handle.isEmpty(); + } + // Paper end - override isEmpty to use vanilla's impl + public static net.minecraft.world.item.ItemStack asNMSCopy(ItemStack original) { if (original instanceof CraftItemStack) { CraftItemStack stack = (CraftItemStack) original; return stack.handle == null ? net.minecraft.world.item.ItemStack.EMPTY : stack.handle.copy(); } - if (original == null || original.getType() == Material.AIR) { + if (original == null || original.isEmpty()) { // Paper - override isEmpty to use vanilla's impl; use isEmpty return net.minecraft.world.item.ItemStack.EMPTY; }