diff --git a/doc/Modding.md b/doc/Modding.md index 588a7d2f0..c40f8b1a5 100644 --- a/doc/Modding.md +++ b/doc/Modding.md @@ -127,7 +127,7 @@ If you want to register an event depending on an IP (like server specific suppor `getEventManager().registerConnectionListener(new XYEventListener(), new ServerAddress("127.0.0.1", 25565));` Your event methods need to be annotated by `EventHandler`. `EventHandler` **can** take these arguments: - `priority`: Pretty much self explaining. `HIGH` means, that it gets executed at "the beginning", `LOW` means the opposite. Defaults to `NORMAL`. - - `onlyIfNotCancelled`: If it is a cancellable event, your method only gets executed, when all prior listeners (potentially with a higher priority) did not cancel the event. Defaults to `true`. + - `ignoreCancelled`: If it is a cancellable event, your method only gets executed, when all prior listeners (potentially with a higher priority) did not cancel the event. Defaults to `false`. Your XYEventListener class needs to extend `de.bixilon.minosoft.modding.event.EventListener`; ```java @@ -146,7 +146,7 @@ public class ChatEvent extends EventListener { } } - @EventHandler(onlyIfNotCancelled = false) + @EventHandler(ignoreCancelled = true) public void onChatMessageSending(ChatMessageSendingEvent event) { if (event.getMessage().contains("jeb_ is stupid")) { event.setCancelled(true); diff --git a/src/main/java/de/bixilon/minosoft/modding/event/EventMethod.java b/src/main/java/de/bixilon/minosoft/modding/event/EventMethod.java index c73ccac0e..c3861de63 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/EventMethod.java +++ b/src/main/java/de/bixilon/minosoft/modding/event/EventMethod.java @@ -43,7 +43,7 @@ public class EventMethod { if (!method.getParameters()[0].getType().isAssignableFrom(event.getClass())) { return; } - if (annotation.onlyIfNotCancelled() && event instanceof CancelableEvent && ((CancelableEvent) event).isCancelled()) { + if (!annotation.ignoreCancelled() && event instanceof CancelableEvent && ((CancelableEvent) event).isCancelled()) { return; } try { diff --git a/src/main/java/de/bixilon/minosoft/modding/event/events/annotations/EventHandler.java b/src/main/java/de/bixilon/minosoft/modding/event/events/annotations/EventHandler.java index 5ba42f1bf..0049754dd 100644 --- a/src/main/java/de/bixilon/minosoft/modding/event/events/annotations/EventHandler.java +++ b/src/main/java/de/bixilon/minosoft/modding/event/events/annotations/EventHandler.java @@ -20,7 +20,7 @@ import java.lang.annotation.RetentionPolicy; @Retention(RetentionPolicy.RUNTIME) public @interface EventHandler { - boolean onlyIfNotCancelled() default true; + boolean ignoreCancelled() default false; Priorities priority() default Priorities.NORMAL; }