Не работает геттер для Inventory

BlackBaroness

Модератор
Разработчик
Сообщения
1,680
Решения
72
Веб-сайт
vk.com
Сап, спигот. Трейс указывает на пустую переменную инвентаря при команде.
В главном классе задана private static Inventory shopInv;. После создан вызываемый в onEnable метод:

Java:
void registerShopInv() {
    shopInv = Bukkit.createInventory(null, 54, ChatColor.DARK_GREEN + "Админшоп SapphireLife");
}

Создан акцессор:
Java:
public static Inventory getShopInv() {
        return shopInv;
    }

Далее - класс обработчика команды. Вызвана переменная через акцессор: Inventory inv = Baroness.getShopInv();

И далее код, где ошибка на p.openInventory(inv);:
Java:
@Override
    public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
        if (sender instanceof Player) {
            Player p = (Player) sender;
            p.openInventory(inv);
        }
        return true;
    }
 
Последнее редактирование:
Spokers, () для методов используется. Даже IDE ругается, если так делать
Авто объединение сообщений:

Нужно было вызывать регисторы в onLoad().
 
Последнее редактирование:
Назад
Сверху Снизу