From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Sat, 18 Mar 2023 18:51:33 +0100 Subject: [PATCH] Fix chiseled bookshelf and jukebox setItem with air diff --git a/src/main/java/net/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity.java index 1f09eaa36b670212f6f02569de3312ad0382493e..4fb5328855fe0700fbc997b9801ef2e1c14c8c8f 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity.java @@ -147,7 +147,7 @@ public class ChiseledBookShelfBlockEntity extends BlockEntity implements Contain @Override public void setItem(int slot, ItemStack stack) { - if (stack.is(ItemTags.BOOKSHELF_BOOKS)) { + if (stack.isEmpty() || stack.is(ItemTags.BOOKSHELF_BOOKS)) { // Paper this.items.set(slot, stack); if (level != null) this.updateState(slot); // CraftBukkit - SPIGOT-7381: check for null world } diff --git a/src/main/java/net/minecraft/world/level/block/entity/JukeboxBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/JukeboxBlockEntity.java index 77ece220a2e204c3e66e660c639abda957bf21b9..62acd6686626c84c9fc3964af62097101e8e582f 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/JukeboxBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/JukeboxBlockEntity.java @@ -183,6 +183,12 @@ public class JukeboxBlockEntity extends BlockEntity implements Clearable, Contai @Override public void setItem(int slot, ItemStack stack) { + // Paper start + if (stack.isEmpty()) { + this.removeItem(slot, 0); + return; + } + // Paper end if (stack.is(ItemTags.MUSIC_DISCS) && this.level != null) { this.items.set(slot, stack); this.setHasRecordBlockState((Entity) null, true);