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

Помогите DeluxeMenus. Нужна помощь с проверкой предмета.

Тема в разделе "Помощь", создана пользователем HauserGrim, 16 июл 2018.

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

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

    Баллы:
    96
    Код:
        right_click_requirement:
          requirements:
            Item:
              type: string equals
              input: '%player_hasitem-mat:IRON_INGOT-amt:2-data:0%'
              output: 'yes'
          deny_commands:
          - '[close]'
          - '[message] &6&lНедостаточно ресурсов.'
    
    Даже если есть 2 слитка железа в инвентаре, всё-равно показывает сообщение из deny_commands, пробовал убрать "-data:0", не помогло.
    Как можно добавить несколько предметов для проверки?
    Можно ли сделать проверку предмета ещё и по названию?

    Я рылся на вики по дм, но не нашел нужных примеров.

    Код:
    menu_title: '&7Наковальня'
    open_command: anvil
    size: 54
    open_requirement:
      requirements:
        permission:
          type: has permission
          permission: menu.open.anvil
          deny_commands:
          - '[message] Недостаточно прав'
    items:
      '4':
        material: IRON_SWORD
        slot: 1
        display_name: '&7Железный меч'
        lore:
        - '&aОбычный меч'
        - '&r'
        - '&aНеобходимые материалы:'
        - '&aЖелезный слиток (2)'
        left_click_commands:
        - '[sound] BLOCK_ANVIL_HIT'
        - '[console] give %player_name% iron_sword 1'
        - '[console] clear %player_name% iron_ingot 2'
        right_click_commands:
        - '[player] help'
        - '[sound] BLOCK_ANVIL_HIT'
        - '[console] give %player_name% iron_sword 1'
        - '[console] clear %player_name% iron_ingot 2'
        right_click_requirement:
          requirements:
            Item:
              type: string equals
              input: '%player_hasitem-mat:IRON_INGOT-amt:2-data:0%'
              output: 'yes'
          deny_commands:
          - '[close]'
          - '[message] &6&lНедостаточно ресурсов.'
        left_click_requirement:
          requirements:
            Item:
              type: string equals
              input: '%player_hasitem-mat:IRON_INGOT-amt:2-data:0%'
              output: 'yes'
          deny_commands:
          - '[close]'
          - '[message] &6&lНедостаточно ресурсов.'
     
    Последнее редактирование: 16 июл 2018
  2. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Кинь свой файл конфигурации в PlaceholderAPI
     
  3. Автор темы
    HauserGrim

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

    Баллы:
    96
  4. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Мне надо было убедиться, что boolean стандартный.
     
  5. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Сейчас будем разбираться
     
  6. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Короче, такой прикол. Этот плэйсхолдер (%player_hasitem-mat:IRON_INGOT-amt:2-data:0%) плагин не видит вообще. Я не знаю, с чем это может быть связано... Я даже заглянул в корень, и выяснил, что даже такого плэйсхолдера не существует...
     
  7. Автор темы
    HauserGrim

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

    Баллы:
    96
    Глядел вот тут:
    https://www.spigotmc.org/wiki/deluxemenus-store/
    (внизу меню для примера)
    может увидите то, чего я не увидил
     
  8. Автор темы
    HauserGrim

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

    Баллы:
    96
    Ап
    Раньше оно в любом случае выдавало текст из deny_commans, изменил проверку предмета на
    Код:
            Item:
              type: has item
              material: diamond
              amount: 64
    
    Даже если у игрока нет нужного материала (о чём пишет в консоли), сделка срабатывает в любом случае.
    Экспериментальное добавление строки "output: 'yes' " не помогает
     
  9. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Хмхмхм....
     
  10. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    + output требуется только в "string equals"
     
  11. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Твоя версия сервера?
     
  12. Автор темы
    HauserGrim

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

    Баллы:
    96
    Код:
      '1':
        material: STONE
        data: 1
        slot: 0
        display_name: '&7Granite'
        lore:
        - '&7Buy Price: &a$80'
        - '&7Sell Price: &c$40'
        left_click_commands:
        - '[console] eco take %player_name% 80'
        - '[console] give %player_name% stone:1 64'
        - '[message] &6&lDeluxe&eMenu &7»&f You have successfully purchased 64 granite.'
        left_click_requirement:
          requirements:
            Money:
              type: has money
              amount: 80.0
          deny_commands:
          - '[close]'
          - '[message] &6&lDeluxe&eMenu &7»&f You do not have enough money to buy.'
        right_click_commands:
        - '[console] eco give %player_name% 40'
        - '[console] clear %player_name% diamond 64'
        - '[message] &6&lDeluxe&eMenu &7»&f You have successfully sold 64 granite.'
        right_click_requirement:
          requirements:
            Item:
              type: has item
              material: diamond
              amount: 64
          deny_commands:
          - '[close]'
          - '[message] &6&lDeluxe&eMenu &7»&f You do not have enough granite to sell.'
    при продаже заменил гранит на алмазы
    paperspigot 1.12.2
     
  13. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Измени название звуков в '[sound] ANVIL_LAND', т. к. я делал это на версии 1.8
    Всё теперь должно работать.
    Код:
    menu_title: '&7Наковальня'
    open_command: anvil
    size: 54
    open_requirement:
      requirements:
        permission:
          type: has permission
          permission: menu.open.anvil
          deny_commands:
          - '[message] Недостаточно прав'
    items:
      '4':
        material: IRON_SWORD
        slot: 1
        display_name: '&7Железный меч'
        lore:
        - '&aОбычный меч'
        - '&r'
        - '&aНеобходимые материалы:'
        - '&aЖелезный слиток (2)'
        left_click_commands:
        - '[sound] ANVIL_LAND'
        - '[console] give %player_name% iron_sword 1'
        - '[console] clear %player_name% iron_ingot 0 2'
        right_click_commands:
        - '[sound] ANVIL_LAND'
        - '[console] give %player_name% iron_sword 1'
        - '[console] clear %player_name% iron_ingot 0 2'
        right_click_requirement:
          requirements:
            Item:
              type: has item
              material: IRON_INGOT
              amount: 2
              data: 0
          deny_commands:
          - '[close]'
          - '[message] &6&lНедостаточно ресурсов.'
        left_click_requirement:
          requirements:
            Item:
              type: has item
              material: IRON_INGOT
              amount: 2
              data: 0
          deny_commands:
          - '[close]'
          - '[message] &6&lНедостаточно ресурсов.'
     
  14. RiseYT

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

    Баллы:
    76
    Имя в Minecraft:
    _RiseYT_
    Напиши, если не сработало
     
  15. Автор темы
    HauserGrim

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

    Баллы:
    96
    Убрал ноль из '[console] clear %player_name% iron_ingot 0 2', так как оно удаляло 0 железа с датой 2, но всё заработало когда я убрал звук. (с этим ещё поэкспериментирую)
    Огромное спасибо RiseYT
    Тема закрыта.
     
Статус темы:
Закрыта.

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