Конфигурация меню (YAML)
Настройка меню в DialogMenus интуитивно понятна. Каждый файл .yml в папке plugins/DialogMenus/menus/ представляет собой отдельное меню.
📄 Общая структура
title: "Заголовок" # Поддерживает MiniMessage и PAPI
type: notice # notice, confirmation, multi-action
can-close-with-escape: true # Можно ли закрыть на ESC
body:
# Элементы контента
element1:
type: text
content: "Текст сообщения"
element2:
type: item
material: DIAMOND
🏗 Типы меню (type)
1. notice
Простое информационное окно. Использует один блок button для закрытия.
type: notice
button:
text: "ОК"
2. confirmation
Диалог "Да/Нет". Использует блоки yes-button и no-button.
type: confirmation
yes-button:
text: "<green>Принять"
no-button:
text: "<red>Отклонить"
3. multi-action
Универсальное меню с любым количеством кнопок. Использует раздел buttons.
type: multi-action
buttons:
btn_1:
text: "Кнопка 1"
btn_2:
text: "Кнопка 2"
💬 Поля ввода (inputs)
Вы можете добавить интерактивные элементы для взаимодействия с игроком.
text
Обычное текстовое поле.
inputs:
my_text:
type: text
label: "Введите ваше имя"
number-range
Ползунок (слайдер) для выбора числа.
inputs:
my_slider:
type: number-range
label: "Выберите количество"
min: 0
max: 100
initial: 50
step: 1.0 # По умолчанию 1.0 (целые числа)
choice
Кнопка-переключатель для выбора одного варианта из списка.
inputs:
my_choice:
type: choice
label: "Ваш пол"
options:
male: "<blue>Мужчина"
female: "<light_purple>Женщина"
other: "Другое"
В действиях (actions) используйте <input:my_choice>, чтобы получить ключ выбранного варианта (например, male).
---
## 🎨 Мини-сообщения (MiniMessage)
Все текстовые поля поддерживают формат [MiniMessage](https://docs.adventure.kyori.net/minimessage/format.html).
Примеры:
- `<gold>Золотой текст</gold>`
- `<gradient:red:blue>Градиент</gradient>`
- `<bold>Жирный текст</bold>`