A Command Framework for Bukkit Plugins
repositories {
mavenCentral()
}
dependencies {
compileOnly("io.github.nottamion:commandclip:1.1.0")
}
<dependency>
<groupId>io.github.nottamion</groupId>
<artifactId>commandclip</artifactId>
<version>1.1.0</version>
</dependency>
To reduce the file size of your plugin its recommended to let spigot download the framework for you. This also removes the need to shade the framework into your plugin jar.
libraries:
- io.github.nottamion:commandclip:1.1.0
Documentation is currently being built at https://github.com/notTamion/CommandClip/wiki.
For now just take a look at the example below.
Here is an example utilizing basic features:
new BaseCommand("hello", this)
.subCommand(new SubCommand("there")
.executes((commandSender, s, strings) -> {
commandSender.sendMessage(s + " there " + strings[0]);
})
.tabCompletes((commandSender, s, strings) -> strings.length == 1 ? Bukkit.getOnlinePlayers().stream().map(Player::getName).toList(): List.of())
.testArgs((commandSender, s, strings) -> {
if (strings.length != 1)
return "Please provide a valid playername";
if (!Bukkit.getOnlinePlayers().stream().map(player -> player.getName()).toList().contains(strings[0]))
return "Player is not online";
return null;
})
.permission("hello.there", "You aren't allowed to get a Welcome :("))
.alias("hi")
.commandDescription("Welcomes you")
.commandPermission("hello")
.register();