Moves permission nodes and command names to an enum to reduce redundancy
Also fixes some cases where tab completions are provided even if all arguments have been supplied
This commit is contained in:
2
pom.xml
2
pom.xml
@@ -35,7 +35,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.jetbrains</groupId>
|
<groupId>org.jetbrains</groupId>
|
||||||
<artifactId>annotations</artifactId>
|
<artifactId>annotations</artifactId>
|
||||||
<version>RELEASE</version>
|
<version>23.0.0</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import net.TheDgtl.Stargate.config.OptionDataType;
|
|||||||
import net.knarcraft.stargatecommand.formatting.StringFormatter;
|
import net.knarcraft.stargatecommand.formatting.StringFormatter;
|
||||||
import net.knarcraft.stargatecommand.formatting.TranslatableMessage;
|
import net.knarcraft.stargatecommand.formatting.TranslatableMessage;
|
||||||
import net.knarcraft.stargatecommand.formatting.Translator;
|
import net.knarcraft.stargatecommand.formatting.Translator;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import net.md_5.bungee.api.ChatColor;
|
import net.md_5.bungee.api.ChatColor;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
@@ -45,7 +46,7 @@ public class CommandConfig implements CommandExecutor {
|
|||||||
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
||||||
@NotNull String[] args) {
|
@NotNull String[] args) {
|
||||||
if (commandSender instanceof Player player) {
|
if (commandSender instanceof Player player) {
|
||||||
if (!player.hasPermission("stargate.command.config")) {
|
if (!player.hasPermission(StargateCommandCommand.CONFIG.getPermissionNode())) {
|
||||||
player.sendMessage(getTranslatedErrorMessage(TranslatableMessage.PERMISSION_DENIED));
|
player.sendMessage(getTranslatedErrorMessage(TranslatableMessage.PERMISSION_DENIED));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -262,8 +263,8 @@ public class CommandConfig implements CommandExecutor {
|
|||||||
stringValue = "[" + StringUtils.join((String[]) defaultValue, ",") + "]";
|
stringValue = "[" + StringUtils.join((String[]) defaultValue, ",") + "]";
|
||||||
}
|
}
|
||||||
return StringFormatter.replacePlaceholders(Translator.getTranslatedMessage(
|
return StringFormatter.replacePlaceholders(Translator.getTranslatedMessage(
|
||||||
TranslatableMessage.CONFIG_OPTION_DESCRIPTION), new String[]{"{name}", "{description}", "{value}"},
|
TranslatableMessage.CONFIG_OPTION_DESCRIPTION), new String[]{"{name}", "{description}",
|
||||||
new String[]{option.name(), option.getDescription(), stringValue});
|
"{value}"}, new String[]{option.name(), option.getDescription(), stringValue});
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import net.TheDgtl.Stargate.network.RegistryAPI;
|
|||||||
import net.TheDgtl.Stargate.network.portal.RealPortal;
|
import net.TheDgtl.Stargate.network.portal.RealPortal;
|
||||||
import net.knarcraft.stargatecommand.StargateCommand;
|
import net.knarcraft.stargatecommand.StargateCommand;
|
||||||
import net.knarcraft.stargatecommand.manager.OverrideManager;
|
import net.knarcraft.stargatecommand.manager.OverrideManager;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import net.knarcraft.stargatecommand.util.PortalFinderHelper;
|
import net.knarcraft.stargatecommand.util.PortalFinderHelper;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
@@ -40,7 +41,7 @@ public class CommandDial implements CommandExecutor {
|
|||||||
commandSender.sendMessage("This command can only be used by players");
|
commandSender.sendMessage("This command can only be used by players");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (!player.hasPermission("stargate.command.dial")) {
|
if (!player.hasPermission(StargateCommandCommand.DIAL.getPermissionNode())) {
|
||||||
player.sendMessage("Permission Denied");
|
player.sendMessage("Permission Denied");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.knarcraft.stargatecommand.command;
|
|||||||
|
|
||||||
import net.TheDgtl.Stargate.api.StargateAPI;
|
import net.TheDgtl.Stargate.api.StargateAPI;
|
||||||
import net.TheDgtl.Stargate.config.ConfigurationOption;
|
import net.TheDgtl.Stargate.config.ConfigurationOption;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import org.apache.commons.lang.ArrayUtils;
|
import org.apache.commons.lang.ArrayUtils;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
@@ -34,14 +35,14 @@ public class CommandStarGateCommand implements CommandExecutor {
|
|||||||
@NotNull String[] args) {
|
@NotNull String[] args) {
|
||||||
if (args.length > 0) {
|
if (args.length > 0) {
|
||||||
String[] subArgs = (String[]) ArrayUtils.remove(args, 0);
|
String[] subArgs = (String[]) ArrayUtils.remove(args, 0);
|
||||||
if (args[0].equalsIgnoreCase("config")) {
|
if (args[0].equalsIgnoreCase(StargateCommandCommand.CONFIG.getName())) {
|
||||||
return new CommandConfig(stargateAPI.getConfigurationAPI(), bannedConfigOptions).onCommand(
|
return new CommandConfig(stargateAPI.getConfigurationAPI(), bannedConfigOptions).onCommand(
|
||||||
commandSender, command, s, subArgs);
|
commandSender, command, s, subArgs);
|
||||||
} else if (args[0].equalsIgnoreCase("dial")) {
|
} else if (args[0].equalsIgnoreCase(StargateCommandCommand.DIAL.getName())) {
|
||||||
return new CommandDial(stargateAPI).onCommand(commandSender, command, s, subArgs);
|
return new CommandDial(stargateAPI).onCommand(commandSender, command, s, subArgs);
|
||||||
} else if (args[0].equalsIgnoreCase("visualizer")) {
|
} else if (args[0].equalsIgnoreCase(StargateCommandCommand.VISUALIZER.getName())) {
|
||||||
return new CommandVisualizer(stargateAPI.getRegistry()).onCommand(commandSender, command, s, subArgs);
|
return new CommandVisualizer(stargateAPI.getRegistry()).onCommand(commandSender, command, s, subArgs);
|
||||||
} else if (args[0].equalsIgnoreCase("info")) {
|
} else if (args[0].equalsIgnoreCase(StargateCommandCommand.INFO.getName())) {
|
||||||
return new TabCommandInfo(stargateAPI.getRegistry()).onCommand(commandSender, command, s, subArgs);
|
return new TabCommandInfo(stargateAPI.getRegistry()).onCommand(commandSender, command, s, subArgs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import net.TheDgtl.Stargate.network.portal.FixedPortal;
|
|||||||
import net.TheDgtl.Stargate.network.portal.Portal;
|
import net.TheDgtl.Stargate.network.portal.Portal;
|
||||||
import net.TheDgtl.Stargate.network.portal.PortalFlag;
|
import net.TheDgtl.Stargate.network.portal.PortalFlag;
|
||||||
import net.knarcraft.stargatecommand.StargateCommand;
|
import net.knarcraft.stargatecommand.StargateCommand;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
@@ -31,7 +32,7 @@ public class CommandVisualizer implements CommandExecutor {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
||||||
@NotNull String[] args) {
|
@NotNull String[] args) {
|
||||||
if (!commandSender.hasPermission("stargate.command.visualizer")) {
|
if (!commandSender.hasPermission(StargateCommandCommand.VISUALIZER.getPermissionNode())) {
|
||||||
commandSender.sendMessage("Permission Denied");
|
commandSender.sendMessage("Permission Denied");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.knarcraft.stargatecommand.command;
|
|||||||
|
|
||||||
import net.TheDgtl.Stargate.config.ConfigurationOption;
|
import net.TheDgtl.Stargate.config.ConfigurationOption;
|
||||||
import net.TheDgtl.Stargate.config.OptionDataType;
|
import net.TheDgtl.Stargate.config.OptionDataType;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.command.TabCompleter;
|
import org.bukkit.command.TabCompleter;
|
||||||
@@ -37,10 +38,18 @@ public class ConfigTabCompleter implements TabCompleter {
|
|||||||
@Override
|
@Override
|
||||||
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
||||||
@NotNull String[] args) {
|
@NotNull String[] args) {
|
||||||
|
//Don't display any info to non-authorized users
|
||||||
|
if (!commandSender.hasPermission(StargateCommandCommand.CONFIG.getPermissionNode())) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
if (booleans == null || integers == null || chatColors == null) {
|
if (booleans == null || integers == null || chatColors == null) {
|
||||||
initializeAutoCompleteLists();
|
initializeAutoCompleteLists();
|
||||||
}
|
}
|
||||||
if (args.length > 1) {
|
|
||||||
|
if (args.length > 2) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
} else if (args.length > 1) {
|
||||||
ConfigurationOption selectedOption;
|
ConfigurationOption selectedOption;
|
||||||
try {
|
try {
|
||||||
selectedOption = ConfigurationOption.valueOf(args[0].toUpperCase());
|
selectedOption = ConfigurationOption.valueOf(args[0].toUpperCase());
|
||||||
@@ -146,7 +155,6 @@ public class ConfigTabCompleter implements TabCompleter {
|
|||||||
doubles.add("0.1");
|
doubles.add("0.1");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initializes the list of chat colors
|
* Initializes the list of chat colors
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import net.TheDgtl.Stargate.network.RegistryAPI;
|
|||||||
import net.TheDgtl.Stargate.network.portal.Portal;
|
import net.TheDgtl.Stargate.network.portal.Portal;
|
||||||
import net.TheDgtl.Stargate.network.portal.RealPortal;
|
import net.TheDgtl.Stargate.network.portal.RealPortal;
|
||||||
import net.knarcraft.stargatecommand.StargateCommand;
|
import net.knarcraft.stargatecommand.StargateCommand;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.command.TabCompleter;
|
import org.bukkit.command.TabCompleter;
|
||||||
@@ -44,8 +45,12 @@ public class DialTabCompleter implements TabCompleter {
|
|||||||
@Override
|
@Override
|
||||||
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
||||||
@NotNull String[] args) {
|
@NotNull String[] args) {
|
||||||
|
//Don't display any info to non-authorized users
|
||||||
|
if (!commandSender.hasPermission(StargateCommandCommand.DIAL.getPermissionNode())) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
if (!(commandSender instanceof Player player)) {
|
if (!(commandSender instanceof Player player)) {
|
||||||
commandSender.sendMessage("This command can only be used by players");
|
|
||||||
return new ArrayList<>();
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -57,7 +62,9 @@ public class DialTabCompleter implements TabCompleter {
|
|||||||
//Populate the collections with available networks and portals
|
//Populate the collections with available networks and portals
|
||||||
populateNetworksAndPortals(permissionManager, availableNetworks, availablePortals);
|
populateNetworksAndPortals(permissionManager, availableNetworks, availablePortals);
|
||||||
|
|
||||||
if (args.length > 1) {
|
if (args.length > 2) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
} else if (args.length > 1) {
|
||||||
Network network = registryAPI.getNetwork(args[0].replace(spaceReplacement, ' '), false);
|
Network network = registryAPI.getNetwork(args[0].replace(spaceReplacement, ' '), false);
|
||||||
if (network != null && availablePortals.containsKey(network)) {
|
if (network != null && availablePortals.containsKey(network)) {
|
||||||
return filterMatching(availablePortals.get(network), args[1].replace(spaceReplacement, ' '));
|
return filterMatching(availablePortals.get(network), args[1].replace(spaceReplacement, ' '));
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.knarcraft.stargatecommand.command;
|
|||||||
|
|
||||||
import net.TheDgtl.Stargate.api.StargateAPI;
|
import net.TheDgtl.Stargate.api.StargateAPI;
|
||||||
import net.TheDgtl.Stargate.config.ConfigurationOption;
|
import net.TheDgtl.Stargate.config.ConfigurationOption;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import org.apache.commons.lang.ArrayUtils;
|
import org.apache.commons.lang.ArrayUtils;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
@@ -48,13 +49,13 @@ public class StargateCommandTabCompleter implements TabCompleter {
|
|||||||
//Get the actual arguments for the specified sub-command
|
//Get the actual arguments for the specified sub-command
|
||||||
String[] subArgs = (String[]) ArrayUtils.remove(args, 0);
|
String[] subArgs = (String[]) ArrayUtils.remove(args, 0);
|
||||||
|
|
||||||
if (args[0].equalsIgnoreCase("config")) {
|
if (args[0].equalsIgnoreCase(StargateCommandCommand.CONFIG.getName())) {
|
||||||
return new ConfigTabCompleter(bannedConfigOptions).onTabComplete(commandSender, command, s, subArgs);
|
return new ConfigTabCompleter(bannedConfigOptions).onTabComplete(commandSender, command, s, subArgs);
|
||||||
} else if (args[0].equalsIgnoreCase("dial")) {
|
} else if (args[0].equalsIgnoreCase(StargateCommandCommand.DIAL.getName())) {
|
||||||
return new DialTabCompleter(stargateAPI).onTabComplete(commandSender, command, s, subArgs);
|
return new DialTabCompleter(stargateAPI).onTabComplete(commandSender, command, s, subArgs);
|
||||||
} else if (args[0].equalsIgnoreCase("visualizer")) {
|
} else if (args[0].equalsIgnoreCase(StargateCommandCommand.VISUALIZER.getName())) {
|
||||||
return new VisualizerTabCompleter(stargateAPI.getRegistry()).onTabComplete(commandSender, command, s, subArgs);
|
return new VisualizerTabCompleter(stargateAPI.getRegistry()).onTabComplete(commandSender, command, s, subArgs);
|
||||||
} else if (args[0].equalsIgnoreCase("info")) {
|
} else if (args[0].equalsIgnoreCase(StargateCommandCommand.INFO.getName())) {
|
||||||
return new TabCommandInfo(stargateAPI.getRegistry()).onTabComplete(commandSender, command, s, subArgs);
|
return new TabCommandInfo(stargateAPI.getRegistry()).onTabComplete(commandSender, command, s, subArgs);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -69,17 +70,11 @@ public class StargateCommandTabCompleter implements TabCompleter {
|
|||||||
*/
|
*/
|
||||||
private List<String> getAvailableCommands(CommandSender commandSender) {
|
private List<String> getAvailableCommands(CommandSender commandSender) {
|
||||||
List<String> commands = new ArrayList<>();
|
List<String> commands = new ArrayList<>();
|
||||||
if (!(commandSender instanceof Player player) || player.hasPermission("stargate.command.config")) {
|
for (StargateCommandCommand command : StargateCommandCommand.values()) {
|
||||||
commands.add("config");
|
if ((!command.requiresPlayer() || commandSender instanceof Player) &&
|
||||||
}
|
commandSender.hasPermission(command.getPermissionNode())) {
|
||||||
if (commandSender instanceof Player player && player.hasPermission("stargate.command.dial")) {
|
commands.add(command.getName());
|
||||||
commands.add("dial");
|
}
|
||||||
}
|
|
||||||
if (commandSender instanceof Player player && player.hasPermission("stargate.command.visualizer")) {
|
|
||||||
commands.add("visualizer");
|
|
||||||
}
|
|
||||||
if (commandSender instanceof Player player && player.hasPermission("stargate.command.info")) {
|
|
||||||
commands.add("info");
|
|
||||||
}
|
}
|
||||||
return commands;
|
return commands;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package net.knarcraft.stargatecommand.command;
|
|||||||
import net.TheDgtl.Stargate.network.RegistryAPI;
|
import net.TheDgtl.Stargate.network.RegistryAPI;
|
||||||
import net.TheDgtl.Stargate.network.portal.Portal;
|
import net.TheDgtl.Stargate.network.portal.Portal;
|
||||||
import net.TheDgtl.Stargate.network.portal.PortalFlag;
|
import net.TheDgtl.Stargate.network.portal.PortalFlag;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import net.knarcraft.stargatecommand.util.PortalFinderHelper;
|
import net.knarcraft.stargatecommand.util.PortalFinderHelper;
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
@@ -40,7 +41,7 @@ public class TabCommandInfo implements TabExecutor {
|
|||||||
commandSender.sendMessage("This command can only be used by a player");
|
commandSender.sendMessage("This command can only be used by a player");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (!player.hasPermission("stargate.command.info")) {
|
if (!player.hasPermission(StargateCommandCommand.INFO.getPermissionNode())) {
|
||||||
player.sendMessage("Permission Denied");
|
player.sendMessage("Permission Denied");
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ package net.knarcraft.stargatecommand.command;
|
|||||||
|
|
||||||
import net.TheDgtl.Stargate.network.RegistryAPI;
|
import net.TheDgtl.Stargate.network.RegistryAPI;
|
||||||
import net.knarcraft.stargatecommand.StargateCommand;
|
import net.knarcraft.stargatecommand.StargateCommand;
|
||||||
|
import net.knarcraft.stargatecommand.property.StargateCommandCommand;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.command.TabCompleter;
|
import org.bukkit.command.TabCompleter;
|
||||||
@@ -33,6 +34,11 @@ public class VisualizerTabCompleter implements TabCompleter {
|
|||||||
@Override
|
@Override
|
||||||
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
public List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s,
|
||||||
@NotNull String[] args) {
|
@NotNull String[] args) {
|
||||||
|
//Don't display any info to non-authorized users
|
||||||
|
if (!commandSender.hasPermission(StargateCommandCommand.VISUALIZER.getPermissionNode())) {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
if (args.length < 2) {
|
if (args.length < 2) {
|
||||||
List<String> networkNames = new ArrayList<>();
|
List<String> networkNames = new ArrayList<>();
|
||||||
registryAPI.getNetworkMap().values().forEach(item -> networkNames.add(item.getName().replace(' ',
|
registryAPI.getNetworkMap().values().forEach(item -> networkNames.add(item.getName().replace(' ',
|
||||||
|
|||||||
@@ -0,0 +1,71 @@
|
|||||||
|
package net.knarcraft.stargatecommand.property;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An enum representing the commands of this plugin
|
||||||
|
*/
|
||||||
|
public enum StargateCommandCommand {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The config command
|
||||||
|
*/
|
||||||
|
CONFIG("config", "stargate.command.config", false),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The dial command
|
||||||
|
*/
|
||||||
|
DIAL("dial", "stargate.command.dial", true),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The visualizer command
|
||||||
|
*/
|
||||||
|
VISUALIZER("visualizer", "stargate.command.visualizer", false),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The info command
|
||||||
|
*/
|
||||||
|
INFO("info", "stargate.command.info", true);
|
||||||
|
|
||||||
|
private final String name;
|
||||||
|
private final String permissionNode;
|
||||||
|
private final boolean requiresPlayer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Instantiates a new Stargate-Command Command
|
||||||
|
*
|
||||||
|
* @param name <p>The name of the new command</p>
|
||||||
|
* @param permissionNode <p>The permission node required for using the command</p>
|
||||||
|
*/
|
||||||
|
StargateCommandCommand(String name, String permissionNode, boolean requiresPlayer) {
|
||||||
|
this.name = name;
|
||||||
|
this.permissionNode = permissionNode;
|
||||||
|
this.requiresPlayer = requiresPlayer;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the name of this command (the string after /sgc)
|
||||||
|
*
|
||||||
|
* @return <p>The name of this command</p>
|
||||||
|
*/
|
||||||
|
public String getName() {
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the permission node required for this command
|
||||||
|
*
|
||||||
|
* @return <p>The permission node required for this command</p>
|
||||||
|
*/
|
||||||
|
public String getPermissionNode() {
|
||||||
|
return permissionNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets whether this command requires usage by a player
|
||||||
|
*
|
||||||
|
* @return <p>True if this command can only be used by a player</p>
|
||||||
|
*/
|
||||||
|
public boolean requiresPlayer() {
|
||||||
|
return requiresPlayer;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user