From 00d6cca4dfeda29784a40a14f67ac5e87b8580e2 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Mon, 3 Jan 2022 10:17:27 +0100 Subject: [PATCH] Fix filtered text not being applied on sign update Fixes #7266 --- patches/server/0012-Adventure.patch | 4 ++-- patches/server/0826-Fix-tripwire-state-inconsistency.patch | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/patches/server/0012-Adventure.patch b/patches/server/0012-Adventure.patch index 4b4ebe219c..77bca2c49b 100644 --- a/patches/server/0012-Adventure.patch +++ b/patches/server/0012-Adventure.patch @@ -1981,7 +1981,7 @@ index 0beb96dc896f63003e1b1ae458b73902bdbe648a..102eb86bad3000f258775ac06ecd1a6d public String getCustomName() { EnchantmentTableBlockEntity enchant = this.getSnapshot(); diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java -index 9e68893b189ad05e4d2a5e8788e93e10670ac824..71cde0f5b27105c3ece994471017999b00794fa3 100644 +index 9e68893b189ad05e4d2a5e8788e93e10670ac824..9d513b3a1a50e67284ee7ebdc5607e4f44bd0a4b 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftSign.java @@ -14,34 +14,60 @@ import org.bukkit.entity.Player; @@ -2073,7 +2073,7 @@ index 9e68893b189ad05e4d2a5e8788e93e10670ac824..71cde0f5b27105c3ece994471017999b continue; // The line contents are still the same, skip. } - sign.setMessage(i, CraftChatMessage.fromString(line)[0]); -+ sign.messages[i] = io.papermc.paper.adventure.PaperAdventure.asVanilla(component); ++ sign.setMessage(i, io.papermc.paper.adventure.PaperAdventure.asVanilla(component)); } + // Paper end } diff --git a/patches/server/0826-Fix-tripwire-state-inconsistency.patch b/patches/server/0826-Fix-tripwire-state-inconsistency.patch index f7bc7e4dce..9d0eb2ec5f 100644 --- a/patches/server/0826-Fix-tripwire-state-inconsistency.patch +++ b/patches/server/0826-Fix-tripwire-state-inconsistency.patch @@ -41,7 +41,7 @@ index 6b40bf94fbaa18605b59b92ad1582e8dc3a6a9cd..7d89b9ed84209c161b2c6fec5304abbb } else if (iblockdata1.is((Block) this)) { ++k; diff --git a/src/main/java/net/minecraft/world/level/block/TripWireHookBlock.java b/src/main/java/net/minecraft/world/level/block/TripWireHookBlock.java -index 02a3e1ced592784b9c66927c76376c7ab413367d..30b2497d9596c6d8e240d0231adaad7e4873ff7a 100644 +index 02a3e1ced592784b9c66927c76376c7ab413367d..277463eb0456ced1fe015d27b10505ec9e2a21ab 100644 --- a/src/main/java/net/minecraft/world/level/block/TripWireHookBlock.java +++ b/src/main/java/net/minecraft/world/level/block/TripWireHookBlock.java @@ -107,6 +107,12 @@ public class TripWireHookBlock extends Block { @@ -61,7 +61,7 @@ index 02a3e1ced592784b9c66927c76376c7ab413367d..30b2497d9596c6d8e240d0231adaad7e boolean flag7 = (Boolean) iblockdata2.getValue(TripWireBlock.POWERED); flag5 |= flag6 && flag7; -+ if (!tripWireBeingRemoved || (k == i && !flag6)) // Paper - don't update the tripwire again if being removed and not disarmed ++ if (k != i || !tripWireBeingRemoved || !flag6)) // Paper - don't update the tripwire again if being removed and not disarmed aiblockdata[k] = iblockdata2; if (k == i) { world.scheduleTick(pos, (Block) this, 10);