PaperMC/patches/removed/1.20/0571-copy-TESign-isEditable-from-snapshots.patch
Bjarne Koll 2873869bb1
Drop manual isEditable copy in CraftSign
Signs no longer have a specific isEdiable state, the entire API in this
regard needs updating/deprecation. The boolean field is completely gone,
replaced by a uuid (which will need a new setEditingPlayer(UUID) method
on the Sign interface), and the current upstream implementation of
setEdiable simply flips the is_waxed state.

This patch is hence not needed as it neither allows editing (which will
be redone in a later patch) nor is required to copy the is_waxed boolean
flag as it lives in the signs compound tag and is covered by applyTo.
2023-06-08 11:35:39 +02:00

20 lines
1.2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Tue, 23 Mar 2021 06:43:30 +0000
Subject: [PATCH] copy TESign#isEditable from snapshots
Dropped in 1.20 as isEditable no longer exists and the full uuid of the editing player
is stored. New API is needed, but the current #setEditable only mutates the is_waxed state of a sign, which
is part of the compound tag and hence already copied by applyTo.
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java
index 97028a14830384f06f4f1de36abfbc6bc1b90a19..a7d75d33367933fdec27538cde5a53cd41f3c252 100644
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java
@@ -108,6 +108,7 @@ public class CraftSign<T extends SignBlockEntity> extends CraftBlockEntityState<
this.back.applyLegacyStringToSignSide();
super.applyTo(sign);
+ sign.isEditable = getSnapshot().isEditable; // Paper - copy manually
}
public static void openSign(Sign sign, org.bukkit.entity.HumanEntity player) { // Paper - change move open sign to HumanEntity