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

Помогите Запрет класть предмет в сундук

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

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

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

    Баллы:
    76
    Как запретить игроку класть определенный предмет в сундук или печку?
     
  2. SOHIGH

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

    Баллы:
    76
    Вот возможное решение:
    Плагин ReActions
    Код:
    INVENTORY_CLICK:
      chest_deny:
        click-type: ANY
        action-type: ANY
        inventory-type: CHEST
        slot-type: ANY
        item: type:STONE
        actions:
        - CANCEL_EVENT=true
      chest_deny:
        click-type: ANY
        action-type: ANY
        inventory-type: FURNACE
        slot-type: ANY
        item: type:STONE
        actions:
        - CANCEL_EVENT=true
    Активаторы не дадут вообще взаимодействовать с камнем (STONE), пока ты находишься в каком-либо сундуке или печке.

    Перенести в plugins/ReActions/Activators/Activators.yml
     
  3. Автор темы
    Kurumi

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

    Баллы:
    76
    Мне нужно это реализовать своим плагином.
     
  4. php5master

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

    Баллы:
    66
    Нагуглил за тебя
    Код:
        @EventHandler()
        public final void onChestMove(InventoryClickEvent event){
            Inventory top = event.getView().getTopInventory();
            Inventory bottom = event.getView().getBottomInventory();
          
            if(top.getType() == InventoryType.CHEST && bottom.getType() == InventoryType.PLAYER){
                if(event.getCurrentItem() != null && event.getCurrentItem().getTypeId() != 0){
                    // player picked a item up +  a Chest is opened
                    // and now i have no clue how to continue.
                    // сундук открыт + игрок поднял предмет мышкой
                }
            }
        }
     
  5. Energy warrior

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

    Баллы:
    76
    InventoryDragEvent
     
  6. Автор темы
    Kurumi

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

    Баллы:
    76
    Спасибо! Я гуглил, но не нашел. Скорее всего я неправильно писал :(
     
Статус темы:
Закрыта.

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