From 97152d7bd0c8baf2d971b1d52ad2a851b045c306 Mon Sep 17 00:00:00 2001 From: ChomeNS <95471003+ChomeNS@users.noreply.github.com> Date: Mon, 14 Apr 2025 09:07:41 +0700 Subject: [PATCH] refactor: change command handler `executeCommand` signature to be more clean --- build-number.txt | 2 +- .../chomens_bot/chomeNSMod/PacketHandler.java | 2 +- .../command/contexts/DiscordCommandContext.java | 2 +- .../chomens_bot/commands/NetCommandCommand.java | 2 +- .../discord/GuildMessageEventHandler.java | 2 +- .../plugins/ChatCommandHandlerPlugin.java | 2 +- .../chomens_bot/plugins/CommandHandlerPlugin.java | 15 ++++++++++++--- .../chomens_bot/plugins/ConsolePlugin.java | 2 +- .../chayapak1/chomens_bot/plugins/IRCPlugin.java | 2 +- 9 files changed, 20 insertions(+), 11 deletions(-) diff --git a/build-number.txt b/build-number.txt index 5ba2c9b7..a08fb8e1 100644 --- a/build-number.txt +++ b/build-number.txt @@ -1 +1 @@ -2684 \ No newline at end of file +2687 \ No newline at end of file diff --git a/src/main/java/me/chayapak1/chomens_bot/chomeNSMod/PacketHandler.java b/src/main/java/me/chayapak1/chomens_bot/chomeNSMod/PacketHandler.java index 89025c2f..3c1e9d93 100644 --- a/src/main/java/me/chayapak1/chomens_bot/chomeNSMod/PacketHandler.java +++ b/src/main/java/me/chayapak1/chomens_bot/chomeNSMod/PacketHandler.java @@ -58,6 +58,6 @@ public class PacketHandler { player ); - bot.commandHandler.executeCommand(input, context, null); + bot.commandHandler.executeCommand(input, context); } } diff --git a/src/main/java/me/chayapak1/chomens_bot/command/contexts/DiscordCommandContext.java b/src/main/java/me/chayapak1/chomens_bot/command/contexts/DiscordCommandContext.java index 80c14e68..5d76be8a 100644 --- a/src/main/java/me/chayapak1/chomens_bot/command/contexts/DiscordCommandContext.java +++ b/src/main/java/me/chayapak1/chomens_bot/command/contexts/DiscordCommandContext.java @@ -18,7 +18,7 @@ import java.awt.*; import java.nio.charset.StandardCharsets; public class DiscordCommandContext extends CommandContext { - private final MessageReceivedEvent event; + public final MessageReceivedEvent event; private final Bot bot; diff --git a/src/main/java/me/chayapak1/chomens_bot/commands/NetCommandCommand.java b/src/main/java/me/chayapak1/chomens_bot/commands/NetCommandCommand.java index dedbe692..18039567 100644 --- a/src/main/java/me/chayapak1/chomens_bot/commands/NetCommandCommand.java +++ b/src/main/java/me/chayapak1/chomens_bot/commands/NetCommandCommand.java @@ -61,7 +61,7 @@ public class NetCommandCommand extends Command { final CommandContext remoteContext = new RemoteCommandContext(bot, context); - context.bot.commandHandler.executeCommand(command, remoteContext, null); + context.bot.commandHandler.executeCommand(command, remoteContext); } return null; diff --git a/src/main/java/me/chayapak1/chomens_bot/discord/GuildMessageEventHandler.java b/src/main/java/me/chayapak1/chomens_bot/discord/GuildMessageEventHandler.java index 2064e937..0c10b43d 100644 --- a/src/main/java/me/chayapak1/chomens_bot/discord/GuildMessageEventHandler.java +++ b/src/main/java/me/chayapak1/chomens_bot/discord/GuildMessageEventHandler.java @@ -61,7 +61,7 @@ public class GuildMessageEventHandler extends ListenerAdapter { if (messageString.startsWith(prefix)) { final DiscordCommandContext context = new DiscordCommandContext(bot, prefix, event); - bot.commandHandler.executeCommand(messageString.substring(prefix.length()), context, event); + bot.commandHandler.executeCommand(messageString.substring(prefix.length()), context); return; } diff --git a/src/main/java/me/chayapak1/chomens_bot/plugins/ChatCommandHandlerPlugin.java b/src/main/java/me/chayapak1/chomens_bot/plugins/ChatCommandHandlerPlugin.java index 4631b47d..fddde916 100644 --- a/src/main/java/me/chayapak1/chomens_bot/plugins/ChatCommandHandlerPlugin.java +++ b/src/main/java/me/chayapak1/chomens_bot/plugins/ChatCommandHandlerPlugin.java @@ -98,6 +98,6 @@ public class ChatCommandHandlerPlugin implements ChatPlugin.Listener, CommandSpy packetType ); - bot.commandHandler.executeCommand(commandString, context, null); + bot.commandHandler.executeCommand(commandString, context); } } diff --git a/src/main/java/me/chayapak1/chomens_bot/plugins/CommandHandlerPlugin.java b/src/main/java/me/chayapak1/chomens_bot/plugins/CommandHandlerPlugin.java index 7c43e14e..3846fe7a 100644 --- a/src/main/java/me/chayapak1/chomens_bot/plugins/CommandHandlerPlugin.java +++ b/src/main/java/me/chayapak1/chomens_bot/plugins/CommandHandlerPlugin.java @@ -108,11 +108,20 @@ public class CommandHandlerPlugin implements TickPlugin.Listener { // though it can also be as low as 4000 ns) public void executeCommand ( final String input, - final CommandContext context, - final MessageReceivedEvent event + final CommandContext context ) { final boolean inGame = context instanceof PlayerCommandContext; - final boolean discord = context instanceof DiscordCommandContext; + + final boolean discord; + final MessageReceivedEvent event; + + if (context instanceof final DiscordCommandContext discordContext) { + discord = true; + event = discordContext.event; + } else { + discord = false; + event = null; + } final boolean bypass = context instanceof ConsoleCommandContext || context instanceof ChomeNSModCommandContext; diff --git a/src/main/java/me/chayapak1/chomens_bot/plugins/ConsolePlugin.java b/src/main/java/me/chayapak1/chomens_bot/plugins/ConsolePlugin.java index 893c7fb7..782a7fd8 100644 --- a/src/main/java/me/chayapak1/chomens_bot/plugins/ConsolePlugin.java +++ b/src/main/java/me/chayapak1/chomens_bot/plugins/ConsolePlugin.java @@ -95,7 +95,7 @@ public class ConsolePlugin implements Completer { if (line.startsWith(prefix)) { final ConsoleCommandContext context = new ConsoleCommandContext(bot, prefix); - bot.commandHandler.executeCommand(line.substring(prefix.length()), context, null); + bot.commandHandler.executeCommand(line.substring(prefix.length()), context); continue; } diff --git a/src/main/java/me/chayapak1/chomens_bot/plugins/IRCPlugin.java b/src/main/java/me/chayapak1/chomens_bot/plugins/IRCPlugin.java index 17e451c9..6b59b9af 100644 --- a/src/main/java/me/chayapak1/chomens_bot/plugins/IRCPlugin.java +++ b/src/main/java/me/chayapak1/chomens_bot/plugins/IRCPlugin.java @@ -123,7 +123,7 @@ public class IRCPlugin extends ListenerAdapter { final IRCCommandContext context = new IRCCommandContext(serverBot, commandPrefix, name); - serverBot.commandHandler.executeCommand(noPrefix, context, null); + serverBot.commandHandler.executeCommand(noPrefix, context); return; }