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.

Импорт класса

Link to импорт-класса

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");
 });
ПараметрТипОписание
Параметр
потребитель
Тип
Consumer<T>
Описание
The event handler as consumer
Параметр
T
Тип
Event
Описание
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);
 });
ПараметрТипОписание
Параметр
priority
Тип
EventPriority
Описание
priority for this listener
Параметр
потребитель
Тип
Consumer<T>
Описание
The event handler as consumer
Параметр
T
Тип
Event
Описание
The type of the event