From 8dc165952a8c11594947e6503826e17bd9377174 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Sat, 17 Oct 2026 22:41:48 +0200 Subject: [PATCH] Optionally drop chat locally when the proxy distributes it (velocity.chat-via-proxy) --- .../minigames/handler/global/ChatFormatHandler.java | 8 ++++++++ src/main/resources/config.yml | 2 ++ 2 files changed, 10 insertions(+) diff --git a/src/main/java/eu/mhsl/minenet/minigames/handler/global/ChatFormatHandler.java b/src/main/java/eu/mhsl/minenet/minigames/handler/global/ChatFormatHandler.java index 94ea02b..72c251a 100644 --- a/src/main/java/eu/mhsl/minenet/minigames/handler/global/ChatFormatHandler.java +++ b/src/main/java/eu/mhsl/minenet/minigames/handler/global/ChatFormatHandler.java @@ -1,5 +1,6 @@ package eu.mhsl.minenet.minigames.handler.global; +import eu.mhsl.minenet.minigames.Main; import eu.mhsl.minenet.minigames.message.Icon; import eu.mhsl.minenet.minigames.message.type.ChatMessage; import net.kyori.adventure.text.Component; @@ -9,6 +10,9 @@ import net.minestom.server.event.player.PlayerChatEvent; import org.jetbrains.annotations.NotNull; public class ChatFormatHandler implements EventListener { + // Verteilt der Proxy den Chat (chat-bridge bei CraftAttack), darf er hier nicht noch einmal erscheinen + private final boolean chatViaProxy = Main.globalConfig.node("velocity", "chat-via-proxy").getBoolean(false); + @Override public @NotNull Class eventType() { return PlayerChatEvent.class; @@ -16,6 +20,10 @@ public class ChatFormatHandler implements EventListener { @Override public @NotNull Result run(@NotNull PlayerChatEvent event) { + if(this.chatViaProxy) { + event.setCancelled(true); + return Result.SUCCESS; + } NamedTextColor color = event.getPlayer().getPermissionLevel() > 0 ? NamedTextColor.AQUA : NamedTextColor.GRAY; event.setFormattedMessage( new ChatMessage(Icon.CHAT) diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 39956b0..f7c93d6 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -9,6 +9,8 @@ bungeecord: velocity: enabled: false + # Chat nur über den Proxy verteilen, hier verwerfen (chat-bridge) + chat-via-proxy: false secret: '' api: