

EventJS
Активный0.0
Установок
Последнее обновление
Версии
EventJS
Забудьте о необходимости перезапуска Minecraft при разработке скриптов для KubeJS! EventJS — это революционное дополнение, которое превращает работу с нативными событиями в увлекательный и продуктивный процесс.
Преимущества EventJS
Ваши обработчики событий будут исполняться моментально, ведь EventJS позволяет обновлять их совершенно без перезапуска игры! Но это ещё не всё — мод обеспечивает защиту от неожиданных сбоев. Если в вашем скрипте появится ошибка, он просто не выполнится, предотвращая краш всего игрового клиента.
EventJS поддерживает раздельные скрипты для сервера и клиента, что делает его незаменимым инструментом при работе с событиями, специфичными для каждой стороны.
Простота использования
EventJS работает полностью автоматически! После установки все ваши события Forge станут перезагружаемыми без каких-либо дополнительных действий. Новая функциональность прекрасно интегрируется с существующими подходами KubeJS.
Для более тонких настроек доступны два основных метода:
NativeEvents.onEvent(...)
— стандартное подключениеNativeEvents.onGenericEvent(...)
— для сложных универсальных событий
Класс NativeEvents
присутствует во всех трёх типах скриптов (клиентских, серверных, стартовых), позволяя полностью контролировать на каких именно устройствах будут исполняться ваши обработчики.
Синтаксис (v1.0.0 - 1.3.0)
NativeEvents.onEvent(eventType, handler)
NativeEvents.onEvent(priority, receiveCancelled, eventType, handler)
NativeEvents.onGenericEvent(genericClassFilter, eventType, handler)
NativeEvents.onGenericEvent(genericClassFilter, priority, receiveCancelled, eventType, handler)
handler
— функция обратного вызова, принимающая событие:(event) => {...}
eventType
,genericClassFilter
— строки с названием класса или сам класс, загруженный черезjava(...)
илиJava.loadClass(...)
let handler: (event: AnyForgeEvent) => void
let eventType: string | Class
let genericClassFilter: string | Class
let priority: $EventPriority | "highest" | "high" | "normal" | "low" | "lowest"
let receiveCancelled: boolean
EventJS 1.4.0 и совместимость с ProbeJS
В новой версии автор EventJS уделил особое внимание стабильности взаимодействия с ProbeJS. Теперь классы событий и универсальных фильтров активно поддерживаются только в виде объектов Class
, загруженных через стандартные методы KubeJS.
let eventType: Class
let genericClassFilter: Class
Поддержка версий Minecraft
- 1.0.0: только для Minecraft 1.16.5
- 1.1.0: поддержка 1.16.5 и 1.20.1
- 1.2.0: все версии от 1.16 до 1.20
Где появляется разница между этим аддоном и стандартными возможностями KubeJS? Ответ прост: KubeJS реализовал поддержку перезагружаемых событий только начиная с версии Minecraft 1.21!
Важное замечание: несмотря на использование одинакового названия класса NativeEvents
, внутренние механизмы оригинального KubeJS и EventJS существенно отличаются.