@@ -54,6 +54,10 @@ final class CraftBukkitAccess {
54
54
findMcClassName ("server.level.WorldServer" ),
55
55
findMcClassName ("server.level.ServerLevel" )
56
56
);
57
+ static final @ Nullable Class <?> CLASS_LEVEL = findClass (
58
+ findMcClassName ("world.level.World" ),
59
+ findMcClassName ("world.level.Level" )
60
+ );
57
61
static final @ Nullable Class <?> CLASS_REGISTRY_ACCESS = findClass (
58
62
findMcClassName ("core.IRegistryCustom" ),
59
63
findMcClassName ("core.RegistryAccess" )
@@ -84,6 +88,8 @@ static final class Chat1_19_3 {
84
88
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 );
85
89
static final @ Nullable MethodHandle SERVER_PLAYER_GET_LEVEL = searchMethod (CraftBukkitFacet .CRAFT_PLAYER_GET_HANDLE .type ().returnType (), Modifier .PUBLIC , "getLevel" , CLASS_SERVER_LEVEL );
86
90
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 ;
87
93
static final @ Nullable MethodHandle REGISTRY_ACCESS_GET_REGISTRY_OPTIONAL = searchMethod (CLASS_REGISTRY_ACCESS , Modifier .PUBLIC , "registry" , Optional .class , CLASS_RESOURCE_KEY );
88
94
static final @ Nullable MethodHandle REGISTRY_GET_OPTIONAL = searchMethod (CLASS_REGISTRY , Modifier .PUBLIC , "getOptional" , Optional .class , CLASS_RESOURCE_LOCATION );
89
95
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() {
136
142
}
137
143
138
144
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 ;
140
146
}
141
147
}
142
148
0 commit comments