Вопрос Как сделать меню зачарования предмета с помощью Deluxe Menus?

Ядро
Paper

Ethan_winterzz2000

Пользователь
Сообщения
149
Плагин
Deluxe Menus
Ядро сервера
  1. Paper
Версия сервера
  1. 1.16.5
Ссылка
https://www.spigotmc.org/resources/deluxemenus.11734/
Всем здравствуйте! Хотел бы узнать возможно ли сделать меню, в котором можно было бы зачаровать предмет на любое зачарование с пмоощью палгина Делюкс Менюс. И если да, то как?
 
В теории, да. Можно несколькими способами реализовать. Надеюсь, что правильно Вас понял.
1. Более сокращенный. Прописываете предмет в меню, в описании указываете зачарования в столбец (либо в строку, значения не имеет). При нажатии правой кнопкой мыши, зачарование подсвечивается и спускается вниз по столбику, а при нажатии левой выдается игроку. Чтобы сделать подсвечивание названия зачарований, выдаете игроку некое право, прописанное в самом конфиге меню, прописываете столько прав, сколько зачарований. При нажатии ПКМ у игрока снимается прошлое право и выдается другое, в зависимости от зачарования. Надеюсь, что объяснил понятно.

2. Аналогичен первому, только вместо прав вы реализуете подсветку предметов путем открытия нового меню, в котором данный предмет подсвечен, и все, копируете меню, подсвечивая необходимый предмет.

Под подсветкой предмета имею ввиду вот такую систему:
Кирка:
Эффективность
Шелковое касание

И так далее.

Также для выдачи зачарований можно использовать essentials, а можно реализовать с помощью дефолтной майнкрафтовской команды, тут уже Вам решать. Если что-то непонятно, то спрашивайте.
 
Последнее редактирование:
В теории, да. Можно несколькими способами реализовать. Надеюсь, что правильно Вас понял.
1. Более сокращенный. Прописываете предмет в меню, в описании указываете зачарования в столбец (либо в строку, значения не имеет). При нажатии правой кнопкой мыши, зачарование подсвечивается и спускается вниз по столбику, а при нажатии левой выдается игроку. Чтобы сделать подсвечивание названия зачарований, выдаете игроку некое право, прописанное в самом конфиге меню, прописываете столько прав, сколько зачарований. При нажатии ПКМ у игрока снимается прошлое право и выдается другое, в зависимости от зачарования. Надеюсь, что объяснил понятно.

2. Аналогичен первому, только вместо прав вы реализуете подсветку предметов путем открытия нового меню, в котором данный предмет подсвечен, и все, копируете меню, подсвечивая необходимый предмет.

Под подсветкой предмета имею ввиду вот такую систему:
Кирка:
Эффективность
Шелковое касание

И так далее.

Также для выдачи зачарований можно использовать essentials, а можно реализовать с помощью дефолтной майнкрафтовской команды, тут уже Вам решать. Если что-то непонятно, то спрашивайте.
Вопрос есть насчет самого первого: не очень понятно что будет происходить при нажатии ПКМ и ЛКМ, т.е. Предмет и зачарования прописанные в столбец это есть некий выбор, а подсвеченное зачарование это выбранный пункт? Если так, то что за код должен быть? Я полазил в документации Deluxe Menus, думал в "Типы действий" найду что-то похожее на то что вы указали. Однако нет)
 
Вопрос есть насчет самого первого: не очень понятно что будет происходить при нажатии ПКМ и ЛКМ, т.е. Предмет и зачарования прописанные в столбец это есть некий выбор, а подсвеченное зачарование это выбранный пункт? Если так, то что за код должен быть? Я полазил в документации Deluxe Menus, думал в "Типы действий" найду что-то похожее на то что вы указали. Однако нет)
Да, именно так. Зеленым подсвечивается выбранное зачарование. Сделать это можно с помощью пермишена, сделайте так, чтобы изначально по дефолту и игрока было право, которое подсвечивает самое первое зачарование. Сейчас не могу конфиг отправить, ибо не дома.
 
Вопрос есть насчет самого первого: не очень понятно что будет происходить при нажатии ПКМ и ЛКМ, т.е. Предмет и зачарования прописанные в столбец это есть некий выбор, а подсвеченное зачарование это выбранный пункт? Если так, то что за код должен быть? Я полазил в документации Deluxe Menus, думал в "Типы действий" найду что-то похожее на то что вы указали. Однако нет)
Скину источник, который однозначно поможет с реализацией. Во-первых, изучите то, как работает has permission в делюкс менюс.


Во-вторых, нажатие на лкм должно выдавать право, забирая прошлое, как я уже и писал ранее, а также обновлять меню, путем функции [update], переключая возможные зачарования.
 
Скину источник, который однозначно поможет с реализацией. Во-первых, изучите то, как работает has permission в делюкс менюс.


Во-вторых, нажатие на лкм должно выдавать право, забирая прошлое, как я уже и писал ранее, а также обновлять меню, путем функции [update], переключая возможные зачарования.
Такс, мне нужна ваша помощь, я набросал тут код: сделал два айтема одного материала и просто менял цвет в пункте lore. Сделал требования: одно для ПКМ, другое для ЛКМ, при нажатии ЛКМ у меня проверяет предмет( не балланс) а ПКМ должно обновить меню(так понимаю) и переместить на другой айтем. Но с трудом укладывается в голове, как это будет выглядеть. Снизу оставил тот самый код
Код:
menu_title: '&8               Кузнец → Зачарования '
register_command: true

open_requirement:
  requirements:
    permission:
      type: has permission
      permission: admin
      deny_commands:
        - '[message] &cМеню недоступно для вас'

items:

  'it_enchantment_1':
    material: ANVIL
    slot: 11
    priority: 0
    display_name: '&7 &dВыберите зачарование: '
    lore:
    - ''
    - '&2 Острота I '
    - '&f Небесная кара I'
    - ' '
    - '&7 Для выбора нажимайте '
    - '&7 ПКМ. Чтобы подтвердить '
    - '&7 выбор, нажмите ЛКМ. ' 
    view_requirement:
      requirements:
      permission:
        true: string equals
        input: ' '
        output: ' '
    right_click_requirement:
      requirements:
        item_check:
          type: has item
          material: KNOWLEDGE_BOOK
          deny_commands:
          - '[message]'
          - '[message] &7(Кузнец)&c Я не могу принять ваш заказ! '
          - '[message]'
          - '[sound] BLOCK_NOTE_BLOCK_BASS'
          
    right_click_commands:
    - '[takemoney] '
    - '[refresh]'
    - '[message]'
    - '[message] &7(Скупщик) &cВы продали &nтотем бессмертия&7 '
    - '[message]'
    - '[console] clear %player_name% TOTEM_OF_UNDYING 1'
    - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
    
  'it_enchantment_2':
    material: ANVIL
    slot: 11
    priority: 0
    display_name: '&7 &dВыберите зачарование: '
    lore:
    - ''
    - '&f Острота I '
    - '&2 Небесная кара I'
    - ' '
    - '&7 Для выбора нажимайте '
    - '&7 ПКМ. Чтобы подтвердить '
    - '&7 выбор, нажмите ЛКМ. ' 
    view_requirement:
      requirements:
      permission:
        true: string equals
        input: ' '
        output: ' '
    left_click_requirement:
      requirements:
        item_check:
          type: has item
          material: KNOWLEDGE_BOOK
          deny_commands:
          - '[message]'
          - '[message] &7(Кузнец)&c Я не могу принять ваш заказ! '
          - '[message]'
          - '[sound] BLOCK_NOTE_BLOCK_BASS'
          
    left_click_commands:
    - '[giveenchantment] '
    - '[refresh]'
    - '[message]'
    - '[message] &7(Кузнец) &cВы прокачали меч &7 '
    - '[message]'
    - '[console] clear %player_name% IRON_SWORD 1'
    - '[console] give %player_name% IRON_SWORD 1'
    - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
    right_click_requirement:
      requirements:
        permission:
          type: has permission
          permission:
          deny_commands:
          - '[message]'
          - '[message] &7(Кузнец)&c Я не могу принять ваш заказ! '
          - '[message]'
          - '[sound] BLOCK_NOTE_BLOCK_BASS'
          
    right_click_commands:
    - '[giveenchantment] '
    - '[refresh]'
    - '[message]'
    - '[message] &7(Кузнец) &cВы прокачали меч &7 '
    - '[message]'
    - '[console] clear %player_name% IRON_SWORD 1'
    - '[console] give %player_name% IRON_SWORD 1'
    - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
    
 
        
    'complete_enchanment':
      material: ANVIL
      slot: 11
      priority: 1
      display_name: '&7 &dВыберите зачарование: '
      lore:
      - ''
      -
      

    
    
  
sweet: true
Объединено

Прошу прощения, прослушал вас насчет пункта: нажатие на ЛКМ должно выдавать право, забирая прошлое. Но если так, то за счет чего производится процесс зачарки, нужно условие: тот же предмет или сумма на балансе
 
Последнее редактирование:
Такс, мне нужна ваша помощь, я набросал тут код: сделал два айтема одного материала и просто менял цвет в пункте lore. Сделал требования: одно для ПКМ, другое для ЛКМ, при нажатии ЛКМ у меня проверяет предмет( не балланс) а ПКМ должно обновить меню(так понимаю) и переместить на другой айтем. Но с трудом укладывается в голове, как это будет выглядеть. Снизу оставил тот самый код
Код:
menu_title: '&8               Кузнец → Зачарования '
register_command: true

open_requirement:
  requirements:
    permission:
      type: has permission
      permission: admin
      deny_commands:
        - '[message] &cМеню недоступно для вас'

items:

  'it_enchantment_1':
    material: ANVIL
    slot: 11
    priority: 0
    display_name: '&7 &dВыберите зачарование: '
    lore:
    - ''
    - '&2 Острота I '
    - '&f Небесная кара I'
    - ' '
    - '&7 Для выбора нажимайте '
    - '&7 ПКМ. Чтобы подтвердить '
    - '&7 выбор, нажмите ЛКМ. '
    view_requirement:
      requirements:
      permission:
        true: string equals
        input: ' '
        output: ' '
    right_click_requirement:
      requirements:
        item_check:
          type: has item
          material: KNOWLEDGE_BOOK
          deny_commands:
          - '[message]'
          - '[message] &7(Кузнец)&c Я не могу принять ваш заказ! '
          - '[message]'
          - '[sound] BLOCK_NOTE_BLOCK_BASS'
         
    right_click_commands:
    - '[takemoney] '
    - '[refresh]'
    - '[message]'
    - '[message] &7(Скупщик) &cВы продали &nтотем бессмертия&7 '
    - '[message]'
    - '[console] clear %player_name% TOTEM_OF_UNDYING 1'
    - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
   
  'it_enchantment_2':
    material: ANVIL
    slot: 11
    priority: 0
    display_name: '&7 &dВыберите зачарование: '
    lore:
    - ''
    - '&f Острота I '
    - '&2 Небесная кара I'
    - ' '
    - '&7 Для выбора нажимайте '
    - '&7 ПКМ. Чтобы подтвердить '
    - '&7 выбор, нажмите ЛКМ. '
    view_requirement:
      requirements:
      permission:
        true: string equals
        input: ' '
        output: ' '
    left_click_requirement:
      requirements:
        item_check:
          type: has item
          material: KNOWLEDGE_BOOK
          deny_commands:
          - '[message]'
          - '[message] &7(Кузнец)&c Я не могу принять ваш заказ! '
          - '[message]'
          - '[sound] BLOCK_NOTE_BLOCK_BASS'
         
    left_click_commands:
    - '[giveenchantment] '
    - '[refresh]'
    - '[message]'
    - '[message] &7(Кузнец) &cВы прокачали меч &7 '
    - '[message]'
    - '[console] clear %player_name% IRON_SWORD 1'
    - '[console] give %player_name% IRON_SWORD 1'
    - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
    right_click_requirement:
      requirements:
        permission:
          type: has permission
          permission:
          deny_commands:
          - '[message]'
          - '[message] &7(Кузнец)&c Я не могу принять ваш заказ! '
          - '[message]'
          - '[sound] BLOCK_NOTE_BLOCK_BASS'
         
    right_click_commands:
    - '[giveenchantment] '
    - '[refresh]'
    - '[message]'
    - '[message] &7(Кузнец) &cВы прокачали меч &7 '
    - '[message]'
    - '[console] clear %player_name% IRON_SWORD 1'
    - '[console] give %player_name% IRON_SWORD 1'
    - '[sound] ENTITY_EXPERIENCE_ORB_PICKUP'
   
 
       
    'complete_enchanment':
      material: ANVIL
      slot: 11
      priority: 1
      display_name: '&7 &dВыберите зачарование: '
      lore:
      - ''
      -
     

   
   
 
sweet: true
Объединено

Прошу прощения, прослушал вас насчет пункта: нажатие на ЛКМ должно выдавать право, забирая прошлое. Но если так, то за счет чего производится процесс зачарки, нужно условие: тот же предмет или сумма на балансе
За счет нажатия левой кнопки мыши. Левая кнопка мыши выдает предмет, выбранный игроком путем нажатия на правую. Правая лишь меняет предметы, путем выдачи и отбирания прав в лакпермс
 
Я бы такое реализовал просто через подмену предметов.
То есть в начальном меню есть список предметов для зачарования.
Пользователь выбирает допустим алмазный меч и переходит в меню 2.
Там есть на выбор несколько зачарований. Игрок покупает определенный набор чар или один конкретный.
И происходит то, что меч пользователя изымается из инвентаря, а ему выдается такой же но с выбранными чарами.
Минусы в том, что так не наложить одиночными чарами разные заклинания. И естественно замена предмета. А плюс, что такая реализация очень простая.
 
Я бы такое реализовал просто через подмену предметов.
То есть в начальном меню есть список предметов для зачарования.
Пользователь выбирает допустим алмазный меч и переходит в меню 2.
Там есть на выбор несколько зачарований. Игрок покупает определенный набор чар или один конкретный.
И происходит то, что меч пользователя изымается из инвентаря, а ему выдается такой же но с выбранными чарами.
Минусы в том, что так не наложить одиночными чарами разные заклинания. И естественно замена предмета. А плюс, что такая реализация очень простая.
Я реализовал через пермишены. Теперь нужно придумать так, чтобы при чарке меча, железный уже зачаренный не учитывался. У меня мечи чарит даже если железного нет, плагин считает что зачарованный тоже подходит, - ну желензый же
 
Назад
Сверху Снизу