Listening and cancelling events

The registerEvent function allows your script to listen for Bukkit or custom events, enabling reactive behavior when specific server events occur.

Syntax:

registerEvent(eventClassName, handler);
  • eventClassName (String): The full Java class name of the event to listen to, e.g., "org.bukkit.event.player.PlayerJoinEvent".

  • handler (Function) : The function that will run whenever the event gets activated


Example: Simple Player Join Event Listener

registerEvent("org.bukkit.event.player.PlayerJoinEvent", function(event) {
    var player = event.getPlayer();
    player.sendMessage("Welcome to the server, " + player.getName() + "!");
});

This example sends a welcome message to players when they join the server.


Example: Using an Object as Event Handler

registerEvent("org.bukkit.event.player.PlayerJoinEvent", {
    handleEvent: function(event) {
        var player = event.getPlayer();
        player.sendMessage("Hello from object handler, " + player.getName() + "!");
    }
});

Notes

  • The event object is the Bukkit event instance, allowing access to all event methods and data.

  • If the event is cancellable (like block placement or damage events), you can call event.setCancelled(true) inside your handler to prevent the action.

Last updated