Skip to content

Commit d08ff9a

Browse files
committed
Error handle and use components for fancy responses
1 parent e89925d commit d08ff9a

File tree

1 file changed

+19
-2
lines changed

1 file changed

+19
-2
lines changed

src/main/java/org/geysermc/discordbot/listeners/ExploitHandler.java

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import net.dv8tion.jda.api.EmbedBuilder;
2929
import net.dv8tion.jda.api.components.actionrow.ActionRow;
3030
import net.dv8tion.jda.api.components.buttons.Button;
31-
import net.dv8tion.jda.api.components.buttons.ButtonStyle;
3231
import net.dv8tion.jda.api.components.container.Container;
3332
import net.dv8tion.jda.api.components.separator.Separator;
3433
import net.dv8tion.jda.api.components.textdisplay.TextDisplay;
@@ -80,6 +79,15 @@ public void onModalInteraction(@NotNull ModalInteractionEvent event) {
8079
// Create a thread for the exploit report
8180
ThreadChannel reportThread = event.getChannel().asTextChannel().createThreadChannel(title, true).complete();
8281

82+
if (reportThread == null) {
83+
event.replyEmbeds(new EmbedBuilder()
84+
.setTitle("Error")
85+
.setDescription("Failed to create a thread for the exploit report. Please try again later.")
86+
.setColor(BotColors.FAILURE.getColor())
87+
.build()).setEphemeral(true).queue();
88+
return;
89+
}
90+
8391
reportThread.sendMessageEmbeds(new EmbedBuilder()
8492
.setTitle(title)
8593
.setDescription(description)
@@ -103,6 +111,15 @@ public void onModalInteraction(@NotNull ModalInteractionEvent event) {
103111
.queue();
104112
}
105113

106-
event.reply("Thank you for reporting the exploit! We have created a thread for you at " + reportThread.getJumpUrl()).setEphemeral(true).queue();
114+
event.replyComponents(Container.of(
115+
TextDisplay.of("## Exploit Report Created"),
116+
TextDisplay.of("Your exploit report has been successfully created."),
117+
TextDisplay.of("Thank you for helping us improve Geyser!"),
118+
Separator.createDivider(Separator.Spacing.SMALL),
119+
ActionRow.of(Button.link(reportThread.getJumpUrl(), "Go to thread"))
120+
).withAccentColor(BotColors.SUCCESS.getColor()))
121+
.setEphemeral(true)
122+
.useComponentsV2()
123+
.queue();
107124
}
108125
}

0 commit comments

Comments
 (0)