From 5069b26c2f7f47f3860911b6feabb7353e8f00ef Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Mon, 22 Apr 2024 16:05:40 +0200 Subject: [PATCH] Reuse previously sent enforces-secure-chat value --- .../rewriter/EntityPacketRewriter1_20_5.java | 11 ++++++++--- .../storage/AcknowledgedMessagesStorage.java | 5 +++++ gradle/libs.versions.toml | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java index 67d5f69fd..687e52f11 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/EntityPacketRewriter1_20_5.java @@ -197,8 +197,6 @@ public final class EntityPacketRewriter1_20_5 extends EntityRewriter { + // Enforces secure chat - moved from server data (which is unfortunately sent a while after this) + // Just put in what we know if this is sent multiple times + final AcknowledgedMessagesStorage storage = wrapper.user().get(AcknowledgedMessagesStorage.class); + wrapper.write(Type.BOOLEAN, storage.isSecureChatEnforced()); + + storage.clear(); + + // Handle creative interaction range final byte gamemode = wrapper.get(Type.BYTE, 0); if (gamemode == CREATIVE_MODE_ID) { sendRangeAttributes(wrapper.user(), true); diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/storage/AcknowledgedMessagesStorage.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/storage/AcknowledgedMessagesStorage.java index cde1ff3f9..ebf210f1a 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/storage/AcknowledgedMessagesStorage.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/storage/AcknowledgedMessagesStorage.java @@ -118,4 +118,9 @@ public final class AcknowledgedMessagesStorage implements StorableObject { this.lastMessage = null; Arrays.fill(this.trackedMessages, false); } + + @Override + public boolean clearOnServerSwitch() { + return false; + } } diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c45418a77..d825aa128 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -4,7 +4,7 @@ metadata.format.version = "1.1" gson = "2.10.1" fastutil = "8.5.12" -vianbt = "4.4.3" +vianbt = "4.4.4" mcstructs = "2.5.0-SNAPSHOT" # Common provided