Skip to content

Instantly share code, notes, and snippets.

@falseresync
Last active November 16, 2019 17:58
Show Gist options
  • Save falseresync/2a2bd1e024905cd6ad31a4eeba332c4b to your computer and use it in GitHub Desktop.
Save falseresync/2a2bd1e024905cd6ad31a4eeba332c4b to your computer and use it in GitHub Desktop.
ExampleEventListener.EVENT
.registerDeterminator((parameter) -> {
if (parameter)
return CANCEL;
else
return EXECUTE;
})
.registerPayload((parameter) -> {
parameter.world.killSomebody();
});
public interface ExampleEventListerner {
Event<ExampleEventListerner> EVENT = PayloadedEventFactory.createArrayBacked(
ExampleEventListerner.Determinator.class,
ExampleEventListener.Payload.class,
(determinators) -> (parameter) -> {},
(payloads) -> (parameter) -> {},
);
interface Determinator {
EventResult onExampleEvent(Parameter parameter);
}
interface Payload {
void onExampleEvent(Parameter parameter);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment