This commit updates the handling of JDA interactions to use the latest available methods and classes. Classes such as Modal and SelectMenu have been refactored and updated with new package locations. This change also includes adjustments for event handling where methods dealing with SelectMenuInteractionEvent are updated to GenericSelectMenuInteractionEvent and StringSelectInteractionEvent. Finally, minor changes were made to replace the use of some javax annotations with their JetBrains equivalents.
66 lines
2.3 KiB
Java
66 lines
2.3 KiB
Java
package com.alttd.commandManager.commands;
|
|
|
|
import com.alttd.commandManager.CommandManager;
|
|
import com.alttd.commandManager.DiscordCommand;
|
|
import com.alttd.config.MessagesConfig;
|
|
import com.alttd.modalManager.ModalManager;
|
|
import com.alttd.util.Util;
|
|
import net.dv8tion.jda.api.JDA;
|
|
import net.dv8tion.jda.api.events.interaction.command.CommandAutoCompleteInteractionEvent;
|
|
import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEvent;
|
|
import net.dv8tion.jda.api.interactions.commands.DefaultMemberPermissions;
|
|
import net.dv8tion.jda.api.interactions.commands.build.CommandData;
|
|
import net.dv8tion.jda.api.interactions.commands.build.Commands;
|
|
import net.dv8tion.jda.api.interactions.modals.Modal;
|
|
import net.dv8tion.jda.api.requests.RestAction;
|
|
|
|
import java.util.Collections;
|
|
|
|
public class CommandEvidence extends DiscordCommand {
|
|
|
|
private final CommandData commandData;
|
|
private final ModalManager modalManager;
|
|
|
|
public CommandEvidence(JDA jda, ModalManager modalManager, CommandManager commandManager) {
|
|
this.modalManager = modalManager;
|
|
|
|
commandData = Commands.slash(getName(), "Open suggestion form.")
|
|
.setDefaultPermissions(DefaultMemberPermissions.DISABLED)
|
|
.setGuildOnly(true);
|
|
Util.registerCommand(commandManager, jda, commandData, getName());
|
|
}
|
|
|
|
@Override
|
|
public String getName() {
|
|
return "evidence";
|
|
}
|
|
|
|
@Override
|
|
public void execute(SlashCommandInteractionEvent event) {
|
|
Modal modal = modalManager.getModalFor("evidence");
|
|
if (modal == null) {
|
|
event.replyEmbeds(Util.genericErrorEmbed("Error",
|
|
"Unable to find evidence modal."))
|
|
.setEphemeral(true).queue(RestAction.getDefaultSuccess(), Util::handleFailure);
|
|
return;
|
|
}
|
|
event.replyModal(modal).queue(RestAction.getDefaultSuccess(), Util::handleFailure);
|
|
}
|
|
|
|
@Override
|
|
public void suggest(CommandAutoCompleteInteractionEvent event) {
|
|
event.replyChoices(Collections.emptyList())
|
|
.queue(RestAction.getDefaultSuccess(), Util::handleFailure);
|
|
}
|
|
|
|
@Override
|
|
public String getHelpMessage() {
|
|
return MessagesConfig.HELP_SUGGESTION;
|
|
}
|
|
|
|
@Override
|
|
public CommandData getCommandData() {
|
|
return commandData;
|
|
}
|
|
}
|