Cobblemon Trainer Battle Commands (TBCS)
Предоставляет команды для управления тренерами и запуска сражений, которые могут интегрироваться с другими модами (например, Easy NPC).
Данный мод в первую очередь предназначен для создателей карт и разработчиков модпаков.
Команды
tbcs
attach <trainerId> <entity>
: Привязывает указанного тренера к выбранной сущности (тренер может быть привязан только к одной сущности).battle <battleFormat> <participants1>... vs <participants2>... [rules <battleRules>] [onwin <winCommands>]
: Запускает сражение между участниками с указанным форматом, правилами и командами при победе (последние два параметра необязательны).
Для использования команд необходим уровень разрешений
2
.
Правила сражений
Правила описываются JSON-объектом со следующими свойствами:
maxItemUses
: Определяет максимальное количество предметов, которые может использовать каждый участник.
Команды при победе
Команды описываются JSON-объектом с динамической структурой. Объект может содержать свойства для каждой стороны сражения (1
или 2
), содержащие массивы команд для выполнения при победе.
В командах доступны специальные селекторы формата @<n>
, где <n>
указывает позицию участника относительно стороны сражения.
Примеры
tbcs attach tbcs:mytrainer1 @e[type=minecraft:villager,limit=1,sort=nearest]
Привязывает тренера tbcs:mytrainer1
к ближайшему жителю.
tbcs battle GEN_9_SINGLES @s vs tbcs:mytrainer1
Запускает одиночный бой между игроком и привязанным тренером.
tbcs battle GEN_9_SINGLES @s vs tbcs:mytrainer1 rules {maxItemUses: 1}
Ограничивает использование предметов до 1 на сторону.
tbcs battle GEN_9_SINGLES @s vs tbcs:mytrainer1 onwin {1: ['give @1 minecraft:diamond']}
Выдаёт алмаз победившему игроку.
tbcs battle GEN_9_MULTI @s tbcs:mytrainer1 vs tbcs:mytrainer2 tbcs:mytrainer3 onwin {1: ['@2 say We got them!']}
При победе первой стороны тренер tbcs:mytrainer1
произносит реплику.
Структура тренеров
Тренеры определяются через JSON-файлы с использованием схемы RCTApi. Примеры и документация доступны в официальной документации.
Расположение файлов
Файлы тренеров ищутся в путях, указанных в trainerPaths
(относительно папки мира). Идентификаторы формируются на основе имён файлов. Например:
saves
My World
Trainers
gym_leader.json
Зарегистрирует тренера с ID tbcs:gym_leader
.
Конфигурация
Файл настроек config/tbcs-server.toml
позволяет:
- Настраивать пути поиска тренеров (
trainerPaths
) - Указывать совместимые моды (
trainerMods
) - Задавать уровень разрешений для команд (
winCommandsPermission
)