diff --git a/patches/server/0248-Enchantment-Table-Persists-Lapis.patch b/patches/server/0248-Enchantment-Table-Persists-Lapis.patch index bedc13a85..fb79a5664 100644 --- a/patches/server/0248-Enchantment-Table-Persists-Lapis.patch +++ b/patches/server/0248-Enchantment-Table-Persists-Lapis.patch @@ -70,6 +70,29 @@ index 5b3e33807e0e13480e3359c0cf067719e5749237..c3a644b0f8c7c5622acc9e1a496f95d4 this.clearContainer(player, this.enchantSlots); }); } +diff --git a/src/main/java/net/minecraft/world/level/block/EnchantingTableBlock.java b/src/main/java/net/minecraft/world/level/block/EnchantingTableBlock.java +index 151e856dda3aa262c846ce8793650ee582bfb749..be0ed8a14e5726d5fcea1864302b18fb75fde2b4 100644 +--- a/src/main/java/net/minecraft/world/level/block/EnchantingTableBlock.java ++++ b/src/main/java/net/minecraft/world/level/block/EnchantingTableBlock.java +@@ -124,4 +124,18 @@ public class EnchantingTableBlock extends BaseEntityBlock { + protected boolean isPathfindable(BlockState state, PathComputationType type) { + return false; + } ++ ++ // Purpur start ++ @Override ++ public void onRemove(BlockState state, Level level, BlockPos pos, BlockState newState, boolean moved) { ++ BlockEntity blockEntity = level.getBlockEntity(pos); ++ ++ if (level.purpurConfig.enchantmentTableLapisPersists && blockEntity instanceof EnchantingTableBlockEntity enchantmentTable) { ++ net.minecraft.world.Containers.dropItemStack(level, pos.getX(), pos.getY(), pos.getZ(), new net.minecraft.world.item.ItemStack(net.minecraft.world.item.Items.LAPIS_LAZULI, enchantmentTable.getLapis())); ++ level.updateNeighbourForOutputSignal(pos, this); ++ } ++ ++ super.onRemove(state, level, pos, newState, moved); ++ } ++ // Purpur end + } diff --git a/src/main/java/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java index c3503eaec5c5ece6e27a52fb703d06ec7c767383..ed7b41604fb201c346c362803bb9280831c0d0fb 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/EnchantingTableBlockEntity.java