From 855ddd06490f53c1a409eddb3a7d59e91304905b Mon Sep 17 00:00:00 2001 From: HypherionMC Date: Thu, 23 Nov 2023 00:23:13 +0200 Subject: [PATCH] [BUG] Don't send error replies when the command actually succeeded --- gradle.properties | 2 +- .../slash/verification/UnverifyAccountSlashCommand.java | 6 +++++- .../commands/slash/verification/VerifyAccountCommand.java | 8 ++++++-- .../sdlink/core/discord/hooks/DiscordMessageHooks.java | 8 ++------ 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/gradle.properties b/gradle.properties index 51db38e..6973081 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,6 +1,6 @@ version_major=0 version_minor=0 -version_patch=55 +version_patch=56 shade_group=com.hypherionmc.sdlink.shaded. diff --git a/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/UnverifyAccountSlashCommand.java b/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/UnverifyAccountSlashCommand.java index 34eb5b7..91776eb 100644 --- a/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/UnverifyAccountSlashCommand.java +++ b/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/UnverifyAccountSlashCommand.java @@ -34,16 +34,20 @@ public class UnverifyAccountSlashCommand extends SDLinkSlashCommand { return; } + boolean didUnverify = false; + for (SDLinkAccount account : accounts) { if (account.getDiscordID() != null && account.getDiscordID().equalsIgnoreCase(event.getMember().getId())) { MinecraftAccount minecraftAccount = MinecraftAccount.of(account.getUsername()); Result result = minecraftAccount.unverifyAccount(event.getMember(), event.getGuild()); event.getHook().sendMessage(result.getMessage()).setEphemeral(true).queue(); + didUnverify = true; break; } } - event.getHook().sendMessage("Sorry, we could not un-verify your Minecraft account. Please try again").setEphemeral(true).queue(); + if (!didUnverify) + event.getHook().sendMessage("Sorry, we could not un-verify your Minecraft account. Please try again").setEphemeral(true).queue(); } } \ No newline at end of file diff --git a/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/VerifyAccountCommand.java b/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/VerifyAccountCommand.java index f7cefda..3cea32f 100644 --- a/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/VerifyAccountCommand.java +++ b/src/main/java/com/hypherionmc/sdlink/core/discord/commands/slash/verification/VerifyAccountCommand.java @@ -47,6 +47,8 @@ public class VerifyAccountCommand extends SDLinkSlashCommand { return; } + boolean didVerify = false; + for (SDLinkAccount account : accounts) { if (account.getVerifyCode() == null) continue; @@ -55,11 +57,13 @@ public class VerifyAccountCommand extends SDLinkSlashCommand { MinecraftAccount minecraftAccount = MinecraftAccount.of(account.getUsername()); Result result = minecraftAccount.verifyAccount(event.getMember(), event.getGuild()); event.getHook().sendMessage(result.getMessage()).setEphemeral(true).queue(); - return; + didVerify = true; + break; } } - event.getHook().sendMessage("Sorry, we could not verify your Minecraft account. Please try again").setEphemeral(true).queue(); + if (!didVerify) + event.getHook().sendMessage("Sorry, we could not verify your Minecraft account. Please try again").setEphemeral(true).queue(); } } \ No newline at end of file diff --git a/src/main/java/com/hypherionmc/sdlink/core/discord/hooks/DiscordMessageHooks.java b/src/main/java/com/hypherionmc/sdlink/core/discord/hooks/DiscordMessageHooks.java index a7e3de3..8487c87 100644 --- a/src/main/java/com/hypherionmc/sdlink/core/discord/hooks/DiscordMessageHooks.java +++ b/src/main/java/com/hypherionmc/sdlink/core/discord/hooks/DiscordMessageHooks.java @@ -47,12 +47,8 @@ public class DiscordMessageHooks { if (message.isEmpty()) return; - if (event.getMessage().getReferencedMessage() != null && event.getMessage().getMember() != null) { - if (event.getMessage().isWebhookMessage()) { - message = "Replied to " + event.getMessage().getReferencedMessage().getAuthor().getEffectiveName() + ": " + message; - } else { - message = "Replied to " + event.getMessage().getReferencedMessage().getMember().getEffectiveName() + ": " + message; - } + if (event.getMessage().getReferencedMessage() != null && event.getMessage().getMember() != null && !event.getMessage().isWebhookMessage()) { + message = "Replied to " + event.getMessage().getReferencedMessage().getMember().getEffectiveName() + ": " + message; } SDLinkPlatform.minecraftHelper.discordMessageReceived(event.getMember(), message);