Modules!
This commit is contained in:
60
src/main/java/net/nevet5gi/buzzbot/commands/SetRoleCmd.java
Normal file
60
src/main/java/net/nevet5gi/buzzbot/commands/SetRoleCmd.java
Normal file
@@ -0,0 +1,60 @@
|
||||
package net.nevet5gi.buzzbot.commands;
|
||||
|
||||
import net.dv8tion.jda.api.interactions.commands.OptionType;
|
||||
import net.dv8tion.jda.api.interactions.commands.build.CommandData;
|
||||
import net.dv8tion.jda.api.interactions.commands.build.OptionData;
|
||||
import net.nevet5gi.buzzbot.commands.utils.CommandContext;
|
||||
import net.nevet5gi.buzzbot.commands.utils.ISlashCommand;
|
||||
import net.nevet5gi.buzzbot.database.SqlDB;
|
||||
import net.nevet5gi.buzzbot.objects.ModRoles;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class SetRoleCmd implements ISlashCommand {
|
||||
@Override
|
||||
public String getName() {
|
||||
return "setrole";
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getPermissionLevel() {
|
||||
return 4;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getHelp() {
|
||||
return "Sets the role id for the moderation roles";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleSlash(CommandContext ctx) {
|
||||
SqlDB sql = new SqlDB();
|
||||
sql.updateGuildRole(ctx.getGuild().getIdLong(), ctx.getSlashEvent().getOption("role").getAsString(), ctx.getSlashEvent().getOption("guild_role").getAsRole().getIdLong());
|
||||
sql.close();
|
||||
ctx.getHook().sendMessage("Assigned role <@&" + ctx.getSlashEvent().getOption("guild_role").getAsRole().getId() + "> to " + ctx.getSlashEvent().getOption("role").getAsString()).queue();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDescription() {
|
||||
return this.getHelp();
|
||||
}
|
||||
|
||||
@Override
|
||||
public CommandData getCommandData() {
|
||||
List<OptionData> options = new ArrayList<>();
|
||||
|
||||
OptionData role = new OptionData(OptionType.STRING, "role", "Role assigned to moderation roles", true);
|
||||
role.addChoice("helper", ModRoles.HELPER.getRole());
|
||||
role.addChoice("moderator", ModRoles.MODERATOR.getRole());
|
||||
role.addChoice("administrator", ModRoles.ADMINISTRATOR.getRole());
|
||||
role.addChoice("owner", ModRoles.OWNER.getRole());
|
||||
options.add(role);
|
||||
|
||||
OptionData guildRole = new OptionData(OptionType.ROLE, "guild_role", "Mentioned role to assign", true);
|
||||
options.add(guildRole);
|
||||
|
||||
return new CommandData(this.getName(), this.getDescription())
|
||||
.addOptions(options);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user