32 lines
1 KiB
Java
32 lines
1 KiB
Java
package de.kentoj.kencommandapi;
|
|
|
|
import de.kentoj.kencommandapi.api.CommandHandler;
|
|
import de.kentoj.kencommandapi.api.node.RootCommandNode;
|
|
import org.bukkit.command.Command;
|
|
import org.bukkit.command.CommandSender;
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
|
import java.util.Arrays;
|
|
|
|
public class BukkitKenCommand extends Command {
|
|
|
|
private final RootCommandNode<CommandSender> rootNode;
|
|
private final CommandHandler<CommandSender> commandHandler;
|
|
|
|
protected BukkitKenCommand(
|
|
CommandHandler<CommandSender> commandHandler,
|
|
RootCommandNode<CommandSender> rootNode
|
|
) {
|
|
super(rootNode.getNames()[0]);
|
|
this.commandHandler = commandHandler;
|
|
this.rootNode = rootNode;
|
|
this.setAliases(Arrays.asList(rootNode.getNames()));
|
|
this.setPermission(rootNode.getPermission());
|
|
}
|
|
|
|
@Override
|
|
public boolean execute(@NotNull CommandSender sender, @NotNull String commandLabel, @NotNull String[] args) {
|
|
commandHandler.invoke(rootNode, sender, args);
|
|
return true;
|
|
}
|
|
}
|