1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Проверка слота

Тема в разделе "Разработка плагинов для новичков", создана пользователем HaloSpartan, 14 ноя 2018.

Статус темы:
Закрыта.
  1. Автор темы
    HaloSpartan

    HaloSpartan Активный участник Пользователь

    Баллы:
    66
    Код:
    if(e.getSlot() == 18)
                        {
                            p.sendMessage("1");
                            if(e.getInventory().getItem(e.getSlot()).getType() != Material.AIR) return;
                            {
                                p.sendMessage("1+");
                                e.getInventory().setItem(18, cry);
                            }
                        }
    Приветствую.
    Хочу узнать как можно выполнить проверку на наличие слота в инвентаре и проверку на определение есть ли в этом слоте воздух, а далее добавление предмета в этот слот.
    У меня получилось что то вроде того ( смотреть выше ).
    Благодарю за помощь.
     
  2. EnderBro3D

    EnderBro3D Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    EnderBro3D
    Код:
    boolean checkItem(ItemStack stack) {
      return stack == null || stack.getType() == Material.AIR;
    }
    
    @EventHandler
    void onClick(InventoryClickEvent e) {
      if(e.getSlot() == 18 && checkItem(e.getInventory().getItem(18)) {
         e.getInventory().setItem(18, cry);
      }
    }
     
  3. Автор темы
    HaloSpartan

    HaloSpartan Активный участник Пользователь

    Баллы:
    66
    Не работает =/
    Сейчас попробую сам разобраться.
     
  4. DeethzzCoder

    DeethzzCoder Активный участник Пользователь

    Баллы:
    76
    Что конкретно не работает? Есть ли ошибка?
     
  5. Автор темы
    HaloSpartan

    HaloSpartan Активный участник Пользователь

    Баллы:
    66
    Ошибки нет. Метод не выполняется по какой то причине
     
  6. EnderBro3D

    EnderBro3D Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    EnderBro3D
    Ты зарегал листенер?
    Ты кликаешь(если конечно это клик эвент) по 18 слоту?
     
  7. Автор темы
    HaloSpartan

    HaloSpartan Активный участник Пользователь

    Баллы:
    66
    Листенер зарегистрирован, проверка выполняется не по клику, а в потоке
     
Статус темы:
Закрыта.

Поделиться этой страницей