KairoBeforeEvents
import { router } from '@kairo-js/router'
router.beforeEvents를 통해 접근하는 클래스입니다. 각 프로퍼티는 Subscribable<T>를 구현합니다.
프로퍼티
Kairo 고유 이벤트
Minecraft ScriptAPI 패스스루 이벤트
@minecraft/server의 WorldBeforeEvents에 대응하는 이벤트입니다.
addonDeactivate
readonly addonDeactivate: Subscribable<AddonDeactivateBeforeEvent>
애드온이 비활성화되기 전에 발생합니다.
effectAdd
readonly effectAdd: Subscribable<EffectAddBeforeEvent>
@minecraft/server의 WorldBeforeEvents.effectAdd에 대응합니다.
entityHeal
readonly entityHeal: Subscribable<EntityHealBeforeEvent>
@minecraft/server의 WorldBeforeEvents.entityHeal에 대응합니다.
entityItemPickup
readonly entityItemPickup: Subscribable<EntityItemPickupBeforeEvent>
@minecraft/server의 WorldBeforeEvents.entityItemPickup에 대응합니다.
entityRemove
readonly entityRemove: Subscribable<EntityRemoveBeforeEvent>
@minecraft/server의 WorldBeforeEvents.entityRemove에 대응합니다.
explosion
readonly explosion: Subscribable<ExplosionBeforeEvent>
@minecraft/server의 WorldBeforeEvents.explosion에 대응합니다.
itemUse
readonly itemUse: Subscribable<ItemUseBeforeEvent>
@minecraft/server의 WorldBeforeEvents.itemUse에 대응합니다.
playerBreakBlock
readonly playerBreakBlock: Subscribable<PlayerBreakBlockBeforeEvent>
@minecraft/server의 WorldBeforeEvents.playerBreakBlock에 대응합니다.
playerGameModeChange
readonly playerGameModeChange: Subscribable<PlayerGameModeChangeBeforeEvent>
@minecraft/server의 WorldBeforeEvents.playerGameModeChange에 대응합니다.
playerInteractWithBlock
readonly playerInteractWithBlock: Subscribable<PlayerInteractWithBlockBeforeEvent>
@minecraft/server의 WorldBeforeEvents.playerInteractWithBlock에 대응합니다.
playerInteractWithEntity
readonly playerInteractWithEntity: Subscribable<PlayerInteractWithEntityBeforeEvent>
@minecraft/server의 WorldBeforeEvents.playerInteractWithEntity에 대응합니다.
playerLeave
readonly playerLeave: Subscribable<PlayerLeaveBeforeEvent>
@minecraft/server의 WorldBeforeEvents.playerLeave에 대응합니다.
shutdown
readonly shutdown: Subscribable<ShutdownBeforeEvent>
@minecraft/server의 WorldBeforeEvents.shutdown에 대응합니다.
startup
readonly startup: Subscribable<KairoStartupBeforeEvent>
Minecraft의 worldLoad보다 먼저 발생합니다. 모든 API는 이 핸들러 안에서 선언하세요.
weatherChange
readonly weatherChange: Subscribable<WeatherChangeBeforeEvent>
@minecraft/server의 WorldBeforeEvents.weatherChange에 대응합니다.
사용 예시
import { router } from '@kairo-js/router'
router.beforeEvents.startup.subscribe((ev) => {
ev.api.register('myAddon/hello', async () => {
return { message: 'hello' }
})
})
router.beforeEvents.playerBreakBlock.subscribe((ev) => {
// Cancel a block break
ev.cancel()
})