-
Notifications
You must be signed in to change notification settings - Fork 0
Attempt Alternate NMS Teleport Strategy #244
Copy link
Copy link
Open
Description
package com.golfing8.nms.event;
import com.golfing8.nms.reflection.FieldHandle;
import com.golfing8.nms.reflection.FieldHandles;
import org.bukkit.event.HandlerList;
import org.bukkit.plugin.RegisteredListener;
public class HandlerListAccessor {
private static FieldHandle<RegisteredListener[]> registeredListenersFieldHandle;
private static boolean setup;
public static RegisteredListener[] getRegisteredListeners(HandlerList handlerList) {
if (!setup)
return null;
return registeredListenersFieldHandle.get(handlerList);
}
public static void setRegisteredListeners(HandlerList handlerList, RegisteredListener[] listeners) {
if (!setup)
return;
registeredListenersFieldHandle.set(handlerList, listeners);
}
static {
try {
registeredListenersFieldHandle = (FieldHandle<RegisteredListener[]>) FieldHandles.getHandle("handlers", HandlerList.class);
setup = true;
} catch (Throwable thr) {
registeredListenersFieldHandle = null;
setup = false;
}
}
}
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Projects
Status
🏗 In progress