CommandAPI - это плагин для серверов Bukkit/Spigot, который даёт полную поддержку новой системы команд, появившейся в Minecraft 1.13. Если ты разрабатываешь плагины и устал вручную парсить аргументы, проверять типы и обрабатывать ошибки - эта штука реально упростит жизнь.
Начиная с Minecraft 1.13, Mojang переписали командную систему - появился новый UI, автодополнение, строгие типы аргументов. Но для разработчиков плагинов это означало головную боль: нужно было вручную работать с Brigadier, проверять, что игрок ввёл число, а не текст, и так далее. CommandAPI берёт всё это на себя. Ты просто описываешь команду и её аргументы, а плагин сам проверяет, парсит и подсказывает.
Раньше, чтобы получить число из аргумента, приходилось писать так:
onCommand(CommandSender sender, Command command, String label, String[] args) {
try {
int i = Integer.parseInt(args[0]);
// Делаем что-то с числом
catch (NumberFormatException e) {
// Обрабатываем ошибку
}
}
С CommandAPI всё проще:
new CommandAPICommand("mycommand")
.withArguments(new IntegerArgument("myint"))
.executes((sender, args) -> {
int i = (int) args.get("myint");
// Делаем что-то с числом
})
.register();
Плагин сам проверит, что ввели именно число, и если нет - выдаст ошибку. Всего доступно больше 40 типов аргументов: от чисел до зачарований, сущностей, координат, предметов и эффектов зелья.
Больше не нужно писать if (sender instanceof Player) - просто используй executesPlayer:
new CommandAPICommand("mycommand")
.withArguments(arguments)
.executesPlayer((player, args) -> {
player.sendMessage("Привет, " + player.getDisplayName());
})
.register();
Если у тебя уже есть плагин, команды которого не работают с /execute, не беда. CommandAPI умеет конвертировать команды других плагинов - они станут совместимы с /execute и датапаками. Без переписывания кода.
Короче, если ты пишешь плагины для сервера на Майнкрафт и хочешь сэкономить кучу времени - CommandAPI реально мастхэв. Ставится просто, работает стабильно, документация есть (и она реально крутая). Скачать плагин CommandAPI можно для Bukkit/Spigot/Paper на Minecraft 1.13+.

CommandAPI - мощный плагин для Bukkit/Spigot, который упрощает создание команд с новым UI из Minecraft 1.13. Автоматическая проверка аргументов, поддержка /execute и функций - всё для удобства разработчиков.