Merge pull request #44 from md-5/bugfix/version
Fix server version detection logic
This commit is contained in:
commit
a752851148
|
@ -39,7 +39,7 @@ public class ReflectBase {
|
|||
obcPackageName = null;
|
||||
}
|
||||
// nms
|
||||
clazz = ServerVersion.getNMSMinecraftServer();
|
||||
clazz = ServerVersion.getNMSMinecraftServer().getClass();
|
||||
name = clazz.getPackage().getName();
|
||||
if (name.equals("net.minecraft.server") || name.indexOf("net.") == 0 && name.indexOf(".minecraft.") != -1 && name.indexOf(".server.") != -1) {
|
||||
nmsPackageName = name;
|
||||
|
|
|
@ -69,11 +69,11 @@ public class ServerVersion {
|
|||
return null;
|
||||
}
|
||||
|
||||
public static Class<?> getNMSMinecraftServer() {
|
||||
public static Object getNMSMinecraftServer() {
|
||||
final Server server = Bukkit.getServer();
|
||||
try {
|
||||
final Object obj = ReflectionUtil.invokeMethodNoArgs(server, "getHandle");
|
||||
return obj.getClass();
|
||||
final Object obj = ReflectionUtil.invokeMethodNoArgs(server, "getServer");
|
||||
return obj;
|
||||
}
|
||||
catch (Throwable t) {
|
||||
return null;
|
||||
|
@ -81,12 +81,12 @@ public class ServerVersion {
|
|||
}
|
||||
|
||||
public static String fetchNMSMinecraftServerVersion() {
|
||||
final Class<?> clazz = getNMSMinecraftServer();
|
||||
if (clazz == null) {
|
||||
final Object server = getNMSMinecraftServer();
|
||||
if (server == null) {
|
||||
return null;
|
||||
}
|
||||
try {
|
||||
return (String) ReflectionUtil.invokeMethodNoArgs(clazz, "getVersion", String.class);
|
||||
return (String) ReflectionUtil.invokeMethodNoArgs(server, "getVersion", String.class);
|
||||
}
|
||||
catch (Throwable t) {
|
||||
return null;
|
||||
|
|
Loading…
Reference in New Issue