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 15ef84c39a1a77cd9e33efee670bd0967c52657c..dda68d157d4da6e379567b25810051b652ec122f 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 @@ -149,7 +149,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 } else if (stack.isEmpty()) { 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 2c1edc6dfc7fd1a8af977919ce31913365cf3ddd..6c9b3fb1a015320da207c6b724cc18fb6b80267a 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);