Вопрос DeluxeMenus проблемы с left_click_requirement

Furry__wolf

Разработчик
Инструктор
Переводчик
Пользователь
Сообщения
1 190
Решения
67
Плагин
DeluxeMenus
Ядро сервера
  1. Другое
Версия сервера
  1. 1.21
Ссылка
https://www.spigotmc.org/resources/deluxemenus.11734/
Всем доброго времени суток. Столкнулся с довольно странной проблемой, не работают два и более рядом расположенных left_click_requirement
Код выглядит следующим образом:
Код:
  Zombie_piglun:
    material: zombified_piglin_spawn_egg
    amount: 1
    slot: 14
    priority: 1
    lore:
      - ''
      - '&#10b981Цена: &#fce517180☆'
# Проверка перед нажатием ЛКМ у игрока права vip.spawner.permission
    left_click_requirement:
      deny_commands:
       - '[close]'
       - '[message] Ö &cВам нужна привилегия выше чем вы имеете сейчас'
      requirements:
        anythinghere:
          type: has permission
          permission: vip.spawner.permission
# Проверка наличия валюты, если валюты не хватает, выводится сообщение
    left_click_requirement:
      deny_commands:
       - '[close]'
       - '[message] Ö &cУ вас не хватает звёзд'
      requirements:
        anythinghere:
          type: '>='
          input: '%playerpoints_points%'
          output: '180'
# Кулдаун на выполнение действия
    left_click_requirement:
      deny_commands:
       - '[message] Ö &cПодождите %mcd_left_daily_reward% сек.'
      requirements:
        anythinghere:
          type: '=='
          input: '%mcd_left_daily_reward%'
          output: '0'
# Выполнение команды если у игрока есть право vip.spawner.permission и хватает валюты
    left_click_commands:
      - '[console] mcd add %player_name% daily_reward 5'
      - '[refresh] spawners'
      - '[console] minecraft:give %player_name% zombified_piglin_spawn_egg'
      - '[console] p take %player_name% 180'
      - '[message] Ö &#10b981Вы получили яйцо призыва'

При удалении всех кроме какого-то одного left_click_requirement работать начинает исправно. Если возвращать - проблема остаётся, и не работает ни один, если их более одного. Довольно странно, ведь это моё старое меню, и оно работало вполне исправно...
 
Решение
Код:
menu_title: 'тест'
open_command:
- 123t
size: 54
items:
  'Zombie_piglun':
    material: zombified_piglin_spawn_egg
    amount: 1
    slot: 14
    priority: 1
    lore:
      - ''
      - '&#10b981Цена: &#fce517180☆'
# Проверка перед нажатием ЛКМ у игрока права vip.spawner.permission
    left_click_requirement:
      requirements:
        perm:
          type: has permission
          permission: vip.spawner.permission
          deny_commands:
          - '[close]'
          - '[message] Ö &cВам нужна привилегия выше чем вы имеете сейчас'
        stars:
          type: '>='
          input: '%playerpoints_points%'
          output: '180'
          deny_commands:
          - '[close]'
          - '[message] Ö &cУ вас не хватает звёзд'
        cooldown...
Код:
menu_title: 'тест'
open_command:
- 123t
size: 54
items:
  'Zombie_piglun':
    material: zombified_piglin_spawn_egg
    amount: 1
    slot: 14
    priority: 1
    lore:
      - ''
      - '&#10b981Цена: &#fce517180☆'
# Проверка перед нажатием ЛКМ у игрока права vip.spawner.permission
    left_click_requirement:
      requirements:
        perm:
          type: has permission
          permission: vip.spawner.permission
          deny_commands:
          - '[close]'
          - '[message] Ö &cВам нужна привилегия выше чем вы имеете сейчас'
        stars:
          type: '>='
          input: '%playerpoints_points%'
          output: '180'
          deny_commands:
          - '[close]'
          - '[message] Ö &cУ вас не хватает звёзд'
        cooldown:
          type: '=='
          input: '%mcd_left_daily_reward%'
          output: '0'
          deny_commands:
          - '[message] Ö &cПодождите %mcd_left_daily_reward% сек.'
# Выполнение команды если у игрока есть право vip.spawner.permission и хватает валюты
    left_click_commands:
      - '[console] mcd add %player_name% daily_reward 5'
      - '[refresh] spawners'
      - '[console] minecraft:give %player_name% zombified_piglin_spawn_egg'
      - '[console] p take %player_name% 180'
      - '[message] Ö &#10b981Вы получили яйцо призыва'
 
Последнее редактирование:
Зачем ты сделал 3 разных проверки... Можно же просто написать
Код:
    left_click_requirement:
      requirements:
        points:
          type: '>='
          input: '%playerpoints_points%'
          output: '180'
        time:
          type: '=='
          input: '%mcd_left_daily_reward%'
          output: '0'
        perm:
          type: has permission
          permission: vip.spawner.permission
      deny_commands:
       - '[close]'
       - '[message] Ö &cУ Вас недостаточно звезд, либо'
       - '[message] Ö &cу Вас откат награды, либо'
       - '[message] Ö &cу Вас недостаточно прав'

А в самом меню, лоре предмета, указать все нужные требования
 
Зачем ты сделал 3 разных проверки... Можно же просто написать
Код:
    left_click_requirement:
      deny_commands:
       - '[close]'
       - '[message] Ö &cУ Вас недостаточно звезд, либо'
       - '[message] Ö &cу Вас откат награды, либо'
       - '[message] Ö &cу Вас недостаточно прав'
      requirements:
        points:
          type: '>='
          input: '%playerpoints_points%'
          output: '180'
        time:
          type: '=='
          input: '%mcd_left_daily_reward%'
          output: '0'
        perm:
          type: has permission
          permission: vip.spawner.permission

А в самом меню, лоре предмета, указать все нужные требования

я кста потестил можно deny_commands для каждого пихнуть вроде робит
 
я кста потестил можно deny_commands для каждого пихнуть вроде робит
Ну да, возможно. И кстати, Furry__wolf, разве указание [close] первым в deny_commands уже нормально работает и не вызывает ошибки в плагине?
 
Ну да, возможно. И кстати, Furry__wolf, разве указание [close] первым в deny_commands уже нормально работает и не вызывает ошибки в плагине?
Удивительно что оно вообще не сломалось, ошибок никаких нет, всё работало так продолжительное время) даже сейчас работает, но частично
Объединено

я кста потестил можно deny_commands для каждого пихнуть вроде робит
Можно ли пример? Я попробовал - меню не загружается
 
Удивительно что оно вообще не сломалось, ошибок никаких нет, всё работало так продолжительное время) даже сейчас работает, но частично
Объединено


Можно ли пример? Я попробовал - меню не загружается

в самом первом ответе вложил
 
в самом первом ответе вложил
Удивительное и невероятное, всё работает теперь как должно, спасибо большое)

Зачем ты сделал 3 разных проверки... Можно же просто написать
Код:
    left_click_requirement:
      requirements:
        points:
          type: '>='
          input: '%playerpoints_points%'
          output: '180'
        time:
          type: '=='
          input: '%mcd_left_daily_reward%'
          output: '0'
        perm:
          type: has permission
          permission: vip.spawner.permission
      deny_commands:
       - '[close]'
       - '[message] Ö &cУ Вас недостаточно звезд, либо'
       - '[message] Ö &cу Вас откат награды, либо'
       - '[message] Ö &cу Вас недостаточно прав'

А в самом меню, лоре предмета, указать все нужные требования
За такой вариант тоже спасибо, возможно когда-то пригодится и он)
 
Назад
Сверху Снизу