diff --git a/paper/src/main/java/com/denizenscript/denizen/paper/utilities/PaperAPIToolsImpl.java b/paper/src/main/java/com/denizenscript/denizen/paper/utilities/PaperAPIToolsImpl.java index 6761604d0b..f9d6781db5 100644 --- a/paper/src/main/java/com/denizenscript/denizen/paper/utilities/PaperAPIToolsImpl.java +++ b/paper/src/main/java/com/denizenscript/denizen/paper/utilities/PaperAPIToolsImpl.java @@ -135,10 +135,19 @@ public InventoryView openAnvil(Player player, Location loc) { return player.openAnvil(loc, true); } + public static Object teleportRelative; + + static { + if (NMSHandler.getVersion().isAtLeast(NMSVersion.v1_19)) { // TODO: 1.19: replace with TeleportFlag.Relative.values() + // (That breaks loading pre-1.19 due to Java silliness) + teleportRelative = TeleportFlag.Relative.class.getEnumConstants(); + } + } + @Override public void teleportPlayerRelative(Player player, Location loc) { if (NMSHandler.getVersion().isAtLeast(NMSVersion.v1_19)) { - player.teleport(loc, PlayerTeleportEvent.TeleportCause.PLUGIN, TeleportFlag.Relative.values()); + player.teleport(loc, PlayerTeleportEvent.TeleportCause.PLUGIN, (TeleportFlag[]) teleportRelative); } else { super.teleportPlayerRelative(player, loc);