CommandAPI/src/main/java/nl/iobyte/commandapi/worldguard/Reflection.java
2021-01-21 22:08:36 +01:00

35 lines
1,007 B
Java

package nl.iobyte.commandapi.worldguard;
import org.bukkit.Bukkit;
import java.util.HashMap;
public class Reflection {
private static final HashMap<String, Class<?>> classes = new HashMap<>();
private static final String version = Bukkit.getServer().getClass().getPackage().getName().split("\\.")[3];
public static Class<?> getCraftBukkitClass(String name) {
return getClass("org.bukkit.craftbukkit." + version + "." + name);
}
public static Class<?> getNMSClass(String name) {
return getClass("net.minecraft.server." + version + "." + name);
}
public static Class<?> getClass(String path) {
if(classes.containsKey(path))
return classes.get(path);
try {
Class<?> clazz = Class.forName(path);
classes.put(path, clazz);
return clazz;
} catch (ClassNotFoundException e) {
e.printStackTrace();
classes.put(path, null);
return null;
}
}
}