Как настроить chestcommands меню

Настройка плагина ChestCommands: Создаём меню на майнкрафт сервере

Красочное донат-меню, да и любое другое меню вашего сервера — основополагающие принципы его успеха. Кому из нас захочется купить донат на сервере, описание которого мы так и не сможем узнать? Да и захочет ли игрок играть на сервере, где нет меню для основной навигации?

В этом руководстве мы разберём процесс создания любого меню в плагине ChestCommands, зададим команды и цветовые коды. Поняв основной принцип, вы сможете в считанные минуты создавать невероятные менюшки, которые будут манить не только игроков, но и донатеров.

Установка плагина и пару слов о Notepad++

Скачивать ChestCommands стоит только с официального сайта SpigotMc.org (кликабельно)

Для удобного редактирования конфигов необходим редактор Notepad++, скачать тоже с официального сайта.

Директория плагина

Как и любой другой плагин, ChestCommands после установки создаёт одноимённую папку — ChestCommands. В её подпапке menu будут находиться файлы с расширением .yml, каждый из которых является новой менюшкой, созданной под определённые задачи — меню сервера, донат-меню, gui-магазин и так далее.

Что интересно, внутри подпапки menu мы тоже сможем создавать подпапки для группировки похожих меню; например, можно создать папку shop и перенести в неё все .yml файлы, которые связаны с магазином.

Создание и настройка меню

Для начала настройки меню вам необходимо создать .yml файл в папке menu, либо в созданных вами подпапках menu. Назвать файл можете как угодно — это особой роли не играет; главное, чтобы вы запомнили, за что отвечает это меню.

Открываем созданный файл через текстовый редактор Notepad++ и видим, что файл пуст. Это нормально, ведь нам предстоит заполнить его:

Первый блок настроек:

name: ‘&lМеню сервера’ #Название, которое будет отображаться в игре

rows: 6 # Количество строк в меню

command: ‘menu;меню;help;помощь;хелп’ #Команды для открытия меню

Второй блок настроек, сами предметы внутри меню

ah: # Внутреннее название, сменить при настройке следующего предмета

COMMAND: ‘ah’ # Команда, которая будет выполнена при нажатии

NAME: » # Название предмета

LORE: # Описание предмета

— ‘ &6[fl2] &aПокупка доната на сайте’

— ‘ &6[fl2] &3&nMineCloud.Su&r &6(Скидки 90%)’

— ‘ &9[snowman] &fРынок, на котором игроки могут продавать свои вещи’

— ‘ &9[snowman] &fИ покупать более нужную снарягу у других игроков’

— ‘ &9[snowman] &fА у тебя найдётся вещь на продажу?’

— ‘ &c[fl3] &fНажми, чтобы посмотреть’

— ‘ &6[fl2] &fКоманда: &6/ah’

ID: ‘382’ # ID предмета

KEEP-OPEN: true # Оставлять ли интерфейс открытым (оставьте на true)

POSITION-X: 2 # Позиция X на оси координат (определяет местоположение)

POSITION-Y: 4 # Позиция Y на оси координат (определяет местоположение)

# ОПЦИОНАЛЬНЫЕ НАСТРОЙКИ ДЛЯ ПРЕДМЕТА

PERMISSION: ‘mainbans.ban’ # Право, без которого действие не произойдёт

PERMISSION-MESSAGE: ‘&7[Хостинг] &fКонсоль доступна от привилегии &7&l(&4&lКонсоль&7&l)&f. &fКупите донат на сайте: &a&lMineCloud.Su’ # Сообщение, которое выводится при отсутствии прав

Основной принцип

Настроив один предмет, вы сможете легко настроить другие. Просто скопируйте настройки первого предмета и вставьте чуть ниже в этом же .yml файле. Измените внутреннее название и местоположение на оси координат, после чего можете смело задавать новое внешнее название, ID и описание. Вот и всё, вы поняли основной принцип настройки плагина ChestCommands и все особенности настройки отдельного предмета!

Если вам нужна качественная сборка, в которой будет идеально настроено всё, в том числе и все менюшки сервера — вы всегда можете заглянуть в наш список товаров — окупаемых сборок.

Источник

Настройка плагина Chest Commands

В этой статье я расскажу как настроить плагин под названием ChestCommands. Ниже вы ведите разделы, которые вам помогут в настройке. Настоятельно рекомендую ознакомится с каждым из них.

1.Базовая настройка (введение)

В этом разделе вы узнаете, как структурировано меню и как его изменить. В данном разделе вы узнаете о структуре меню и как правильно его изменять. Пожалуйста, внимательно прочитайте это, прежде чем приступать к дальнейшей настройке!

  • Изменение существующего меню

Все меню находятся в папке plugin/ChestCommands/menu/название_меню. Для редактирование откройте файл меню в редакторе (рекомендуется Notepad ++).

Самый простой способ: скопировать и вставить существующее меню, изменить настройки, а также добавить / удалить или отредактировать элементы. В названиях файлов меню не рекомендуется использовать CAPS, большие буквы и т.п, нужно писать маленькими английскими буквами, пример правильного названия — test.yml.

  • Настройки меню

Вы можете найти эти настройки в верхней части меню YML-файла, в разделе конфигурации «menu-settings».

name: ‘&1Menu’ (обязательно)
Это имя, которое будет отображаться при открытии меню в качестве названия пользовательского инвентаря. Оно не может быть длиннее 30 символов (включая цвета). В данном параметре вы можете использовать форматирование и менять цвета текста, например, &1Menu — будет выглядеть так — Menu .

rows: 6 (обязательно)
Данный параметр устанавливает количество строк, из которых будет состоять инвентарь меню с элементами. Значение должно быть от 1 до 6 (двойной сундук). Если значение будет выше 6, клиенты игроков не будут отображать строки правильно (скорее всего меню просто будет недоступно).

command: ‘menu’ (необязательно)
Это команда, которая вызывает меню. Используется для открытие меню введя команду в чат, в нашем случае для открытие меню понадобится ввести — /menu. Вы можете использовать несколько команд, разделяя их точкой с запятой, например: ‘menu; m; mainmenu’.

auto-refresh: 5 (необязательно)
Как часто меню будет обновлять свое содержание. Обратите внимание, что деньги автоматически обновляются после каждой транзакции.

open-with-item: (необязательно)
id: ‘wool: 1’ — используется для открытия меню с помощью указного предмета. Может потребоваться data (в нашем случае data — 1).
right-click: true — true, если меню нужно открыть, щелкнув правой кнопкой мыши на предмет.
left-click: false — true, если меню нужно открыть, щелкнув левой кнопкой мыши элемент.

  • Предметы меню (элементы)

Не используйте прописные буквы, цветовые коды или символы во внутреннем имени (см. ниже) и помните, что оно не должно совпадать с именем другого элемента в том же меню. Каждый элемент состоит из внутреннего имени (никак не видимого для игроков) и параметров, которые могут назначать команды, название, описание предметов и многое другое. Пример параметров одного предмета (элемента меню):

spawn-item: (уникальное название, которое не будет видно для игрока)
ID: bed (ID предмета, можно указывать как буквами так и цифрами)
COMMAND: ‘spawn’ (команда, которая будет выполнятся при нажатии)
NAME: ‘&aReturn to spawn’ (название, которое будет видно игроку, можно указывать цвета и использовать форматирование)
LORE: (описание предмета)
— ‘This is the lore of the item.’
— ‘These lines appear below the name.’
POSITION-X: 1
POSITION-Y: 1
➥ положение предмета (элемента) в меню

NAME, COMMAND, ID, … называются «параметрами». Каждый элемент может иметь различные параметры. Узнайте больше о каждом возможном параметре можно в разделе №2.

Каждый предмет (элемент) в меню должен иметь как минимум ID, POSITION-X и POSITION-Y.

2. Параметры предметов (элементов меню)

Эта страница содержит список возможных которые, которые можно использовать для каждого предмета (элемента).

Для каждого элемента строго необходимы три параметра: ID, POSITION-X, POSITION-Y.

ID
Идентификатор элемента меню. Вы можете использовать как числовые, так и буквенные идентификаторы, но я рекомендую использовать буквенный для лучшей читаемости. Список идентификаторов: здесь (без учета регистра и нижнего подчеркивания).

При желании вы можете использовать data, но тогда всё нужно будет поместить в кавычки.

Пример ( 10x черная шерсть ):

POSITION-X и POSITION-Y
Это два из трёх обязательных параметров элементов меню. Они устанавливают положение элемента в меню.

POSITION-X: 5
POSITION-Y: 1

NAME
Этот параметр устанавливает отображаемое имя элемента (в первой строке, когда вы наводите на него курсор). Вы можете использовать цветовые коды и символы.

NAME: ‘&6This is a colored name!’

LORE
Данный параметр устанавливает строки, которые появляются под именем. Вы можете использовать цветовые коды и символы.

LORE:
— ‘Description of the item’
— ‘Some other details’
— ‘&cImportant note’

ENCHANTMENT
Этот параметр устанавливает чары, которые будут появляться на предмете, в основном используются только для эффекта свечения.

ENCHANTMENT: ‘fire aspect, 1’

Уровень не является обязательным. Вы можете использовать несколько чар, разделяя их точкой с запятой:

ENCHANTMENT: ‘sharpness, 5; durability, 10; silk touch’

COLOR
Этот параметр устанавливает цвет кожаной брони, не более того. Формат цвета: ‘ , , ’. Каждый цвет должен быть между 0 и 255.

SKULL-OWNER
Данный параметр устанавливает владельца головы, только если это голова игрока (skull:3). Для отображения различных текстур / текстов головы.

COMMAND
Этот параметр устанавливает команду. Он поддерживает различные команды, которые не будут перечислены здесь. Обычная команда (без префиксов) выполняется от игрока, который щелкнул по значку. С помощью команд можно делать разные магазины и т.п, подробнее смотреть тут.

PRICE
Данный параметр устанавливает цену на предмет (выполнение команды). Команды не будут выполнены, если у игрока, который нажал, недостаточно денег на счету. Пожалуйста, посмотрите здесь, как настроить экономику.

LEVELS
Этот параметр устанавливает цену в уровнях опыта для предметов. Команды не будут выполнены, если у игрока, который нажал, недостаточно уровней. При выполнение уровни игрока будут удалены (как при чаре предмета).

REQUIRED-ITEM
Данный параметр устанавливает обязательный предмет, без него команды не будут выполняться. Формат такой же, как у ID. При выполнении команду у игрока будет удаляться указанный предмет из инвентаря.

Пример (30x оранжевое стекло):

REQUIRED-ITEM: ‘stained glass:1, 30’

KEEP-OPEN
Этот параметр устанавливает, должно ли меню закрываться после нажатия на элемент (по умолчанию false). Значение может быть как true, так и false.

PERMISSION
Данный параметр устанавливает, требуется ли определенное разрешение для щелчка по элементу и выполнения команд. Разрешение может быть выбрано произвольно. Вы можете отрицать это, поставить минус (-) перед разрешением, чтобы потребовать от пользователя не иметь этого разрешения (например: ‘-my.custom.permission’)

VIEW-PERMISSION
Точно такое же, как параметр выше, но пользователь без этого разрешения просто не сможет увидеть элемент. Можно отрицать (игроку нужно не иметь разрешения my.custom.permission): ‘-my.custom.permission’.

PERMISSION-MESSAGE
Данный параметр связан также с разрешением, он изменяет сообщение, когда пользователь нажимает на элемент не имея соответствующего разрешения (стандартное сообщение «no permission» настраивается в config.yml).

PERMISSION-MESSAGE: ‘&cYou must be VIP to use this item!’

3. Действия при нажатии

В данном разделе будут описаны возможные действия при нажатии на элемент меню. Ничего более.

Открытие других меню
Если команда открывает другое меню (меню из из другого плагина), установите KEEP-OPEN: true.

Переменные
Переменные могут использоваться в COMMAND, LORE и NAME.

(будет заменен именем игрока, который нажал на элемент).
(название мира, в котором находится игрок).
(онлайн на сервере).
(количество слотов сервера).
(сумма денег, должен быть установлен Vault).

Обычные команды
Команды не должны быть написаны с «/» перед ними, кроме некоторых команд WorldEdit (например //wand). Пример выполнения команды /spawn игроком при нажатии на элемент меню.

Выполнение команд через консоль
Будьте осторожны с этим , так как команда будет выполнятся через консоль сервера. Чтобы выполнить команду из консоли сервера, используйте ‘console:’ перед командой.

COMMAND: ‘console: say Hello world!’

Выполнение команд как OP
Будьте осторожны с этой командой . Чтобы выполнить команду как OP, поставьте перед командой ‘op:’.

COMMAND: ‘op: say Hello world!’

Выполнение нескольких команд
Разделите несколько команд точкой с запятой «;». Пример заставляет игрока выполнять команды в следующем порядке: / spawn, затем / me.

COMMAND: ‘spawn; me I have been teleported to the spawn!’

Вывести сообщение игроку
Как и в предыдущих примерах, поместите ‘tell:’ перед строкой, чтобы отправить ее игроку. Вы можете использовать цветовые коды и символы.
В примере сообщение будет красным.

COMMAND: ‘tell: &cHello man!’

Сделать объявление
Работает также как и ‘tell:’, только сообщение увидят все игроки.

COMMAND: ‘broadcast: is awesome!’

Воспроизведение звуков
Звук состоит из трех параметров (обязательный только первый), разделенных запятыми. Формат выглядит так: ‘ , [pitch], [volume]’
Список звуков: тут.

COMMAND: ‘sound: ghast scream, 2.0, 0.5’

Выдача предметов
Базовая команда для выдачи предметов. Вы можете изменить только значение данных и количество предметов, для более сложных вещей используйте команду vanilla. В приведенном ниже примере игроку дается 10 черных шерсти (значение data — 15).

COMMAND: ‘give: wool:15, 10’

Выдача денег
COMMAND: ‘give-money: 100.0’
Данная команда выдаст деньги игроку ( 100$ ), который нажал на элемент. Для работы нужен плагин Vault (подробнее об экономике в разделе №4) .

COMMAND: ‘give-money: 100.0’

Открытие других меню
Для открытие другого меню из ChestCommands используйте — ‘open: ’, где — это имя файла меню. Меню будет открыто, если оно существует и правильно настроено, в противном случае отобразится сообщение об ошибке. Игрокам нужно правильное разрешение, чтобы открыть это меню (подробнее об разрешениях в разделе №6) .

COMMAND: ‘open: example.yml’

Команды BungeeCord
Вы можете использовать ‘server: ’. Пр нажатии пользователь попытается подключиться к указному серверу. Если вы не знаете, что такое BungeeCord, игнорируйте этот тип команды.

COMMAND: ‘server: hub’

Сообщение Dragon Bar (с помощью плагина BarAPI)
Чтобы отправить сообщение для панели вверху (также называемая boss bar), у вас должен быть установлен плагин BarAPI. Формат ‘dragon-bar: | ’. В приведенном ниже примере панель будет отображаться в течение 10 секунд для игрока, который щелкнет по элементу, отображая его ник.

COMMAND: ‘dragon-bar: 10 | &aHello, !’

4. Настройка экономики (игровой валюты)

Требования

Vault (необходимо обновить до последней версии!)
Совместимый плагин на экономику (iConomy, BOSEconomy и т.п.)

Настройка

Поместите Vault и совместимый плагин для экономики в папку ваших плагинов (если они еще не установлены).
Теперь вы можете начать пользоваться параметром PRICE и действием give-money: .

5. Таблички с меню

Создание таблички с меню

  1. Разместите табличку.
  2. В первой строке напишите [Menu] (вам нужно разрешение «chestcommands.sign»)
  3. Во второй строке напишите имя файла меню (можно писать без «.yml»).

Проверка

Если меню с табличкой правильно создано, первая строка табличке станет СИНЕЙ .
В случае ошибки первая строка станет КРАСНОЙ , а в чате появится сообщение об ошибке.

5. Специальные символы

Список символов, которые можно использовать по умолчанию, например в командах «tell», в имени и в описании элемента:

Чтобы добавить новые символы, откройте файл placeholder.yml и добавьте новую строку в следующем формате: textToReplace: replaceString

[special]: \u2726 Special Item \u2726

Строка выше будет выглядеть так — ✹ Special Item ✹. Вы можете использовать любой символ Unicode.

6. Разрешения (permissions)

Список разрешений
Команда Разрешение (permission) Описание
/chestcommands или /cc Основная команда. Информация о версии, разработчике и помощи.
/cc help chestcommands.command.help Список команд.
/cc reload chestcommands.command.reload Перезагрузка плагина.
/cc open chestcommands.command.open Открывает любое меню напрямую.
Вам также нужны разрешения для открытия меню.
/cc open [ник] chestcommands.command.open.others Открывает меню для указного игрока.
Разрешения при открытии игнорируются.
/cc list chestcommands.command.list Список правильно загруженных меню.
chestcommands.update Получать уведомления об обновлениях при подключении.
chestcommands.open.filename.yml Разрешение на открытие меню (filename.yml — название меню)
chestcommands.economy.bypass Игнорировать установленную цену.
chestcommands.sign Требуется для создания табличек с меню.

7. Покупка / продажа (создание мини-магазина)

Обязательно прочитайте 3 и 4 пункты!

Выдать деньги игроку — ‘COMMAND: ‘givemoney: ’ .
Забрать деньги у игрока — ‘PRICE: ’ .

Выдать предмет — ‘COMMAND: ‘give: [:data],[amount]’
Забрать предмет — ‘REQUIRED-ITEM: [:data],[amount]’ .

Всё это нужно добавлять в параметры элемента меню.

Покупка предмета

С помощью примера ниже игрок сможет купить 1 алмаз за 100$.
COMMAND: ‘give: 264’
PRICE: 100
NAME: ‘Buy a diamond’
ID: 264
POSITION-X: 1
POSITION-Y: 1

Продажа предмета

С помощью примера ниже продать 64 блоков земли и получить за это 10$.

COMMAND: ‘givemoney: 10’
REQUIRED-ITEM: 3, 64
NAME: ‘Sell dirt’
ID: 3
POSITION-X: 1
POSITION-Y: 1

Также можете посмотреть мое видео:

Ну вот и всё. На этом статья заканчивается. Если у вас будут какие либо вопросы можете писать в группу ВК.

Источник

Читайте также:  Не работает курсор сенсорной панели
Оцените статью