Помогите починить меню покупки DeluxeMenus

myst1c

Пользователь
Сообщения
128
Плагин
DeluxeMenus
Ядро сервера
  1. Purpur
Версия сервера
  1. 1.18+
Память сервера ОЗУ
6Gb
Ссылка
https://www.spigotmc.org/resources/deluxemenus.11734/
Сделал меню покупки улучшений эндер сундуков
Код:
items:
  'enderchest1':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 20
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(1 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&636 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6349 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: javascript
          expression: '%playerpoints_points% >= 349'
        has_permission:
          type: has permission
          permission: customenderchest.level.3
      deny_commands:
        - '[message] &cУ вас недостаточно кристалов('
        - '[message] &fЛибо у вас уже есть это улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 349'
      - '[console] lp user %player_name% permission set customenderchest.level.3 true'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'enderchest2':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 22
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(2 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&645 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6629 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: javascript
          expression: '%playerpoints_points% >= 629'
        has_permission:
          type: has permission
          permission: customenderchest.level.4
      deny_commands:
        - '[message] &cУ вас недостаточно кристалов('
        - '[message] &fЛибо у вас уже есть это улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 629'
      - '[console] lp user %player_name% permission set customenderchest.level.4 true'
      - '[console] lp user %player_name% permission set customenderchest.level.4 false'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'enderchest3':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 24
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(3 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&654 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6889 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: javascript
          expression: '%playerpoints_points% >= 889'
        has_permission:
          type: has permission
          permission: customenderchest.level.5
      deny_commands:
        - '[message] &cУ вас недостаточно кристалов('
        - '[message] &fЛибо у вас уже есть это улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 889'
      - '[console] lp user %player_name% permission set customenderchest.level.5 true'
      - '[console] lp user %player_name% permission set customenderchest.level.5 false'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
Проблемы -
1- Первое улучшение покупаеться постоянно и не проходит проверку на есть ли пермишон или нет
2- 2 и 3 улучшение вообше не покупаються и выводит то что я написал в deny_commands[/CODE]
 
Немного под провил код
Код:
items:
  'enderchest1':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 20
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(1 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&636 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6349 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: '>='
          input: '%playerpoints_points%'
          output: '349'
          deny_commands:
          - '[message] &cУ вас недостаточно кристалов('
        has_permission:
          type: has permission
          permission: customenderchest.level.3 true
          deny_commands:
          - '[message] &fУ вас уже есть это улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 349'
      - '[console] lp user %player_name% permission set customenderchest.level.3 true'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'enderchest2':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 22
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(2 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&645 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6629 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: '>='
          input: '%playerpoints_points%'
          output: '629'
          deny_commands:
          - '[message] &cУ вас недостаточно кристалов('
        has_permission:
          type: has permission
          permission: customenderchest.level.4 true
          deny_commands:
          - '[message] &fУ вас уже есть это улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 629'
      - '[console] lp user %player_name% permission set customenderchest.level.4 true'
      - '[console] lp user %player_name% permission set customenderchest.level.3 false'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'enderchest3':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 24
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(3 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&654 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6889 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: '>='
          input: '%playerpoints_points%'
          output: '889'
          deny_commands:
          - '[message] &cУ вас недостаточно кристалов('
        has_permission:
          type: has permission
          permission: customenderchest.level.5 true
          deny_commands:
          - '[message] &fУ вас уже есть это улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 889'
      - '[console] lp user %player_name% permission set customenderchest.level.5 true'
      - '[console] lp user %player_name% permission set customenderchest.level.4 false'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'exit':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTc3NDIwMzRmNTlkYjg5MGM4MDA0MTU2YjcyN2M3N2NhNjk1YzQzOTlkOGUwZGE1Y2U5MjI3Y2Y4MzZiYjhlMiJ9fX0=
    slot: 40
    display_name: ' '
    lore:
      - '   &6&l← ОБРАТНО  '
      - ''
    left_click_commands:
      - '[openguimenu] shop_menu'
      - '[sound] BLOCK_LEVER_CLICK'
 
Так нельзя указывать же. Просто permission: customenderchest.level.3
Убрал но все равно както странно проходит проверку 1 чест покупаеться бесконечность раз а 2 и 3 не покупаються пишет что есть этот пемишон
Авто объединение сообщений:

Вот код ещё раз немного подправил но всё равно плохо проводиться проверка
Код:
items:
  'enderchest1':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 20
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(1 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&636 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6349 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: '>='
          input: '%playerpoints_points%'
          output: '349'
          deny_commands:
          - '[message] &cУ вас недостаточно кристалов('
        has_permission:
          type: has permission
          permission: customenderchest.level.3
          deny_commands:
          - '[message] &fУ вас уже есть это улучшение)'
        has_permission1:
          type: has permission
          permission: customenderchest.level.4
          deny_commands:
          - '[message] &fУ вас уже есть улучшение)'
        has_permission2:
          type: has permission
          permission: customenderchest.level.5
          deny_commands:
          - '[message] &fУ вас уже есть улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 349'
      - '[console] lp user %player_name% permission set customenderchest.level.3 true'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'enderchest2':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 22
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(2 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&645 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6629 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: '>='
          input: '%playerpoints_points%'
          output: '629'
          deny_commands:
          - '[message] &cУ вас недостаточно кристалов('
        has_permission:
          type: has permission
          permission: customenderchest.level.4
          deny_commands:
          - '[message] &fУ вас уже есть это улучшение)'
        has_permission1:
          type: has permission
          permission: customenderchest.level.5
          deny_commands:
          - '[message] &fУ вас уже есть улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 629'
      - '[console] lp user %player_name% permission set customenderchest.level.4 true'
      - '[console] lp user %player_name% permission set customenderchest.level.3 false'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'enderchest3':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZGRjYzE4OTYzM2M3ODljYjZkNWU3OGQxM2E1MDQzYjI2ZTdiNDBjZGI3Y2ZjNGUyM2FhMjI3OTU3NDk2N2I0In19fQ==
    slot: 24
    display_name: '      &x&f&b&6&9&0&0&lЭ&x&f&b&7&5&0&0&lн&x&f&c&8&0&0&0&lg&x&f&c&8&c&0&0&le&x&f&c&9&7&0&0&lp&x&f&c&a&3&0&0&lч&x&f&d&a&e&0&0&le&x&f&d&b&a&0&0&lc&x&f&d&c&5&0&0&lт&7(3 лвл)'
    lore:
      - '               &6&m  '
      - "&fОписание:"
      - "&654 слотов в Эндер-сундуке"
      - ""
      - "&cПокупается один раз"
      - "&f▸ Стоимость: &6889 кристалов"
    left_click_requirement:
      requirements:
        has_money:
          type: '>='
          input: '%playerpoints_points%'
          output: '889'
          deny_commands:
          - '[message] &cУ вас недостаточно кристалов('
        has_permission:
          type: has permission
          permission: customenderchest.level.5
          deny_commands:
          - '[message] &fУ вас уже есть это улучшение)'
    left_click_commands:
      - '[console] points take %player_name% 889'
      - '[console] lp user %player_name% permission set customenderchest.level.5 true'
      - '[console] lp user %player_name% permission set customenderchest.level.4 false'
      - '[message] &fВы &aуспешно &fкупиши улучшения для эндер-сундука'
      - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
  'exit':
    material: basehead-eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTc3NDIwMzRmNTlkYjg5MGM4MDA0MTU2YjcyN2M3N2NhNjk1YzQzOTlkOGUwZGE1Y2U5MjI3Y2Y4MzZiYjhlMiJ9fX0=
    slot: 40
    display_name: ' '
    lore:
      - '   &6&l← ОБРАТНО  '
      - ''
    left_click_commands:
      - '[openguimenu] shop_menu'
      - '[sound] BLOCK_LEVER_CLICK'
 
Последнее редактирование:
Так requirements это условия для click_commands, то есть если соблюдены все условия - выполняются команды click_commands
Чтобы click_commands выполнялись когда НЕТ пермишена, необходимо использовать тип проверок "!has permission"
 
Назад
Сверху Снизу