AltitudeBot/src/main/java/com/alttd/util/OptionMappingParsing.java
2022-09-14 21:36:43 +02:00

34 lines
1.9 KiB
Java

package com.alttd.util;
import net.dv8tion.jda.api.entities.channel.middleman.GuildMessageChannel;
import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEvent;
import net.dv8tion.jda.api.interactions.commands.OptionMapping;
public class OptionMappingParsing {
public static String getString(String optionName, SlashCommandInteractionEvent event, String commandName) {
OptionMapping optionMappingString = event.getInteraction().getOption(optionName);
String text = optionMappingString == null ? null : optionMappingString.getAsString();
if (text == null)
event.replyEmbeds(Util.invalidCommand(commandName, "Not a valid string or didn't give input for " + optionName, event.getInteraction())).setEphemeral(true).queue();
return text;
}
public static GuildMessageChannel getGuildChannel(String optionName, SlashCommandInteractionEvent event, String commandName) {
OptionMapping optionMappingChannel = event.getInteraction().getOption(optionName);
GuildMessageChannel messageChannel = optionMappingChannel == null ? null : optionMappingChannel.getAsChannel().asGuildMessageChannel();
if (messageChannel == null)
event.replyEmbeds(Util.invalidCommand(commandName, "Not a valid text channel or didn't give input for " + optionName, event.getInteraction())).setEphemeral(true).queue();
return messageChannel;
}
public static Long getLong(String optionName, SlashCommandInteractionEvent event, String commandName) {
OptionMapping optionMappingLong = event.getInteraction().getOption(optionName);
if (optionMappingLong == null) {
event.replyEmbeds(Util.invalidCommand(commandName, "Not a valid number or didn't give input for " + optionName, event.getInteraction())).setEphemeral(true).queue();
return null;
}
return optionMappingLong.getAsLong();
}
}