@@ -85,13 +85,13 @@ public class TeleportUtils {
8585 teleportFlags = Collections .unmodifiableSet (new HashSet <>(Arrays .asList (enumObjects [4 ], enumObjects [3 ])));
8686
8787 justTeleportedField = getField (connectionClass , "justTeleported" );
88- teleportPosField = getField (connectionClass , v1_17 () ? "y" : "teleportPos" );
88+ teleportPosField = getField (connectionClass , v1_17 () ? ( v1_19 () ? ( v1_19_1 () ? "C" : "B" ) : "y" ) : "teleportPos" );
8989 lastPosXField = getField (connectionClass , "lastPosX" );
9090 lastPosYField = getField (connectionClass , "lastPosY" );
9191 lastPosZField = getField (connectionClass , "lastPosZ" );
92- teleportAwaitField = getField (connectionClass , v1_17 () ? "z" : "teleportAwait" );
93- AField = getField (connectionClass , "A" );
94- eField = getField (connectionClass , v1_17 () ? "f" : "e" );
92+ teleportAwaitField = getField (connectionClass , v1_17 () ? ( v1_19 () ? ( v1_19_1 () ? "D" : "C" ) : "z" ) : "teleportAwait" );
93+ AField = getField (connectionClass , v1_19 () ? ( v1_19_1 () ? "E" : "D" ) : "A" );
94+ eField = getField (connectionClass , v1_17 () ? ( v1_19_1 () ? "i" : "h" ) : "e" );
9595 } catch (Exception e ) {
9696 e .printStackTrace ();
9797 }
@@ -199,6 +199,16 @@ private static boolean v1_18() {
199199 return Integer .parseInt (getVersion ().split ("_" )[1 ]) >= 18 ;
200200 }
201201
202+ private static boolean v1_19 () {
203+ return Integer .parseInt (getVersion ().split ("_" )[1 ]) >= 19 ;
204+ }
205+
206+ private static boolean v1_19_1 () {
207+ final String version = Bukkit .getVersion ().replace ("(MC: " , "" ).replace (")" , "" );
208+ int versionNumber = Integer .parseInt (version .split ("\\ ." )[2 ]);
209+ return v1_19 () && versionNumber >= 1 ;
210+ }
211+
202212 private static Class <?> getNmsClass (String name ) {
203213 Class clazz = null ;
204214
0 commit comments