From 2841bf30406889ec0772e4885fe18161cee2a9a0 Mon Sep 17 00:00:00 2001 From: Pablo Herrera Date: Sat, 24 Aug 2024 15:49:09 +0200 Subject: [PATCH] Add option to hide scoreboard numbers (#4122) --- .../viaversion/api/configuration/ViaVersionConfig.java | 7 +++++++ .../viaversion/configuration/AbstractViaConfig.java | 7 +++++++ .../v1_20_2to1_20_3/Protocol1_20_2To1_20_3.java | 10 ++++++++-- common/src/main/resources/assets/viaversion/config.yml | 3 +++ 4 files changed, 25 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/com/viaversion/viaversion/api/configuration/ViaVersionConfig.java b/api/src/main/java/com/viaversion/viaversion/api/configuration/ViaVersionConfig.java index bd7491a68..16406afc3 100644 --- a/api/src/main/java/com/viaversion/viaversion/api/configuration/ViaVersionConfig.java +++ b/api/src/main/java/com/viaversion/viaversion/api/configuration/ViaVersionConfig.java @@ -464,4 +464,11 @@ public interface ViaVersionConfig extends Config { * @return true if enabled */ boolean cancelBlockSounds(); + + /** + * Hides scoreboard numbers for 1.20.3+ clients on older server versions. + * + * @return true if enabled + */ + boolean hideScoreboardNumbers(); } diff --git a/common/src/main/java/com/viaversion/viaversion/configuration/AbstractViaConfig.java b/common/src/main/java/com/viaversion/viaversion/configuration/AbstractViaConfig.java index 22545608f..3f32e31cc 100644 --- a/common/src/main/java/com/viaversion/viaversion/configuration/AbstractViaConfig.java +++ b/common/src/main/java/com/viaversion/viaversion/configuration/AbstractViaConfig.java @@ -94,6 +94,7 @@ public abstract class AbstractViaConfig extends Config implements ViaVersionConf private boolean enforceSecureChat; private boolean handleInvalidItemCount; private boolean cancelBlockSounds; + private boolean hideScoreboardNumbers; protected AbstractViaConfig(final File configFile, final Logger logger) { super(configFile, logger); @@ -161,6 +162,7 @@ public abstract class AbstractViaConfig extends Config implements ViaVersionConf enforceSecureChat = getBoolean("enforce-secure-chat", false); handleInvalidItemCount = getBoolean("handle-invalid-item-count", false); cancelBlockSounds = getBoolean("cancel-block-sounds", true); + hideScoreboardNumbers = getBoolean("hide-scoreboard-numbers", false); } private BlockedProtocolVersions loadBlockedProtocolVersions() { @@ -542,4 +544,9 @@ public abstract class AbstractViaConfig extends Config implements ViaVersionConf public boolean cancelBlockSounds() { return cancelBlockSounds; } + + @Override + public boolean hideScoreboardNumbers() { + return hideScoreboardNumbers; + } } diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/v1_20_2to1_20_3/Protocol1_20_2To1_20_3.java b/common/src/main/java/com/viaversion/viaversion/protocols/v1_20_2to1_20_3/Protocol1_20_2To1_20_3.java index f0397f9a1..5a4ee580b 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/v1_20_2to1_20_3/Protocol1_20_2To1_20_3.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/v1_20_2to1_20_3/Protocol1_20_2To1_20_3.java @@ -17,6 +17,7 @@ */ package com.viaversion.viaversion.protocols.v1_20_2to1_20_3; +import com.viaversion.viaversion.api.Via; import com.viaversion.viaversion.api.connection.UserConnection; import com.viaversion.viaversion.api.data.MappingData; import com.viaversion.viaversion.api.data.MappingDataBase; @@ -107,8 +108,13 @@ public final class Protocol1_20_2To1_20_3 extends AbstractProtocol