aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0947-Fix-chiseled-bookshelf-and-jukebox-setItem-with-air.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0947-Fix-chiseled-bookshelf-and-jukebox-setItem-with-air.patch')
-rw-r--r--patches/server/0947-Fix-chiseled-bookshelf-and-jukebox-setItem-with-air.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/patches/server/0947-Fix-chiseled-bookshelf-and-jukebox-setItem-with-air.patch b/patches/server/0947-Fix-chiseled-bookshelf-and-jukebox-setItem-with-air.patch
new file mode 100644
index 0000000000..75e0c90780
--- /dev/null
+++ b/patches/server/0947-Fix-chiseled-bookshelf-and-jukebox-setItem-with-air.patch
@@ -0,0 +1,36 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Nassim Jahnke <[email protected]>
+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 1b4a6e68fc81072591278de1e2ec3f921823811b..429381c4efbfdf48b489cc25936466c193c2f452 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
+@@ -146,7 +146,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);
+ this.updateState(slot);
+ }
+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);