Плейсхолдеры

Плейсхолдеры — это специальные текстовые поля, которые в процессе выполнения активатора заменяются на соответствующие им динамически вычисляемые значения.

Например, плейсхолдер %player% будет заменяться на имя текущего игрока. Это можно использовать в различных действиях. Например, MESSAGE=%player% hello!

Вот перечень плейсхолдеров:

ПлейсхолдерОписание
%TIME_SERVER%
%TIME_SERVER:<TimeFormat>%
Системное врем. Можно использовать дополнительный параметр, чтобы задать формат в котором будет выводиться время:
К примеру, %TIME_SERVER:HH:mm:ss% будет отображать только часы, минуты и секунды (Пример: 10:59:44)
Формат описания времени описан здесь
%TIME_INGAME%Внутри-игровое время в мире, в котором находится игрок. Если игрок не указан, то отобразиться время главного (первого) мира.
%PLAYER_LOC%Текущие координаты игрока
%PLAYER_LOC_EYE%Координаты головы (глаз) игрока
%PLAYER_LOC_VIEW%Координаты точки, куда смотрит игрок
%PLAYER_NAME%Имя игрока
%PLAYER_DISPLAY%Имя игрока для отображения (может отличаться от обычного)
%HEALTH%Значение здоровья игрока
%PLAYER_LOC_DEATH%Последние координаты, где игрок умирал
%TARGET_PLAYER%Целевой игрок (имя)используется в ряде активаторов
%MONEY%
%MONEY.<Мир>%
%MONEY.<Мир>.<НазваниеВалюты>%
Остаток денежных средств на счете игрока (Нужен плагин Vault или Craftconomy3)
%RANDOM:<Число>%
%RANDOM:<От>-<До>%
%RANDOM:<Значение1>,<Значение2> [,...,<ЗначениеN>]%
Случайное число или одно из случайно выбранных слов.
Пример:
%RANDOM:100% — вернет случайное целое число от 0 до 100.<br />%RANDOM:100-200%— вернет случайное целое число от 100 до 200<br />%RANDOM:hello,hi,good day%` — вернёт одну из подстрок, разделённых
%CALC:<expression>%Вычислить выражение. Пример: %CALC:1+2% заменится на "3".
Можно использовать переменные внутри этого плейсхолдера: %CALC:1+x+z%
Поддерживаются следующие операции:
· Базовые математические операторы (^ * × · / ÷ % + -);
· Преимущество выражений в скобках;
· Неявное умножение подвыражений в скобках;
· Поддержка шестнадцатиричных чисел - префикс 0x.
%PLAYER_ITEM_HAND%Строковое представление предмета, который игрок держит в руке
%PLAYER_INV:<Slot>%Строковое представление предмета, который находится в указанном слоте. <Слот> может быть обозначен как номером слота инвентаря (от 0 до 35) или названием helmet, chestplate, leggings, boots, hand.
Примеры:
%player_inv:10% — Предмет в слоте номер 10;
%player_inv:helmet% — Шлем игрока;
%player_inv:hand%
— Предмет в руках и у игрока.
%raw:<%AnotherPlaceHolder%>%Плейсхолдер, который служит для того чтобы предотвратить разворачивание вложенных плейсхолдеров. Т.е. %raw:%var:test%% будет заменено на %var:test%, а не на значение переменной test

Переменные-плейсхолдеры

Любая переменная может быть использована в качестве плейхолдера.

Нужно просто воспользоваться форматом: %var:<ИмяПеременной>% для глобальных переменных и %varp:<ИмяПеременной>% для персональных. Также можно обратиться к переменной любого игрока используя плейсхолдер: %var:<Игрок>.<ИмяПеременной>%

Временные плейсхолдеры

Некоторые активаторы, действия или флаги создают временные плейсхолдеры. Эти плейсхолдеры описаны в соответствующих разделах. Использовать временный плейсхолдер можно только в процессе исполнения данного активатора, потом он будет удален. Однако, никто не мешает сохранить его значение в переменную, если значениие такого плейсхолдера надо будет использовать в дальнейшем.

Flag-placeholders

В дополнении ко всем этим плейсхолдерам, каждый флаг тоже имя является. Нужно просто добавить окончание "_flag" к названию флаг и заключить, полученное, слово в знаки "%". Например, плейсхолдер %time_flag% будет заменен значением флага TIME, в том случае, если этот флаг использовался в активаторе.

Поддержка плейсхолдеров плагина PlaceholderAPI

Если у вас на сервере установлен плагин PlaceholderAPI, то вы можете использовать плейсхолдеры предоставляемые этим плагином в любых активаторах, действиях или флагах.

Плейсхолдеры вводе команды плагина

Ряд плейсхолдеров может быть использовать только при вводе команды, когда вы добавляете новые действия, флаги или активаторы. Эти плейсхолдеры были введены, чтобы сделать процесс ввода команд немного проще.

К примеру, можно написать команду /react add activator action TP %here% вместо того чтобы указывать координаты точки перемещения полностью.

НазваниеПлейсхолдер (и алиасы)Описание
Координаты игрока%here%Этот плейхолдер будет заменен на текущие координаты игрока (включая направление взора)
Координаты головы%eye%
%head%
Этот плейхолдер будет заменен на текущие координаты головы (глаз) игрока (включая направление взора)
Блок под прицелом%view%
%viewpoint%
Коордианты блока, на который направлен прицел (курсор)
Координаты выделенного блока%selection%
%select%
%sel%
Координаты блока, который был выделен ранее при помощи команды /react select. (Нужно посмотреть на нужный блок, написать команду /react select. После этого можно будет использовать пдейсхолдер %select% для подстановки в параметры команды /react add <...>.