The event Manager is your go-to point if you want to register custom event handlers.

You can register EventHandlers for everything that derives from Event. Make sure to tell ZC of the type you are using, so that you can access the event's properties.

Diese Klasse importieren

Link to diese-klasse-importieren

It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.

ZenScript
Copy
import crafttweaker.api.events.CTEventManager;

Name: register

Registers a new Event listener.

ZenScript
Copy
// CTEventManager.register<T : Event>(consumer as Consumer<T>)

CTEventManager.register<crafttweaker.api.event.entity.player.MCAnvilRepairEvent>((event) => {
 var player = event.player;
 var result = event.itemResult;
 println("Player '" + player.name + "' crafted " + result.commandString);
 });
CTEventManager.register<crafttweaker.api.event.MCEvent>((event) => {
 //Don't actually register a consumer for every event
 println("Some Event was captured");
 });
ParameterTypeBeschreibung
Parameter
konsumenten
Type
Consumer<T>
Beschreibung
The event handler as consumer
Parameter
T
Type
Event
Beschreibung
The type of the event

Name: register

Registers a new Event listener with a specific priority.

ZenScript
Copy
// CTEventManager.register<T : Event>(priority as EventPriority, consumer as Consumer<T>)

CTEventManager.register<crafttweaker.api.event.entity.player.MCAnvilRepairEvent>(EventPriority.HIGHEST, (event) => {
 var player = event.player;
 var result = event.itemResult;
 println("Player '" + player.name + "' crafted " + result.commandString);
 });
ParameterTypeBeschreibung
Parameter
priority
Type
EventPriority
Beschreibung
priority for this listener
Parameter
konsumenten
Type
Consumer<T>
Beschreibung
The event handler as consumer
Parameter
T
Type
Event
Beschreibung
The type of the event