Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите InventoryClickEvent как работать с двумя предмета, тот который в инвентаре, и тот который в руке?

Тема в разделе "Разработка плагинов для новичков", создана пользователем Mr_RoboMan, 23 май 2015.

  1. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    Здравствуйте господа девелоперы :D
    У меня есть InventoryClickEvent, и мне надо (в зависимости от ситуации) либо уменьшить кол-во предмета(ов) на 1, либо полностью удалить их.
    Я использую вот такой код гавнокод:
    Код:
        @EventHandler
        public void newCheckOpenCase(InventoryClickEvent event)
        {
            Integer clicked = event.getCurrentItem().getTypeId();
            Integer inHand = event.getCursor().getTypeId();
            if (clicked == 54 && inHand == 131)
            {
                ItemStack chest = event.getCurrentItem();
                ItemStack key = event.getCursor();
                //chestCaseLore и keyLore это строки.
                if (chest.getItemMeta().getLore().get(0).equals(chestCaseLore) && key.getItemMeta().getLore().get(0).equals(keyLore))
                {
                    if (chest.getAmount() > 1) chest.setAmount(chest.getAmount()-1);
                    else event.setCursor(null);
                    if (key.getAmount() > 1) key.setAmount(key.getAmount()-1);
                    else event.setCurrentItem(null);
                    new ItemManager().playerOpenCase((Player) event.getWhoClicked(), event.getWhoClicked().getLocation());
                }
            }
        }
    
    Но при этом то что мне надо делается только с тем предметом что был в руке...
    Предмет который был в инвентаре - вообще не трогается... Что делать? :3
     
  2. Хостинг MineCraft
    <
  3. Автор темы
    Mr_RoboMan

    Mr_RoboMan Старожил Пользователь

    Баллы:
    123
    Ребята, UP, ну неужели никто не знает?
     
  4. Rider3217

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

    Баллы:
    98
    Имя в Minecraft:
    Planet0111
    А разве getCursor это то что в руке Стива?
    Я просто всегда юзал getItemInHand
     
  5. serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Мы про инвентарь говорим.
     
  6. Code

    Code Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    _Gizmo
    по-моему тут перепутаны итем в курсоре и жмакнутый итем.
    элсы над местами поменять.
    хотя столько времени прошло, автор наверно уже разобрался
     

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