From 965814d83347fab0276b78af283e9b9fdfc364db Mon Sep 17 00:00:00 2001 From: KennyTV Date: Wed, 9 Dec 2020 21:31:00 +0100 Subject: [PATCH] Fix ProtocolLib check (again) #BlameGerry (again) --- .../src/main/java/us/myles/ViaVersion/ViaVersionPlugin.java | 5 ++++- .../bukkit/listeners/ProtocolLibEnableListener.java | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/bukkit/src/main/java/us/myles/ViaVersion/ViaVersionPlugin.java b/bukkit/src/main/java/us/myles/ViaVersion/ViaVersionPlugin.java index ba1fd2576..d05c19ced 100644 --- a/bukkit/src/main/java/us/myles/ViaVersion/ViaVersionPlugin.java +++ b/bukkit/src/main/java/us/myles/ViaVersion/ViaVersionPlugin.java @@ -52,7 +52,6 @@ public class ViaVersionPlugin extends JavaPlugin implements ViaPlatform // Init platform BukkitViaInjector injector = new BukkitViaInjector(); - injector.setProtocolLib(Bukkit.getPluginManager().getPlugin("ProtocolLib") != null); Via.init(ViaManager.builder() .platform(this) @@ -78,6 +77,10 @@ public class ViaVersionPlugin extends JavaPlugin implements ViaPlatform @Override public void onLoad() { + // Via should load before PL, so we can't check for it in the constructor + boolean hasProtocolLib = Bukkit.getPluginManager().getPlugin("ProtocolLib") != null; + ((BukkitViaInjector) Via.getManager().getInjector()).setProtocolLib(hasProtocolLib); + // Spigot detector try { Class.forName("org.spigotmc.SpigotConfig"); diff --git a/bukkit/src/main/java/us/myles/ViaVersion/bukkit/listeners/ProtocolLibEnableListener.java b/bukkit/src/main/java/us/myles/ViaVersion/bukkit/listeners/ProtocolLibEnableListener.java index a9253fc13..fb9cc395d 100644 --- a/bukkit/src/main/java/us/myles/ViaVersion/bukkit/listeners/ProtocolLibEnableListener.java +++ b/bukkit/src/main/java/us/myles/ViaVersion/bukkit/listeners/ProtocolLibEnableListener.java @@ -11,6 +11,7 @@ public class ProtocolLibEnableListener implements Listener { @EventHandler public void onPluginEnable(PluginEnableEvent e) { + // Will likely never happen, but try to account for hacky plugin loading systems anyways if (e.getPlugin().getName().equals("ProtocolLib")) { ((BukkitViaInjector) Via.getManager().getInjector()).setProtocolLib(true); }