enum-ified command categories
This commit is contained in:
parent
cfb60cc8d6
commit
7d0fbe37d4
@ -2,10 +2,7 @@ package dev.salmonllama.fsbot.commands.developer;
|
||||
|
||||
import dev.salmonllama.fsbot.database.controllers.UserBlacklistController;
|
||||
import dev.salmonllama.fsbot.database.models.UserBlacklist;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
import java.util.Arrays;
|
||||
@ -15,7 +12,7 @@ public class BlacklistUserCommand extends Command {
|
||||
@Override public String name() { return "Blacklist User"; }
|
||||
@Override public String description() { return "Adds the user to the bot's blacklist, preventing them from using any commands or features"; }
|
||||
@Override public String usage() { return "blacklistuser <userId> <reason>"; }
|
||||
@Override public String category() { return "Developer"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.DEVELOPER; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "owner"); }
|
||||
@Override public Collection<String> aliases() { return Arrays.asList("blacklistuser", "bluser", "sabusr"); }
|
||||
|
||||
|
@ -10,10 +10,7 @@ import com.vdurmont.emoji.EmojiParser;
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.database.controllers.GalleryController;
|
||||
import dev.salmonllama.fsbot.database.models.GalleryChannel;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
import org.javacord.api.util.logging.ExceptionLogger;
|
||||
|
||||
@ -26,7 +23,7 @@ public class CreateGalleryCommand extends Command { // TODO: This command needs
|
||||
@Override public String name() { return "Create Gallery"; }
|
||||
@Override public String description() { return "Creates a channel gallery, tracking any posted images"; }
|
||||
@Override public String usage() { return "creategallery <String tag>"; }
|
||||
@Override public String category() { return "Developer"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.DEVELOPER; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "owner"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("creategallery", "addgallery", "newgallery")); }
|
||||
|
||||
|
@ -1,9 +1,6 @@
|
||||
package dev.salmonllama.fsbot.commands.developer;
|
||||
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
import java.util.Collection;
|
||||
@ -13,7 +10,7 @@ public class DefaultCommand extends Command {
|
||||
@Override public String name() { return "Default"; }
|
||||
@Override public String description() { return "The command that gets invoked when the prefix is used, but the command is not recognized"; }
|
||||
@Override public String usage() { return "you don't use this command"; }
|
||||
@Override public String category() { return "Invisible"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.DEVELOPER; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.OWNER); }
|
||||
@Override public Collection<String> aliases() { return Collections.singletonList("default"); }
|
||||
|
||||
|
@ -5,10 +5,7 @@
|
||||
|
||||
package dev.salmonllama.fsbot.commands.developer;
|
||||
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.DiscordApi;
|
||||
import org.javacord.api.entity.channel.TextChannel;
|
||||
|
||||
@ -20,7 +17,7 @@ public class InviteCommand extends Command {
|
||||
@Override public String name() { return "Invite"; }
|
||||
@Override public String description() { return "Spits out a bot invite"; }
|
||||
@Override public String usage() { return "invite"; }
|
||||
@Override public String category() { return "Developer"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.DEVELOPER; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "owner"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("invite", "inv")); }
|
||||
|
||||
|
@ -7,10 +7,7 @@ package dev.salmonllama.fsbot.commands.developer;
|
||||
|
||||
import dev.salmonllama.fsbot.database.controllers.StaticPermissionController;
|
||||
import dev.salmonllama.fsbot.database.models.StaticPermission;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
import org.javacord.api.entity.user.User;
|
||||
import org.javacord.api.util.logging.ExceptionLogger;
|
||||
@ -24,7 +21,7 @@ public class PermissionCommand extends Command {
|
||||
@Override public String name() { return "Permission"; }
|
||||
@Override public String description() { return "Manages a user's static permissions"; }
|
||||
@Override public String usage() { return "permission <list|add|remove> <keyword>"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.DEVELOPER; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.OWNER); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("permission", "permissions", "perm", "perms")); }
|
||||
|
||||
|
@ -6,10 +6,7 @@
|
||||
package dev.salmonllama.fsbot.commands.developer;
|
||||
|
||||
import dev.salmonllama.fsbot.endpoints.scapefashion.ScapeFashionConnection;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
@ -19,7 +16,7 @@ public class TestCommand extends Command {
|
||||
@Override public String name() { return "Test"; }
|
||||
@Override public String description() { return "A test command"; }
|
||||
@Override public String usage() { return "test"; }
|
||||
@Override public String category() { return "Developer"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.DEVELOPER; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.OWNER); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("test", "t")); }
|
||||
|
||||
@ -28,7 +25,8 @@ public class TestCommand extends Command {
|
||||
ScapeFashionConnection conn = new ScapeFashionConnection();
|
||||
|
||||
try {
|
||||
conn.osrsColor("#00ff00");
|
||||
var result = conn.osrsColor("#00ff00");
|
||||
ctx.reply(String.format("Best match: %s", result.getItems().get(0).toString()));
|
||||
} catch (Exception e) {
|
||||
ctx.reply(e.getMessage());
|
||||
}
|
||||
|
@ -7,10 +7,7 @@ package dev.salmonllama.fsbot.commands.general;
|
||||
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.database.controllers.ColorRoleController;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.apache.logging.log4j.util.Strings;
|
||||
import org.javacord.api.entity.server.Server;
|
||||
import org.javacord.api.entity.user.User;
|
||||
@ -23,7 +20,7 @@ public class ColorCommand extends Command {
|
||||
@Override public String name() { return "Color"; }
|
||||
@Override public String description() { return "Assigns the provided cosmetic role"; }
|
||||
@Override public String usage() { return "color <colorName>"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("color", "colour")); }
|
||||
|
||||
|
@ -7,10 +7,7 @@ package dev.salmonllama.fsbot.commands.general;
|
||||
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.database.controllers.ColorRoleController;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@ -21,7 +18,7 @@ public class ColorsCommand extends Command {
|
||||
@Override public String name() { return "Colors"; }
|
||||
@Override public String description() { return "Lists available cosmetic roles"; }
|
||||
@Override public String usage() { return "colors"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("colors", "colours")); }
|
||||
|
||||
|
@ -21,7 +21,7 @@ public class HelpCommand extends Command {
|
||||
@Override public String name() { return "Help"; }
|
||||
@Override public String description() { return "Shows all commands, or a specific command's information"; }
|
||||
@Override public String usage() { return "help [String command]"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("help", "h")); }
|
||||
|
||||
@ -60,7 +60,7 @@ public class HelpCommand extends Command {
|
||||
List<String> categories = new ArrayList<>();
|
||||
|
||||
for (Command cmd : guthix.listCommands()) {
|
||||
String category = cmd.category();
|
||||
String category = cmd.category().getCategory();
|
||||
if (!categories.contains(category)) {
|
||||
categories.add(category);
|
||||
|
||||
@ -82,7 +82,7 @@ public class HelpCommand extends Command {
|
||||
StringBuilder builder = new StringBuilder().append("```yml");
|
||||
|
||||
for (Command cmd : guthix.listCommands()) {
|
||||
String cat = cmd.category().toLowerCase();
|
||||
String cat = cmd.category().getCategory().toLowerCase();
|
||||
if (cat.equals(category.toLowerCase())) {
|
||||
builder.append("\n- ").append(cmd.name());
|
||||
}
|
||||
@ -161,7 +161,7 @@ public class HelpCommand extends Command {
|
||||
|
||||
public boolean isCategory(String input) {
|
||||
for (Command cmd : guthix.listCommands()) {
|
||||
String category = cmd.category();
|
||||
String category = cmd.category().getCategory();
|
||||
if (category.toLowerCase().equals(input.toLowerCase())) {
|
||||
return true;
|
||||
}
|
||||
|
@ -7,10 +7,7 @@ package dev.salmonllama.fsbot.commands.general;
|
||||
|
||||
import dev.salmonllama.fsbot.database.controllers.OutfitController;
|
||||
import dev.salmonllama.fsbot.database.models.Outfit;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.Message;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
import org.javacord.api.util.logging.ExceptionLogger;
|
||||
@ -27,7 +24,7 @@ public class OutfitCommand extends Command {
|
||||
@Override public String name() { return "Outfit"; }
|
||||
@Override public String description() { return "Generates a random image with the given tag. Use ~tags to see valid tags."; }
|
||||
@Override public String usage() { return "outfit <String tag>"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return initAliases(); }
|
||||
|
||||
|
@ -5,10 +5,7 @@
|
||||
|
||||
package dev.salmonllama.fsbot.commands.general;
|
||||
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
@ -16,7 +13,7 @@ public class PingCommand extends Command {
|
||||
@Override public String name() { return "Ping"; }
|
||||
@Override public String description() { return "Pings the bot, checks for a heartbeat"; }
|
||||
@Override public String usage() { return "ping"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Collections.singletonList("ping")); }
|
||||
|
||||
|
@ -1,9 +1,6 @@
|
||||
package dev.salmonllama.fsbot.commands.general;
|
||||
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
import java.util.Collection;
|
||||
@ -13,7 +10,7 @@ public class PrivacyCommand extends Command {
|
||||
@Override public String name() { return "Privacy"; }
|
||||
@Override public String description() { return "Directs users to the bot's privacy policy"; }
|
||||
@Override public String usage() { return "privacy"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return Collections.singletonList("privacy"); }
|
||||
|
||||
|
@ -10,23 +10,20 @@ import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.channel.ServerTextChannel;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
import org.javacord.api.entity.server.Server;
|
||||
|
||||
import dev.salmonllama.fsbot.database.controllers.GalleryController;
|
||||
import dev.salmonllama.fsbot.database.models.GalleryChannel;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import org.javacord.api.util.logging.ExceptionLogger;
|
||||
|
||||
public class ShowGalleriesCommand extends Command {
|
||||
@Override public String name() { return "Show Galleries"; }
|
||||
@Override public String description() { return "Shows registered gallery channels in the current server"; }
|
||||
@Override public String usage() { return "showgalleries"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("showgalleries", "listgalleries")); }
|
||||
|
||||
|
@ -4,19 +4,16 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
import dev.salmonllama.fsbot.database.controllers.OutfitController;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
|
||||
public class StatsCommand extends Command {
|
||||
@Override public String name() { return "Stats"; }
|
||||
@Override public String description() { return "Shows various stats from Fashionscape Bot"; }
|
||||
@Override public String usage() { return "stats"; }
|
||||
@Override public String category() { return "General"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.GENERAL; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("stats")); }
|
||||
|
||||
|
@ -0,0 +1,26 @@
|
||||
/*
|
||||
* Copyright (c) 2020. Aleksei Gryczewski
|
||||
* All rights reserved.
|
||||
*/
|
||||
|
||||
package dev.salmonllama.fsbot.commands.osrssearch;
|
||||
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
|
||||
public class OsrsBodyCommand extends Command {
|
||||
@Override public String name() { return "OSRS Body"; }
|
||||
@Override public String description() { return "Searches scape.fashion for body slot items."; }
|
||||
@Override public String usage() { return "osrsbody <#color or item name"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.OSRS_ITEM_SEARCH; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.NONE); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Collections.singletonList("07body")); }
|
||||
|
||||
@Override
|
||||
public void onCommand(CommandContext ctx) {
|
||||
|
||||
}
|
||||
}
|
@ -6,10 +6,7 @@
|
||||
package dev.salmonllama.fsbot.commands.staff;
|
||||
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@ -19,7 +16,7 @@ public class EchoCommand extends Command {
|
||||
@Override public String name() { return "Echo"; }
|
||||
@Override public String description() { return "Echos your message. Typical bash"; }
|
||||
@Override public String usage() { return "echo <message>"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Collections.singletonList("echo")); }
|
||||
|
||||
|
@ -6,20 +6,17 @@
|
||||
package dev.salmonllama.fsbot.commands.staff;
|
||||
|
||||
import dev.salmonllama.fsbot.database.controllers.OutfitController;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
|
||||
public class GetOutfitCommand extends Command { // TODO: This command also needs HELP
|
||||
public class GetOutfitCommand extends Command {
|
||||
@Override public String name() { return "Get Outift"; }
|
||||
@Override public String description() { return "Shows the outfit, given an ID"; }
|
||||
@Override public String usage() { return "getoutfit <String id>"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("getoutfit", "get")); }
|
||||
|
||||
@ -29,11 +26,9 @@ public class GetOutfitCommand extends Command { // TODO: This command also needs
|
||||
String[] args = ctx.getArgs();
|
||||
|
||||
String id = args[0];
|
||||
OutfitController.findById(id).thenAccept(outfitOpt -> {
|
||||
outfitOpt.ifPresentOrElse(
|
||||
outfit -> ctx.reply(outfit.toString()),
|
||||
() -> ctx.reply("Outfit not found, did you get the id right?")
|
||||
);
|
||||
});
|
||||
OutfitController.findById(id).thenAccept(outfitOpt -> outfitOpt.ifPresentOrElse(
|
||||
outfit -> ctx.reply(outfit.toString()),
|
||||
() -> ctx.reply("Outfit not found, did you get the id right?")
|
||||
));
|
||||
}
|
||||
}
|
||||
|
@ -5,11 +5,7 @@
|
||||
|
||||
package dev.salmonllama.fsbot.commands.staff;
|
||||
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.DiscordApi;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
import org.javacord.api.entity.server.Server;
|
||||
@ -23,7 +19,7 @@ public class GetServersCommand extends Command {
|
||||
@Override public String name() { return "Get Servers"; }
|
||||
@Override public String description() { return "Lists all the servers the bot is in"; }
|
||||
@Override public String usage() { return "getservers"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("getservers", "servers")); }
|
||||
|
||||
|
@ -5,12 +5,8 @@
|
||||
|
||||
package dev.salmonllama.fsbot.commands.staff;
|
||||
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.database.controllers.OutfitController;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@ -21,7 +17,7 @@ public class OutfitInfoCommand extends Command {
|
||||
@Override public String name() { return "Outfit Info"; }
|
||||
@Override public String description() { return "Shows all related info about the outfit"; }
|
||||
@Override public String usage() { return "outfitinfo <String id>"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("outfitinfo", "oinfo")); }
|
||||
|
||||
@ -35,23 +31,19 @@ public class OutfitInfoCommand extends Command {
|
||||
}
|
||||
|
||||
String id = args[0];
|
||||
OutfitController.findById(id).thenAcceptAsync(possibleOutfit -> {
|
||||
possibleOutfit.ifPresentOrElse(outfit -> {
|
||||
EmbedBuilder embed = new EmbedBuilder()
|
||||
.setTitle("Outfit Info")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.setAuthor(ctx.getApi().getYourself())
|
||||
.setUrl(outfit.getLink())
|
||||
.setFooter(String.format("Tag: %s", outfit.getTag()))
|
||||
.addField("Added", outfit.getCreated().toString(), true)
|
||||
.addField("Updated", outfit.getUpdated().toString(), true)
|
||||
.addField("Submitted by:", ctx.getApi().getUserById(outfit.getSubmitter()).join().getDiscriminatedName())
|
||||
.addField("Deleted", outfit.isDeleted() ? "True" : "False", true)
|
||||
.addField("Featured", outfit.isFeatured() ? "True" : "False", true);
|
||||
ctx.reply(embed);
|
||||
}, () -> {
|
||||
ctx.reply("Outfit not found");
|
||||
});
|
||||
});
|
||||
OutfitController.findById(id).thenAcceptAsync(possibleOutfit -> possibleOutfit.ifPresentOrElse(outfit -> {
|
||||
EmbedBuilder embed = new EmbedBuilder()
|
||||
.setTitle("Outfit Info")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.setAuthor(ctx.getApi().getYourself())
|
||||
.setUrl(outfit.getLink())
|
||||
.setFooter(String.format("Tag: %s", outfit.getTag()))
|
||||
.addField("Added", outfit.getCreated().toString(), true)
|
||||
.addField("Updated", outfit.getUpdated().toString(), true)
|
||||
.addField("Submitted by:", ctx.getApi().getUserById(outfit.getSubmitter()).join().getDiscriminatedName())
|
||||
.addField("Deleted", outfit.isDeleted() ? "True" : "False", true)
|
||||
.addField("Featured", outfit.isFeatured() ? "True" : "False", true);
|
||||
ctx.reply(embed);
|
||||
}, () -> ctx.reply("Outfit not found")));
|
||||
}
|
||||
}
|
||||
|
@ -8,10 +8,7 @@ package dev.salmonllama.fsbot.commands.staff;
|
||||
import com.vdurmont.emoji.EmojiParser;
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.database.controllers.OutfitController;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.channel.TextChannel;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
@ -23,7 +20,7 @@ public class RemoveOutfitCommand extends Command {
|
||||
@Override public String name() { return "Remove Outfit"; }
|
||||
@Override public String description() { return "Removes an outfit from the database given an id"; }
|
||||
@Override public String usage() { return "remove <String id>"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("removeoutfit", "remove")); }
|
||||
|
||||
@ -40,67 +37,65 @@ public class RemoveOutfitCommand extends Command {
|
||||
|
||||
// get the outfit, confirm deletion through reaction.
|
||||
String outfitId = args[0];
|
||||
OutfitController.findById(outfitId).thenAcceptAsync(possibleOutfit -> {
|
||||
possibleOutfit.ifPresentOrElse(outfit -> {
|
||||
// Send outfit info, react with selectors, add a listener to the message
|
||||
EmbedBuilder embed = new EmbedBuilder()
|
||||
.setTitle("Confirm Outfit Deletion")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.setAuthor(ctx.getApi().getUserById(outfit.getSubmitter()).join())
|
||||
.setUrl(outfit.getLink())
|
||||
.setFooter(String.format("Tag: %s", outfit.getTag()))
|
||||
.addField("Added", outfit.getCreated().toString(), true)
|
||||
.addField("Updated", outfit.getUpdated().toString(), true)
|
||||
.addField("Submitted by:", ctx.getApi().getUserById(outfit.getSubmitter()).join().getDiscriminatedName())
|
||||
.addField("Deleted", outfit.isDeleted() ? "True" : "False", true)
|
||||
.addField("Featured", outfit.isFeatured() ? "True" : "False", true);
|
||||
OutfitController.findById(outfitId).thenAcceptAsync(possibleOutfit -> possibleOutfit.ifPresentOrElse(outfit -> {
|
||||
// Send outfit info, react with selectors, add a listener to the message
|
||||
EmbedBuilder embed = new EmbedBuilder()
|
||||
.setTitle("Confirm Outfit Deletion")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.setAuthor(ctx.getApi().getUserById(outfit.getSubmitter()).join())
|
||||
.setUrl(outfit.getLink())
|
||||
.setFooter(String.format("Tag: %s", outfit.getTag()))
|
||||
.addField("Added", outfit.getCreated().toString(), true)
|
||||
.addField("Updated", outfit.getUpdated().toString(), true)
|
||||
.addField("Submitted by:", ctx.getApi().getUserById(outfit.getSubmitter()).join().getDiscriminatedName())
|
||||
.addField("Deleted", outfit.isDeleted() ? "True" : "False", true)
|
||||
.addField("Featured", outfit.isFeatured() ? "True" : "False", true);
|
||||
|
||||
ctx.reply(embed).thenAcceptAsync(msg -> {
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":white_check_mark:"));
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":octagonal_sign:"));
|
||||
ctx.reply(embed).thenAcceptAsync(msg -> {
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":white_check_mark:"));
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":octagonal_sign:"));
|
||||
|
||||
msg.addReactionAddListener(event -> {
|
||||
if (event.getUser().getId() != authorId) {
|
||||
return;
|
||||
}
|
||||
msg.addReactionAddListener(event -> {
|
||||
if (event.getUser().getId() != authorId) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":white_check_mark:"))) {
|
||||
// Delete the outfit
|
||||
OutfitController.delete(outfit.getId());
|
||||
if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":white_check_mark:"))) {
|
||||
// Delete the outfit
|
||||
OutfitController.delete(outfit.getId());
|
||||
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Deletion Successful!")
|
||||
.setDescription(String.format("Outfit %s marked as deleted", outfit.getId()));
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Deletion Successful!")
|
||||
.setDescription(String.format("Outfit %s marked as deleted", outfit.getId()));
|
||||
|
||||
msg.delete();
|
||||
ctx.reply(response);
|
||||
msg.delete();
|
||||
ctx.reply(response);
|
||||
|
||||
EmbedBuilder log = new EmbedBuilder()
|
||||
.setTitle("Outfit Marked as Deleted")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.addField("Deleted By:", ctx.getAuthor().getDiscriminatedName());
|
||||
EmbedBuilder log = new EmbedBuilder()
|
||||
.setTitle("Outfit Marked as Deleted")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.addField("Deleted By:", ctx.getAuthor().getDiscriminatedName());
|
||||
|
||||
ctx.getApi().getServerTextChannelById(BotConfig.OUTFIT_LOG).ifPresent(chnl -> {
|
||||
chnl.sendMessage(log);
|
||||
});
|
||||
ctx.getApi().getServerTextChannelById(BotConfig.OUTFIT_LOG).ifPresent(
|
||||
chnl -> chnl.sendMessage(log)
|
||||
);
|
||||
|
||||
} else if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":octagonal_sign:"))) {
|
||||
// Do nothing
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Deletion Aborted")
|
||||
.setDescription(String.format("No modifications were made to %s", outfit.getId()));
|
||||
} else if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":octagonal_sign:"))) {
|
||||
// Do nothing
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Deletion Aborted")
|
||||
.setDescription(String.format("No modifications were made to %s", outfit.getId()));
|
||||
|
||||
ctx.reply(response);
|
||||
}
|
||||
});
|
||||
});
|
||||
}, () -> {
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Outfit not Found")
|
||||
.setDescription(String.format("ID %s does not exist", outfitId));
|
||||
ctx.reply(response);
|
||||
}
|
||||
});
|
||||
});
|
||||
}, () -> {
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Outfit not Found")
|
||||
.setDescription(String.format("ID %s does not exist", outfitId));
|
||||
|
||||
ctx.reply(response);
|
||||
});
|
||||
});
|
||||
ctx.reply(response);
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
@ -9,10 +9,7 @@ import com.vdurmont.emoji.EmojiParser;
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.database.controllers.OutfitController;
|
||||
import dev.salmonllama.fsbot.database.models.Outfit;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.channel.TextChannel;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
@ -26,7 +23,7 @@ public class RetagCommand extends Command {
|
||||
@Override public String name() { return "Retag"; }
|
||||
@Override public String description() { return "Changes the tag of the given outfit"; }
|
||||
@Override public String usage() { return "retag <String id> <String newtag>"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Collections.singletonList("retag")); }
|
||||
|
||||
@ -45,71 +42,69 @@ public class RetagCommand extends Command {
|
||||
String outfitId = args[0];
|
||||
String newTag = args[1];
|
||||
|
||||
OutfitController.findById(outfitId).thenAcceptAsync(possibleOutfit -> {
|
||||
possibleOutfit.ifPresentOrElse(outfit -> {
|
||||
// Send info, confirmation, and add reaction listener
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Confirm Tag Edit")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.setAuthor(ctx.getApi().getUserById(outfit.getSubmitter()).join())
|
||||
.setUrl(outfit.getLink())
|
||||
.addField("Current Tag:", outfit.getTag())
|
||||
.addField("New Tag:", newTag);
|
||||
OutfitController.findById(outfitId).thenAcceptAsync(possibleOutfit -> possibleOutfit.ifPresentOrElse(outfit -> {
|
||||
// Send info, confirmation, and add reaction listener
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Confirm Tag Edit")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.setAuthor(ctx.getApi().getUserById(outfit.getSubmitter()).join())
|
||||
.setUrl(outfit.getLink())
|
||||
.addField("Current Tag:", outfit.getTag())
|
||||
.addField("New Tag:", newTag);
|
||||
|
||||
ctx.reply(response).thenAcceptAsync(msg -> {
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":white_check_mark:"));
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":octagonal_sign:"));
|
||||
ctx.reply(response).thenAcceptAsync(msg -> {
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":white_check_mark:"));
|
||||
msg.addReaction(EmojiParser.parseToUnicode(":octagonal_sign:"));
|
||||
|
||||
msg.addReactionAddListener(event -> {
|
||||
if (event.getUser().getId() != authorId) {
|
||||
return;
|
||||
}
|
||||
msg.addReactionAddListener(event -> {
|
||||
if (event.getUser().getId() != authorId) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":white_check_mark:"))) {
|
||||
// Update the outfit
|
||||
Outfit newOutfit = new Outfit.OutfitBuilder(outfit)
|
||||
.setTag(newTag)
|
||||
.setUpdated(new Timestamp(System.currentTimeMillis()))
|
||||
.build();
|
||||
if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":white_check_mark:"))) {
|
||||
// Update the outfit
|
||||
Outfit newOutfit = new Outfit.OutfitBuilder(outfit)
|
||||
.setTag(newTag)
|
||||
.setUpdated(new Timestamp(System.currentTimeMillis()))
|
||||
.build();
|
||||
|
||||
OutfitController.update(newOutfit).thenAcceptAsync((Void) -> {
|
||||
EmbedBuilder embed = new EmbedBuilder()
|
||||
.setTitle("Outfit retagged successfully!")
|
||||
.setDescription(String.format("Outfit %s will now display as %s", newOutfit.getId(), newOutfit.getTag()));
|
||||
|
||||
msg.delete();
|
||||
ctx.reply(embed);
|
||||
|
||||
EmbedBuilder log = new EmbedBuilder()
|
||||
.setTitle("Outfit Retagged")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.addField("New tag:", newTag);
|
||||
|
||||
ctx.getApi().getServerTextChannelById(BotConfig.OUTFIT_LOG).ifPresent(chnl -> {
|
||||
chnl.sendMessage(log);
|
||||
});
|
||||
});
|
||||
|
||||
} else if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":octagonal_sign:"))) {
|
||||
// Do nothing
|
||||
msg.delete();
|
||||
OutfitController.update(newOutfit).thenAcceptAsync((Void) -> {
|
||||
EmbedBuilder embed = new EmbedBuilder()
|
||||
.setTitle("Update Cancelled")
|
||||
.setDescription("No modifications were made");
|
||||
.setTitle("Outfit retagged successfully!")
|
||||
.setDescription(String.format("Outfit %s will now display as %s", newOutfit.getId(), newOutfit.getTag()));
|
||||
|
||||
msg.delete();
|
||||
ctx.reply(embed);
|
||||
}
|
||||
});
|
||||
});
|
||||
}, () -> {
|
||||
// Err, outfit not found
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Error occurred")
|
||||
.setDescription("That ID was not found in the database")
|
||||
.setColor(Color.RED);
|
||||
|
||||
ctx.reply(response);
|
||||
EmbedBuilder log = new EmbedBuilder()
|
||||
.setTitle("Outfit Retagged")
|
||||
.setThumbnail(outfit.getLink())
|
||||
.addField("New tag:", newTag);
|
||||
|
||||
ctx.getApi().getServerTextChannelById(BotConfig.OUTFIT_LOG).ifPresent(
|
||||
chnl -> chnl.sendMessage(log)
|
||||
);
|
||||
});
|
||||
|
||||
} else if (event.getEmoji().equalsEmoji(EmojiParser.parseToUnicode(":octagonal_sign:"))) {
|
||||
// Do nothing
|
||||
msg.delete();
|
||||
EmbedBuilder embed = new EmbedBuilder()
|
||||
.setTitle("Update Cancelled")
|
||||
.setDescription("No modifications were made");
|
||||
|
||||
ctx.reply(embed);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
}, () -> {
|
||||
// Err, outfit not found
|
||||
EmbedBuilder response = new EmbedBuilder()
|
||||
.setTitle("Error occurred")
|
||||
.setDescription("That ID was not found in the database")
|
||||
.setColor(Color.RED);
|
||||
|
||||
ctx.reply(response);
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
@ -6,11 +6,7 @@
|
||||
package dev.salmonllama.fsbot.commands.staff;
|
||||
|
||||
import com.vdurmont.emoji.EmojiParser;
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
|
||||
import java.awt.*;
|
||||
@ -22,7 +18,7 @@ public class SetStatusCommand extends Command {
|
||||
@Override public String name() { return "Set Status"; }
|
||||
@Override public String description() { return "Updates the bot's current status"; }
|
||||
@Override public String usage() { return "updatestatus <String status>"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("setstatus", "status")); }
|
||||
|
||||
|
@ -8,10 +8,7 @@ package dev.salmonllama.fsbot.commands.staff;
|
||||
import dev.salmonllama.fsbot.config.BotConfig;
|
||||
import dev.salmonllama.fsbot.database.controllers.ServerConfigController;
|
||||
import dev.salmonllama.fsbot.database.models.ServerConfig;
|
||||
import dev.salmonllama.fsbot.guthix.Command;
|
||||
import dev.salmonllama.fsbot.guthix.CommandContext;
|
||||
import dev.salmonllama.fsbot.guthix.CommandPermission;
|
||||
import dev.salmonllama.fsbot.guthix.PermissionType;
|
||||
import dev.salmonllama.fsbot.guthix.*;
|
||||
import org.javacord.api.entity.message.embed.EmbedBuilder;
|
||||
import org.javacord.api.util.logging.ExceptionLogger;
|
||||
|
||||
@ -23,7 +20,7 @@ public class WelcomeMessageCommand extends Command {
|
||||
@Override public String name() { return "Welcome Message"; }
|
||||
@Override public String description() { return "View or update the server welcome message. Options: get|set|getchannel|setchannel."; }
|
||||
@Override public String usage() { return "welcomemessage <String opt> [String newMessage]"; }
|
||||
@Override public String category() { return "Staff"; }
|
||||
@Override public CommandCategory category() { return CommandCategory.STAFF; }
|
||||
@Override public CommandPermission permission() { return new CommandPermission(PermissionType.STATIC, "staff"); }
|
||||
@Override public Collection<String> aliases() { return new ArrayList<>(Arrays.asList("welcomemessage", "wmsg")); }
|
||||
|
||||
|
@ -12,7 +12,7 @@ public abstract class Command {
|
||||
public abstract String name();
|
||||
public abstract String description();
|
||||
public abstract String usage();
|
||||
public abstract String category();
|
||||
public abstract CommandCategory category();
|
||||
public abstract CommandPermission permission();
|
||||
public abstract Collection<String> aliases();
|
||||
|
||||
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Copyright (c) 2020. Aleksei Gryczewski
|
||||
* All rights reserved.
|
||||
*/
|
||||
|
||||
package dev.salmonllama.fsbot.guthix;
|
||||
|
||||
public enum CommandCategory {
|
||||
DEVELOPER("Developer"),
|
||||
GENERAL("General"),
|
||||
OSRS_ITEM_SEARCH("Oldschool Item Search"),
|
||||
RS3_ITEM_SEARCH("Runescape Item Search"),
|
||||
STAFF("Staff");
|
||||
|
||||
private final String category;
|
||||
|
||||
CommandCategory(String category) {
|
||||
this.category = category;
|
||||
}
|
||||
|
||||
public String getCategory() {
|
||||
return category;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user