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

  • Автор темы Автор темы Kurumi
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Kurumi

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Kurumi
Как запретить игроку класть определенный предмет в сундук или печку?
 
Вот возможное решение:
Плагин 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
 
Вот возможное решение:
Плагин 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
Мне нужно это реализовать своим плагином.
 
Нагуглил за тебя
Код:
    @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.
                // сундук открыт + игрок поднял предмет мышкой
            }
        }
    }
 
Нагуглил за тебя
Код:
    @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.
                // сундук открыт + игрок поднял предмет мышкой
            }
        }
    }
Спасибо! Я гуглил, но не нашел. Скорее всего я неправильно писал ☹️
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх