1
0
mirror of https://github.com/PaperMC/Paper.git synced 2025-02-24 08:21:42 +01:00
Paper/patches/server/0394-Add-BlockStateMeta-clearBlockState.patch
Owen 89d51d5f29
Allow enabling sand duping ()
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable.

It should be noted that this decision does not promise all future exploits will be configurable.
2024-03-03 17:05:34 -05:00

25 lines
1.2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Thu, 11 Jan 2024 12:41:50 -0800
Subject: [PATCH] Add BlockStateMeta#clearBlockState
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java
index 0cbca0c37b3e6a34157906d44357286126cfe112..671a9b92da04c22cd3e6c3fd291a343e57397e72 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java
@@ -257,6 +257,13 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta
return this.blockEntityTag != null;
}
+ // Paper start - add method to clear block state
+ @Override
+ public void clearBlockState() {
+ this.blockEntityTag = null;
+ }
+ // Paper end - add method to clear block state
+
@Override
public BlockState getBlockState() {
Material stateMaterial = (this.material != Material.SHIELD) ? this.material : CraftMetaBlockState.shieldToBannerHack(this.blockEntityTag); // Only actually used for jigsaws