@@ -54,6 +54,10 @@ final class CraftBukkitAccess {
5454 findMcClassName ("server.level.WorldServer" ),
5555 findMcClassName ("server.level.ServerLevel" )
5656 );
57+ static final @ Nullable Class <?> CLASS_LEVEL = findClass (
58+ findMcClassName ("world.level.World" ),
59+ findMcClassName ("world.level.Level" )
60+ );
5761 static final @ Nullable Class <?> CLASS_REGISTRY_ACCESS = findClass (
5862 findMcClassName ("core.IRegistryCustom" ),
5963 findMcClassName ("core.RegistryAccess" )
@@ -84,6 +88,8 @@ static final class Chat1_19_3 {
8488 static final @ Nullable MethodHandle RESOURCE_KEY_CREATE = searchMethod (CLASS_RESOURCE_KEY , Modifier .PUBLIC | Modifier .STATIC , "create" , CLASS_RESOURCE_KEY , CLASS_RESOURCE_KEY , CLASS_RESOURCE_LOCATION );
8589 static final @ Nullable MethodHandle SERVER_PLAYER_GET_LEVEL = searchMethod (CraftBukkitFacet .CRAFT_PLAYER_GET_HANDLE .type ().returnType (), Modifier .PUBLIC , "getLevel" , CLASS_SERVER_LEVEL );
8690 static final @ Nullable MethodHandle SERVER_LEVEL_GET_REGISTRY_ACCESS = searchMethod (CLASS_SERVER_LEVEL , Modifier .PUBLIC , "registryAccess" , CLASS_REGISTRY_ACCESS );
91+ static final @ Nullable MethodHandle LEVEL_GET_REGISTRY_ACCESS = searchMethod (CLASS_LEVEL , Modifier .PUBLIC , "registryAccess" , CLASS_REGISTRY_ACCESS );
92+ static final @ Nullable MethodHandle ACTUAL_GET_REGISTRY_ACCESS = SERVER_LEVEL_GET_REGISTRY_ACCESS == null ? LEVEL_GET_REGISTRY_ACCESS : SERVER_LEVEL_GET_REGISTRY_ACCESS ;
8793 static final @ Nullable MethodHandle REGISTRY_ACCESS_GET_REGISTRY_OPTIONAL = searchMethod (CLASS_REGISTRY_ACCESS , Modifier .PUBLIC , "registry" , Optional .class , CLASS_RESOURCE_KEY );
8894 static final @ Nullable MethodHandle REGISTRY_GET_OPTIONAL = searchMethod (CLASS_REGISTRY , Modifier .PUBLIC , "getOptional" , Optional .class , CLASS_RESOURCE_LOCATION );
8995 static final @ Nullable MethodHandle REGISTRY_GET_ID = searchMethod (CLASS_REGISTRY , Modifier .PUBLIC , "getId" , int .class , Object .class );
@@ -136,7 +142,7 @@ private Chat1_19_3() {
136142 }
137143
138144 static boolean isSupported () {
139- return SERVER_LEVEL_GET_REGISTRY_ACCESS != null && REGISTRY_ACCESS_GET_REGISTRY_OPTIONAL != null && REGISTRY_GET_OPTIONAL != null && CHAT_TYPE_BOUND_NETWORK_CONSTRUCTOR != null && DISGUISED_CHAT_PACKET_CONSTRUCTOR != null && CHAT_TYPE_RESOURCE_KEY != null ;
145+ return ACTUAL_GET_REGISTRY_ACCESS != null && REGISTRY_ACCESS_GET_REGISTRY_OPTIONAL != null && REGISTRY_GET_OPTIONAL != null && CHAT_TYPE_BOUND_NETWORK_CONSTRUCTOR != null && DISGUISED_CHAT_PACKET_CONSTRUCTOR != null && CHAT_TYPE_RESOURCE_KEY != null ;
140146 }
141147 }
142148
0 commit comments