-
Notifications
You must be signed in to change notification settings - Fork 0
Register Event Listener
Potato Destroyer edited this page Mar 24, 2018
·
2 revisions
registerCommands {
command("aaa") {
subCommand("a") { _, _ ->
registerEvent {
event<PlayerJoinEvent> {
player sendMessage ChatColor.AQUA * "Hello,${player.name}!"
}
}
CommandResult.Successful
}
val event = createEvent<PlayerBedEnterEvent> {
player sendMessage "♂"
}
subCommand("b") { _, _ ->
registerEvent(event)
CommandResult.Successful
}
subCommand("c") { _, _ ->
unregisterEvent(event)
CommandResult.Successful
}
subCommand("d") { _, _ ->
registerEvents {
event<PlayerBedLeaveEvent> { }
event<PlayerAdvancementDoneEvent> { }
//...
}
CommandResult.Successful
}
}
}Each of event listeners can be register or unregister dynamically. As code above, they are registered or unregistered as commands execute.
This fuction is used to create PackingEvent. The scope after this function is The Event.()->Unit.
Register a event.
This function have two kinds of parameters.
- PackingEvent
- ()->PackingEvent
You don't need to new PackingEvent by your self, we provides event<T> function to help you.
This function provides dsl to register event listenrs, you can register many listeners once.
This function is used to unregister listener, you have to save PackingEvent's reference as you do so.