From bb4ff97017298121dc908d739ab7425b1db2a44f Mon Sep 17 00:00:00 2001 From: ChomeNS <95471003+ChomeNS@users.noreply.github.com> Date: Fri, 30 Jun 2023 21:47:44 +0700 Subject: [PATCH] fix error (mabe)? --- .../chomens_bot/plugins/ChatPlugin.java | 84 ++++++++++--------- .../chomens_bot/plugins/FilterPlugin.java | 2 + 2 files changed, 46 insertions(+), 40 deletions(-) diff --git a/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/ChatPlugin.java b/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/ChatPlugin.java index 4d6d016f..7bdac3c3 100644 --- a/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/ChatPlugin.java +++ b/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/ChatPlugin.java @@ -154,57 +154,61 @@ public class ChatPlugin extends Bot.Listener { } public void packetReceived (ClientboundDisguisedChatPacket packet) { - final String translation = getTranslationByChatType(packet.getChatType()); + try { + final String translation = getTranslationByChatType(packet.getChatType()); - final Component component = packet.getMessage(); + final Component component = packet.getMessage(); - PlayerMessage parsedFromMessage = null; - - for (ChatParser parser : chatParsers) { - parsedFromMessage = parser.parse(component); - if (parsedFromMessage != null) break; - } - - if (translation != null && parsedFromMessage == null) { - final Component name = packet.getName(); - final Component content = packet.getMessage(); - - TranslatableComponent translatableComponent = Component.translatable(translation); - - if (translation.equals("chat.type.team.text") || translation.equals("chat.type.team.sent")) { // ohio - translatableComponent = translatableComponent.args( - Component.empty(), // TODO: fix team name.,., - name, - content - ); - } else { - translatableComponent = translatableComponent.args(name, content); - } - - for (Listener listener : listeners) { - listener.systemMessageReceived(translatableComponent); - } + PlayerMessage parsedFromMessage = null; for (ChatParser parser : chatParsers) { - final PlayerMessage parsed = parser.parse(translatableComponent); + parsedFromMessage = parser.parse(component); + if (parsedFromMessage != null) break; + } - if (parsed == null) continue; + if (translation != null && parsedFromMessage == null) { + final Component name = packet.getName(); + final Component content = packet.getMessage(); - final PlayerMessage playerMessage = new PlayerMessage(parsed.sender(), packet.getName(), parsed.contents()); + TranslatableComponent translatableComponent = Component.translatable(translation); + + if (translation.equals("chat.type.team.text") || translation.equals("chat.type.team.sent")) { // ohio + translatableComponent = translatableComponent.args( + Component.empty(), // TODO: fix team name.,., + name, + content + ); + } else { + translatableComponent = translatableComponent.args(name, content); + } + + for (Listener listener : listeners) { + listener.systemMessageReceived(translatableComponent); + } + + for (ChatParser parser : chatParsers) { + final PlayerMessage parsed = parser.parse(translatableComponent); + + if (parsed == null) continue; + + final PlayerMessage playerMessage = new PlayerMessage(parsed.sender(), packet.getName(), parsed.contents()); + + for (Listener listener : listeners) { + listener.playerMessageReceived(playerMessage); + } + } + } else { + if (parsedFromMessage == null) return; + + final PlayerMessage playerMessage = new PlayerMessage(parsedFromMessage.sender(), packet.getName(), parsedFromMessage.contents()); for (Listener listener : listeners) { listener.playerMessageReceived(playerMessage); + listener.systemMessageReceived(component); } } - } else { - if (parsedFromMessage == null) return; - - final PlayerMessage playerMessage = new PlayerMessage(parsedFromMessage.sender(), packet.getName(), parsedFromMessage.contents()); - - for (Listener listener : listeners) { - listener.playerMessageReceived(playerMessage); - listener.systemMessageReceived(component); - } + } catch (Exception e) { + e.printStackTrace(); } } diff --git a/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/FilterPlugin.java b/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/FilterPlugin.java index f57d864f..8687c9e1 100644 --- a/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/FilterPlugin.java +++ b/src/main/java/land/chipmunk/chayapak/chomens_bot/plugins/FilterPlugin.java @@ -113,6 +113,8 @@ public class FilterPlugin extends PlayersPlugin.Listener { } public void playerMessageReceived (PlayerMessage message) { + if (message.sender().profile().getName() == null) return; + final FilteredPlayer player = getPlayer(message.sender().profile().getName()); if (player == null) return;