Вопрос Как сравнивать инвентари?

Версия Minecraft
1.20.X

Айсон :)

Разработчик
Пользователь
Сообщения
392
Решения
18
Давно нашел , и она работала (на 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;
        }
    }
Как я понял, теперь версия, которую мы получаем, выглядит так: org.bukkit.craftbukkit
 
Назад
Сверху Снизу