Merchant Profiles

Профили Торговцев

Модуль Merchants позволяет создавать неограниченное количество меню торговцев и открывать их используя команду (доступна для операторов и консоли). Меню торговца представляет собой именованный набор сделок по покупке и продаже предметов (профиль торговца). В качестве валюты может использоваться любая виртуальная валюта или предметы.

Создание Профиля

версия 0.10

Создание профиля происходит в меню управления, которое открывается командой «/oxygenop merchants -management» (только для операторов). При создании профиля вы должны указать его название - не более 24 символов, можно использовать пробелы. Название не обязательно должно быть уникальным. После создания профиля любые изменения должны быть подтверждены использованием кнопки «Сохранить» перед закрытием меню или предпросмотром меню торговца. Вы можете изменить название, валюту и добавить сделки используя контекстные опции, доступные при нажатии ПКМ по названию профиля в списке.

При изменении валюты на предмет и добавлении новой сделки необходимые предметы должны быть в вашем инвентаре. При создании сделки вы обязаны указать предмет, его стоимость покупки (покупатель - игрок) и стоимость скупки (покупатель - торговец).

Возможная конфигурация сделки:

  • Только покупка (покупает игрок)

Укажите количество предмета, стоимость покупки (второе поле) и установите стоимость продажи (третье поле) равную 0.

  • Только скупка (покупает торговец).

Укажите количество предмета, стоимость покупки (второе поле) равной 0 и установите стоимость продажи (третье поле).

  • Покупка и скупка

Укажите количество предмета, стоимость покупки (второе поле) и установите стоимость продажи (третье поле).

версия 0.11

Профили торговцев хранятся в папке «.minecraft/config/oxygen/data/server/merchants/» в отдельных JSON файлах. Создание и настройка профилей возможна вручную или с помощью команд, доступных операторам.

Пример файла:

После создания нового профиля или редактирования существующего необходимо сохранить изменения командой «/oxygenop merchants -profile -save {profile id}».

Создание Профиля

  • «/oxygenop merchants -profile -create {profile id} {file name} {display name}»

Аргументы:

«profile id» Число типа java long (0 - 9,223,372,036,854,775,807). Идентификатор должен быть уникальным.

«file name» Имя файла (в одно слово), в котором будут храниться данный профиля. Файл будет создан только при сохранении профиля командой «/oxygenop merchants -profile -save {profile id}».

«display name» Название профиля торговца, отображаемое в меню. Может состоять из нескольких слов (общая длина до 24 символов).

Пример команды: «/oxygenop merchants -profile -create 100 merchant_inn_keeper Inn Keeper».

По умолчанию профили используют виртуальную валюту «oxygen coins [index 0]».

Изменение Названия

  • «/oxygenop merchants -profile -set-name {profile id} {display name}»

Аргументы:

«profile id» Идентификатор редактируемого профиля.

«display name» Новое название профиля торговца, может состоять из нескольких слов.

Пример команды: «/oxygenop merchants -profile -set-name 100 Old Inn Keeper».

Изменение Используемой Валюты

  • «/oxygenop merchants -profile -set-currency {profile id}» - установка в качестве валюты предмета в руке

Команду может выполнить только игрок с предметом в руке.

  • «/oxygenop merchants -profile -set-currency {profile id} {currency index}» - установка виртуальной валюты с соответствующим индексом

Аргументы:

«profile id» Идентификатор редактируемого профиля.

«currency index» Индекс виртуальной валюты.

Пример команды: «/oxygenop merchants -profile -set-currency 100 0» - установка виртуальной валюты «coins» в качестве валюты.

Добавление Сделки

  • «/oxygenop merchants -profile -add-offer {profile id} {offer id} {item amount} {buy cost} {selling cost}»

Команду может выполнить только игрок с предметом в руке.

Аргументы:

«profile id» Идентификатор редактируемого профиля.

«offer id» Число типа java long (0 - 9,223,372,036,854,775,807). Идентификаторы сделок должны быть уникальны в пределах одного профиля.

«item amount» Число типа java int (0 - 32,767). Количество предмета, покупаемое/продаваемое за одну операцию.

«buy cost» Число типа java long (0 - 9,223,372,036,854,775,807). Стоимость товара (покупает игрок).

«selling cost» Число типа java long (0 - 9,223,372,036,854,775,807). Стоимость товара (покупает торговец).

Пример команды: «/oxygenop merchants -profile -add-offer 100 10 1 30 0».

Удаление Сделки

  • «/oxygenop merchants -profile -remove-offer {profile id} {offer id}»

Аргументы:

«profile id» Идентификатор редактируемого профиля.

«offer id» Идентификатор удаляемой сделки.

Пример команды: «/oxygenop merchants -profile -remove-offer 100 10».

Сохранение Изменений Профиля

  • «/oxygenop merchants -profile -save {profile id}»

Аргументы:

«profile id» Идентификатор профиля.

Пример команды: «/oxygenop merchants -profile -save 100».

Удаление Профиля

  • «/oxygenop merchants -profile -remove {profile id}»

Файл с данными профиля так же будет удалён. Сохранение изменений после этой операции не требуется.

Аргументы:

«profile id» Идентификатор удаляемого профиля.

Пример команды: «/oxygenop merchants -profile -remove 100».

Открытие Меню Торговца

версия 0.10

Что бы открыть меню торговца (профиль торговца) необходимо использовать команду «/oxygenop merchants -merchant-menu {target} {profile id}». Команда может быть выполнена оператором (permission level 2), консолью или командным блоком.

В качестве цели («target») может быть указан ник игрока или селектор (только игроки, исключая @a).

Для получения идентификатора профиля торговца необходимо использовать контекстную опцию «Вывести Id в Чат» для профиля торговца в меню управления, идентификатор будет добавлен в буффер отправленных сообщений и вы сможете получить его используя кнопку ввода набранного ранее сообщения.

версия 0.11

Что бы открыть меню торговца (профиль торговца) необходимо использовать команду «/oxygenop merchants -open-menu {target} {profile id} {debug flag}». Команда может быть выполнена оператором (permission level 2), консолью или командным блоком.

В качестве цели («target») может быть указан ник игрока или селектор (только игроки, исключая @a).

Идентификатор профиля это неизменяемый идентификатор, заданный при создании профиля.

Используйте флаг отладки (debug flag) «true» для отображения в меню дополнительной информации.