Skip to content

Commit 6f7c4f5

Browse files
committed
Added some extra information for command execution handling...
1 parent 020f30f commit 6f7c4f5

2 files changed

Lines changed: 26 additions & 8 deletions

File tree

src/main/java/org/mangorage/mangobotplugin/BotEventListener.java

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,12 @@ public void onMessageReceived(MessageReceivedEvent event) {
6666

6767

6868
if (isSilent || rawMessage.startsWith(cmdPrefix)) {
69+
final long cmdStart = System.currentTimeMillis();
6970
final var cmdParseResult = new CommandParseResult(); // TODO: Do something with this when we convert to new cmd system!
7071
final var dispatcher = mangoBot.getCommandDispatcher();
72+
73+
event.getChannel().sendTyping().queue(); // Let people know the command is executing!
74+
7175
final var result = dispatcher.execute(
7276
isSilent ? rawMessage.replaceFirst(silentPrefix, "") : rawMessage.replaceFirst(cmdPrefix, ""),
7377
message,
@@ -79,13 +83,8 @@ public void onMessageReceived(MessageReceivedEvent event) {
7983
event.getMessage().reply(result.getMessage()).queue();
8084

8185
if (isSilent)
82-
TaskScheduler.getExecutor().schedule(
83-
() -> {
84-
message.delete().queue();
85-
},
86-
250,
87-
TimeUnit.MILLISECONDS
88-
);
86+
message.delete().queueAfter(250, TimeUnit.MILLISECONDS);
87+
8988
} else {
9089
String[] command_pre = rawMessage.split(" ");
9190
Arguments arguments = Arguments.of(Arrays.copyOfRange(command_pre, 1, command_pre.length));
@@ -105,6 +104,13 @@ public void onMessageReceived(MessageReceivedEvent event) {
105104
String.join("\n", cmdParseResult.getMessages())
106105
).queue();
107106
}
107+
108+
final var cmdEnd = System.currentTimeMillis() - cmdStart;
109+
message.reply(
110+
"Took: %sms to process command request!".formatted(cmdEnd)
111+
).queue(m -> {
112+
m.delete().queueAfter(5, TimeUnit.SECONDS);
113+
});
108114
}
109115
}
110116

src/main/java/org/mangorage/mangobotplugin/entrypoint/MangoBot.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import net.dv8tion.jda.api.entities.Activity;
77
import net.dv8tion.jda.api.entities.Message;
88
import net.dv8tion.jda.api.hooks.AnnotatedEventManager;
9+
import net.dv8tion.jda.api.interactions.commands.build.Commands;
910
import net.dv8tion.jda.api.requests.GatewayIntent;
1011
import net.dv8tion.jda.api.utils.MemberCachePolicy;
1112
import net.dv8tion.jda.api.utils.cache.CacheFlag;
@@ -114,11 +115,13 @@ public void load() {
114115

115116
getJDA().addEventListener(new BotEventListener(this));
116117

118+
registerSlashCommands();
119+
117120
jda.updateCommands()
118121
.addCommands(
119122
Command.globalCommands
120123
).queue();
121-
124+
122125
System.out.println("Launched");
123126
}
124127

@@ -145,4 +148,13 @@ public MessageSettings getMessageSettings() {
145148
public TrickManager getTrickManager() {
146149
return trickManager;
147150
}
151+
152+
void registerSlashCommands() {
153+
Command.slash("flipper", "flips things")
154+
.executes(listener -> {
155+
listener.getMessageChannel().sendTyping().queue();
156+
listener.getMessageChannel().sendMessage("You flipped a rock and exploded the universe!").queue();
157+
})
158+
.buildAndRegister();
159+
}
148160
}

0 commit comments

Comments
 (0)