2022-03-31 20:08:50 +00:00
package com.alttd.util ;
2022-09-14 19:36:43 +00:00
import net.dv8tion.jda.api.entities.channel.middleman.GuildMessageChannel ;
2022-03-31 20:08:50 +00:00
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 ;
}
2022-09-14 19:36:43 +00:00
public static GuildMessageChannel getGuildChannel ( String optionName , SlashCommandInteractionEvent event , String commandName ) {
2022-03-31 20:08:50 +00:00
OptionMapping optionMappingChannel = event . getInteraction ( ) . getOption ( optionName ) ;
2022-09-14 19:36:43 +00:00
GuildMessageChannel messageChannel = optionMappingChannel = = null ? null : optionMappingChannel . getAsChannel ( ) . asGuildMessageChannel ( ) ;
2022-03-31 20:08:50 +00:00
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 ( ) ;
}
}