- Сообщения
- 392
- Решения
- 18
Давно нашел
Как я понял, теперь версия, которую мы получаем, выглядит так: org.bukkit.craftbukkit
Авторизуйтесь для просмотра ссылок.
, и она работала (на 1.20.1 точно), но когда я перешел на 1.20.6 - перестала. Вот конкретно код, который я использовал
Java:
private static Field field = null;
static {
try {
String version = Pattern.compile("\\.").split(Bukkit.getServer().getClass().getPackage().getName())[3];
Class<?> mcInventory = Class.forName(String.format("org.bukkit.craftbukkit.%s.inventory.CraftInventory", version));
field = mcInventory.getDeclaredField("inventory");
field.setAccessible(true);
}
catch (ClassNotFoundException | NoSuchFieldException ignore) {}
}
public static boolean compareInvs(Inventory inv1, Inventory inv2) {
try {
return inv1 != null && inv2 != null && field.get(inv1) == field.get(inv2);
}
catch (IllegalAccessException ignore) {
return false;
}
}