CommandClip
PluginMIT

CommandClip

A Command Framework for Bukkit Plugins

236
Downloads
0
Followers
2 years ago
Updated
📦
1
Versions

📖About CommandClip

CommandClip CommandClip Build Status Latest Version

A Command Framework for Bukkit Plugins

Dependency

Gradle
repositories {
    mavenCentral()
}

dependencies {
    compileOnly("io.github.nottamion:commandclip:1.1.0")
}
Maven
<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.

plugin.yml
libraries:
  - io.github.nottamion:commandclip:1.1.0

Usage

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();