Package dev.jorel.commandapi
Class CommandTree
java.lang.Object
dev.jorel.commandapi.CommandTree
This is the root node for creating a command as a tree
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected CustomCommandExecutor<?>The CustomCommandExecutor for this executable implementationprotected final dev.jorel.commandapi.CommandMetaDataThe Command's meta data for this executable command -
Constructor Summary
ConstructorsConstructorDescriptionCommandTree(String commandName) Creates a main root node for a command tree with a given command name -
Method Summary
Modifier and TypeMethodDescriptionClear all executors from the current command builderexecutes(CommandExecutor executor, ExecutorType... types) Adds an executor to the current command builderexecutes(ResultingCommandExecutor executor, ExecutorType... types) Adds an executor to the current command builderAdds an executor to the current command builderAdds an executor to the current command builderexecutesConsole(ConsoleCommandExecutor executor) Adds an executor to the current command builderAdds an executor to the current command builderexecutesEntity(EntityCommandExecutor executor) Adds an executor to the current command builderexecutesEntity(EntityResultingCommandExecutor executor) Adds an executor to the current command builderexecutesNative(NativeCommandExecutor executor) Adds an executor to the current command builderexecutesNative(NativeResultingCommandExecutor executor) Adds an executor to the current command builderexecutesPlayer(PlayerCommandExecutor executor) Adds an executor to the current command builderexecutesPlayer(PlayerResultingCommandExecutor executor) Adds an executor to the current command builderexecutesProxy(ProxyCommandExecutor executor) Adds an executor to the current command builderexecutesProxy(ProxyResultingCommandExecutor executor) Adds an executor to the current command builderString[]Returns an array of aliases that can be used to run this commandCustomCommandExecutor<? extends org.bukkit.command.CommandSender>Returns the executors that this command hasgetName()Returns the name of this commandReturns the permission associated with this commandPredicate<org.bukkit.command.CommandSender>Returns the requirements that must be satisfied to run this commandvoidoverride()Overrides a command.voidregister()Registers the commandvoidsetAliases(String[] aliases) Sets the aliases for this commandvoidsetExecutor(CustomCommandExecutor<? extends org.bukkit.command.CommandSender> executor) Sets the executors for this commandvoidsetPermission(CommandPermission permission) Sets the permission required to run this commandvoidsetRequirements(Predicate<org.bukkit.command.CommandSender> requirements) Sets the requirements that must be satisfied to run this commandthen(ArgumentTree tree) Create a child branch on the treewithAliases(String... aliases) Adds an array of aliases to the current command builderwithFullDescription(String description) Sets the full description for this command.Sets the short and full description for this command.withoutPermission(CommandPermission permission) Applies a permission to the current command builderwithoutPermission(String permission) Applies a permission to the current command builderwithPermission(CommandPermission permission) Applies a permission to the current command builderwithPermission(String permission) Applies a permission to the current command builderwithRequirement(Predicate<org.bukkit.command.CommandSender> requirement) Adds a requirement that has to be satisfied to use this command.withShortDescription(String description) Sets the short description for this command.
-
Field Details
-
meta
protected final dev.jorel.commandapi.CommandMetaData metaThe Command's meta data for this executable command -
executor
The CustomCommandExecutor for this executable implementation
-
-
Constructor Details
-
CommandTree
Creates a main root node for a command tree with a given command name- Parameters:
commandName- The name of the command to create
-
-
Method Details
-
then
Create a child branch on the tree- Parameters:
tree- the child node- Returns:
- this root node
-
register
public void register()Registers the command -
getName
Returns the name of this command- Returns:
- the name of this command
-
withPermission
Applies a permission to the current command builder- Parameters:
permission- The permission node required to execute this command- Returns:
- this command builder
-
withPermission
Applies a permission to the current command builder- Parameters:
permission- The permission node required to execute this command- Returns:
- this command builder
-
withoutPermission
Applies a permission to the current command builder- Parameters:
permission- The permission node required to execute this command- Returns:
- this command builder
-
withoutPermission
Applies a permission to the current command builder- Parameters:
permission- The permission node required to execute this command- Returns:
- this command builder
-
withRequirement
Adds a requirement that has to be satisfied to use this command. This method can be used multiple times and each use of this method will AND its requirement with the previously declared ones- Parameters:
requirement- the predicate that must be satisfied to use this command- Returns:
- this command builder
-
withAliases
Adds an array of aliases to the current command builder- Parameters:
aliases- An array of aliases which can be used to execute this command- Returns:
- this command builder
-
getPermission
Returns the permission associated with this command- Returns:
- the permission associated with this command
-
setPermission
Sets the permission required to run this command- Parameters:
permission- the permission required to run this command
-
getAliases
Returns an array of aliases that can be used to run this command- Returns:
- an array of aliases that can be used to run this command
-
setAliases
Sets the aliases for this command- Parameters:
aliases- the aliases for this command
-
getRequirements
Returns the requirements that must be satisfied to run this command- Returns:
- the requirements that must be satisfied to run this command
-
setRequirements
Sets the requirements that must be satisfied to run this command- Parameters:
requirements- the requirements that must be satisfied to run this command
-
withShortDescription
Sets the short description for this command. This is the help which is shown in the main /help menu.- Parameters:
description- the short description for this command- Returns:
- this command builder
-
withFullDescription
Sets the full description for this command. This is the help which is shown in the specific /help page for this command (e.g. /help mycommand).- Parameters:
description- the full description for this command- Returns:
- this command builder
-
withHelp
Sets the short and full description for this command. This is a short-hand for theExecutableCommand.withShortDescription(java.lang.String)andExecutableCommand.withFullDescription(java.lang.String)methods.- Parameters:
shortDescription- the short description for this commandfullDescription- the full description for this command- Returns:
- this command builder
-
override
public void override()Overrides a command. Effectively the same as unregistering the command using CommandAPI.unregister() and then registering the command using .register() -
executes
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(CommandSender, Object[]) -> ()that will be executed when the command is runtypes- A list of executor types to use this executes method for.- Returns:
- this command builder
-
executes
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(CommandSender, Object[]) -> intthat will be executed when the command is runtypes- A list of executor types to use this executes method for.- Returns:
- this command builder
-
executesPlayer
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(Player, Object[]) -> ()that will be executed when the command is run- Returns:
- this command builder
-
executesPlayer
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(Player, Object[]) -> intthat will be executed when the command is run- Returns:
- this command builder
-
executesEntity
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(Entity, Object[]) -> ()that will be executed when the command is run- Returns:
- this command builder
-
executesEntity
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(Entity, Object[]) -> intthat will be executed when the command is run- Returns:
- this command builder
-
executesProxy
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(Entity, Object[]) -> ()that will be executed when the command is run- Returns:
- this command builder
-
executesProxy
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(Entity, Object[]) -> intthat will be executed when the command is run- Returns:
- this command builder
-
executesCommandBlock
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(BlockCommandSender, Object[]) -> ()that will be executed when the command is run- Returns:
- this command builder
-
executesCommandBlock
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(BlockCommandSender, Object[]) -> intthat will be executed when the command is run- Returns:
- this command builder
-
executesConsole
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(BlockCommandSender, Object[]) -> ()that will be executed when the command is run- Returns:
- this command builder
-
executesConsole
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(BlockCommandSender, Object[]) -> intthat will be executed when the command is run- Returns:
- this command builder
-
executesNative
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(NativeCommandExecutor, Object[]) -> ()that will be executed when the command is run- Returns:
- this command builder
-
executesNative
Adds an executor to the current command builder- Parameters:
executor- A lambda of type(NativeCommandExecutor, Object[]) -> intthat will be executed when the command is run- Returns:
- this command builder
-
getExecutor
Returns the executors that this command has- Returns:
- the executors that this command has
-
setExecutor
Sets the executors for this command- Parameters:
executor- the executors for this command
-
clearExecutors
Clear all executors from the current command builder- Returns:
- this command builder
-