Помогите Как проверять слот в кастомном инвентаре?

  • Автор темы Автор темы Kloper
  • Дата начала Дата начала

Kloper

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
f3azzy
Привет, делаю апгрейд оружия и нужно проверять слот в кастомном инвентаре, если в этом слоту лежит предмет который нужен мне, то при нажатии на предмет, эта вещь менялась на другую, но у меня что то всё пошло наперекосяк, помогите мне как проверять слот.

Код, который получился у меня, с этим кодом вообще ничего не могу положить в кастомный инвентарь,
всё из за e.setCancelled(true); если его убрать то игроки смогут забирать вещи из кастомного инвентаря. Пробовал убирать его, всё равно ничего не работало, где моя ошибка?
Код:
public void start(InventoryClickEvent e) {
        Player p = (Player)e.getWhoClicked();
        Inventory inv = e.getInventory();
        ItemStack item = e.getCurrentItem();
        
        if(inv.getName().equals("§6Улучшение")) {
            
            e.setCancelled(true);
            
            if(item.getItemMeta().getDisplayName().equals("§aУлучшить!")) {
                
                if(inv.getItem(1).getType() == null || inv.getItem(7).getType() == null) {
                    return;
                }
                
                if(inv.getItem(1).getItemMeta().getDisplayName().equals("§fОкровавленный деревянный клинок")) {
                    inv.setItem(1, new ItemStack(Material.WOOD_SWORD));
                }
                
            }
            
        }
    }
 
Не забывай, что слоты от 0 считаются
И попробуй equalsIgnoreCase вместо equals
И точно ли там || должно быть, а не &&?
 
Назад
Верх