mirror of
https://github.com/PaperMC/Velocity.git
synced 2026-02-17 14:37:43 +01:00
Add support for arbitrary event handler ordering.
This allows for 65,536 different orders, which should be more than enough for anyone.
This commit is contained in:
@@ -39,7 +39,7 @@ public interface EventManager {
|
||||
* @param handler the handler to register
|
||||
* @param <E> the event type to handle
|
||||
*/
|
||||
<E> void register(Object plugin, Class<E> eventClass, PostOrder postOrder,
|
||||
<E> void register(Object plugin, Class<E> eventClass, short postOrder,
|
||||
EventHandler<E> handler);
|
||||
|
||||
/**
|
||||
|
||||
@@ -4,7 +4,12 @@ package com.velocitypowered.api.event;
|
||||
* Represents the order an event will be posted to a listener method, relative to other listeners.
|
||||
*/
|
||||
public enum PostOrder {
|
||||
;
|
||||
|
||||
FIRST, EARLY, NORMAL, LATE, LAST
|
||||
public static final short FIRST = Short.MIN_VALUE;
|
||||
public static final short EARLY = Short.MIN_VALUE >> 1;
|
||||
public static final short NORMAL = 0;
|
||||
public static final short LATE = Short.MAX_VALUE >> 1;
|
||||
public static final short LAST = Short.MAX_VALUE;
|
||||
|
||||
}
|
||||
|
||||
@@ -17,6 +17,6 @@ public @interface Subscribe {
|
||||
*
|
||||
* @return the order
|
||||
*/
|
||||
PostOrder order() default PostOrder.NORMAL;
|
||||
short order() default PostOrder.NORMAL;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user