📎Ивенты

Настройка ивентов это основная работа с аирдропом.

Список всех ивентов

ивентигроквызывается
CLICK_CLOSE

да

Вызывается когда кто-то кликает по закрытому аирдропу

CLICK_OPEN

да

Вызывается когда кто-то кликает по открытому аирдропу

TIMER

нет

Вызывается самим аирдропом каждую секунду

START_EVENT

нет

Вызывается когда аирдроп спавнится

END_EVENT

нет

Вызывается когда аирдроп исчезает

UNLOCK_EVENT

нет

Вызывается когда аирдроп открывается

FIRST_OPEN

да

Вызывается когда кто-то впервый раз открывает аирдроп

SUMMONER

да

Вызывается когда кто-то использует предмет призыва аирдропа

ACTIVATE

да

Вызывается когда кто-то активирует аирдроп

STOP_WHEN_EMPTY

нет

Вызывается когда аирдроп, заканчивается из-за опустошения

NONE

нет

Невызываемый ивент также не отображается в списке слушателей

Использование

  name:
    description: 'описание'
    type: 'START_EVENT'
    commands:
      - 'Команда'

"name" Может быть любым

description - стои зополнять кратко и понятно, он отображается в меню списке ивентов

type - указываеться тип ивента, а в commands команды

Вот так это выглядит из игры.

Также можно добавлять проверки

requirement:
  check-1:
    type: 'NUMERICAL_CHECK'
    input: '{time-to-start} == 30'

Типы проверок

типописание123
NUMERICAL_CHECK

Сравнение чисел

== если числа равны 
!= если числа не равны
> если первое число больше второго
< если первое число меньше второго
>= если первое число больше или равно второму
<= если первое число меньше или равно второму
% остаток от деления (10 % 10 == 0)
LOGICAL_CHECK

Логическая

Используются внутриние плейсхолдеры

STRING_CHECK

Сравнение строк

== если строки равны                                 #
!= если строки не равны                                #
contains если строка содержит                               #
!contains если строка не содержит 

Использование проверок в ивентах

  alert-2:
    description: '&fСообщение о начале через 30сек'
    type: 'TIMER'
    requirement:
      check-1:
        type: 'NUMERICAL_CHECK'
        input: '{time-to-start} == 30'
    commands:
      - '[MESSAGE_ALL] &aАирдроп появится через 30 секунд!'

Ивент TIMER вызывается каждую секунду, {time-to-start} заменяется на время до старта и как только до старта останется 30 секунд, условие input: '30 == 30' станет верным и выполниться команда [MESSAGE_ALL] что отправит сообщение всем на сервере

Математические вычисления

[math#100 / 10#] - это заменится на итог деления 100 на 10

синтаксис: [math#<число> <оператор> <число>#]

дополнения: блок math может быть только 1 на строке

Список команд

Командаигрокописание
[MESSAGE]

да

Отправляет сообщение игроку

[MESSAGE_ALL]

нет

Отправляет сообщение всем игрокам

[TITLE]

да

Отправляет тайтл игроку

[TITLE_ALL]

нет

Отправляет тайтл всем игрокам

[ACTIONBAR]

да

Отправляет сообщение над хот баром игроку

[ACTIONBAR_ALL]

нет

Отправляет сообщение над хот баром всем игрокам

[CONSOLE]

нет

Выполняет команду от имени консоли

[PLAYER]

да

Выполняет команду от имени игрока

[SOUND]

да

Воиспроизводит звук игроку

[SOUND_ALL]

нет

Воиспроизводит звук всем игрокам

[EFFECT_START-<NAME>-<id>]

нет

Запускает эффект

[EFFECT_STOP-<id>]

нет

Отстанавливает эффект

[EFFECT_STOP_ALL]

нет

Останавливает все эффекты

[SET_MATERIAL_<MATERIAL>]

нет

Устанавливает матерьял аирдропу

[SCHEMATICS_PASTE-<name>]

нет

Устанавливает схематику

[SCHEMATICS_REMOVE]

нет

Удаляет схематику

 [SET_TIME_START-<time>]

нет

Устанавливает время до старта

[SET_TIME_UNLOCK-<time>]

нет

Устанавливает время до открытия

[SET_TIME_END-<time>]

нет

Устанавливает время до окончания

[SET_REGION]

нет

Устанавливает регион

[SET_HOLO_TIME_TO_START]

нет

Спавнит голограму с обратным отсчётом до старта

[LOGGER]

нет

Выводит лог в консоль

[ERROR]

нет

Выводит ошибку в консоль

[CALL-<listener>]

нет

Вызывает слушатель. Если игрок был то вызываемый слушатель получит его

Как Вы можете заметить некоторые команды требуют чтобы в ивенте участвовал игрок

Last updated