Регистрация субкоманд
Чтобы создать класс подкоманды, мы будем использовать SubCommand интерфейс
TestSubCommand класс
import com.jodexindustries.donatecase.api.SubCommand;
import com.jodexindustries.donatecase.api.SubCommandType;
import org.bukkit.command.CommandSender;
import java.util.ArrayList;
import java.util.List;
public class TestSubCommand implements SubCommand {
/**
* Выполняет заданную подкоманду
* @param sender Источник команды
* @param args Передаваемые аргументы команды
*/
@Override
public void execute(CommandSender sender, String[] args) {
// здесь код как обычной Bukkit команды
}
/**
* Заполнение табуляции
* @param sender Источник команды
* @param args Передаваемые аргументы команды
* @return Заполнение табуляции
*/
@Override
public List<String> getTabCompletions(CommandSender sender, String[] args) {
// код для табуляции
return new ArrayList<>();
}
/**
* Тип команды (ADMIN, MODER, PLAYER)
* @return SubCommandType
*/
@Override
public SubCommandType getType() {
return SubCommandType.PLAYER;
}
/**
* Получение аргументов команды * для отображения в описании команды в справке /dc
* @return Аргументы команды
*/
@Override
public String[] getArgs() {
return null;
}
/**
* Получить описание команды
* Описание, которое должно выступать в качестве описания команды в справке /dc
* @return Аргументы команды
*/
@Override
public String getDescription() {
return null;
}
}
Main class
@Override
public void onEnable() {
// получение CaseManager
CaseManager api = new CaseManager(this);
// регистрация суб команды
SubCommandManager subCommandManager = api.getSubCommandManager();
subCommandManager.registerSubCommand("test", new TestCommand());
}