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

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

Тема в разделе "Разработка плагинов для новичков", создана пользователем kirill2011s, 19 июл 2014.

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

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

    Баллы:
    103
    Здравствуйте уважаемые форумчане.

    Собственно, суть проблемы:

    У меня есть предмет, допустим красный краситель, с именем "Заговор огня 2"
    Задача в том, чтобы открыть инвентарь, взять этот камень, навести на меч, кликнуть, и камень должен краситель должен пропасть, а меч зачароваться. Все это работает у меня, если кликать в сундуке, печке, инвентаре игрока в выживании, и т.д. Но не в креативном инвентаре. В креативном инвентаре, у меня получается такое: сам краситель с зачарованием пропадает, но меч остается не зачарован. Вот код:

    Код:
    ItemStack itemIn = event.getCursor(); //Чем чарим
    ItemStack itemTo = event.getCurrentItem(); //Что чарим
    //Дальше идет проверка на возможность зачарования
    //Тут чаруем
    try {
       itemTo.addEnchantment(enchant, getLevel(metaIn.getDisplayName()));
    } catch(IllegalArgumentException e) {
       return;
    }
    itemIn.setType(Material.AIR);
    if (event.getWhoClicked().getGameMode() == GameMode.CREATIVE) {
       //Пробовал вставлять на место куда кликнули в инвентаре
       //event.getInventory().setItem(event.getRawSlot(), itemTo);    
       //И прямо в инвентарь того, кто кликнул
       event.getWhoClicked().getInventory().setItem(event.getRawSlot(), itemTo);
       return;
    }
    
    Сам меч чарится, даже в креативном инвентаре(то есть если выводить инфу о зачареной вещи, то она зачарена), но не вставляется.
     
  2. Хостинг MineCraft
    <
  3. konfyciu98

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

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Я не знаток этого, но разве инвентарь креатива не делится на секции?
     
  4. Автор темы
    kirill2011s

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

    Баллы:
    103
    В том то и проблема, по идее, когда игрок кликает в инвентаре креатива, и я получаю тип инвентаря, он должен быть CREATIVE, но он говорит, что он PLAYER. И вообще, по идее, даже если инвентарь делится на секции, номера ячеек всегда идут по порядку.[DOUBLEPOST=1405831827,1405757179][/DOUBLEPOST]Совсем никто не знает?
     
  5. makssof

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

    Баллы:
    103
    Skype:
    makssofez
    Недавно игрался с этой темой, и вот что выяснил:
    В креативе:
    getAction() = PLACE_ALL
    getClick() = CREATIVE
    всегда.
     
  6. Автор темы
    kirill2011s

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

    Баллы:
    103
    Это-то я тоже уже понял. Но как здесь быть?
     
  7. makssof

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

    Баллы:
    103
    Skype:
    makssofez
    Увы, никак.
     

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