Перейти к содержимому

Установка

Десять минут: один SQL-файл, одно разрешение и три строки config.lua, которые стоит проверить.


Что нужноЗачем
ESX, QBCore или QBoxДеньги, работы, предметы и уведомления берутся из фреймворка
oxmysqlВсё, что помнят магазины, хранится в вашей базе данных
ox_target или qb-targetНеобязательно. По умолчанию используется ox_target; без обоих игрокам показывается подсказка и они нажимают E
screenshot-basicНеобязательно, для скриншотов в логах Discord. Нужен, если оставить Config.Screenshot включённым

Скачайте mic_shopcreator из ваших Cfx.re granted assets и положите папку в ресурсы, например resources/[mic]/mic_shopcreator.


2. Запустите его после того, на что он опирается

Заголовок раздела «2. Запустите его после того, на что он опирается»

В server.cfg строка ensure mic_shopcreator должна стоять ниже oxmysql, вашего фреймворка (es_extended, qb-core или qbx_core), вашего инвентаря, вашего ресурса target и screenshot-basic.

Всё сработало, если ресурс запускается без красных строк и без сообщения Locale file not found.


Импортируйте mic_shopcreator.sql один раз. Он создаёт девять таблиц:

ТаблицаЧто в ней хранится
mic_shopcreatorМагазины с их настройками блипа, работ, ограбления, владения и webhook
mic_shopcreator_locationsГде стоит каждый продавец, его модель, одежда и когда его в последний раз грабили
mic_shopcreator_productsТовары магазинов, которые ведёт сервер
mic_shopcreator_owner_productsТовары магазинов игроков, с их запасами
mic_shopcreator_jobsКакие работы и ранги могут пользоваться магазином
mic_shopcreator_rewardsЧто выплачивается за ограбление
mic_shopcreator_ownersКто чем владеет
mic_shopcreator_employeesКто где работает, его комиссия и личный сейф
mic_shopcreator_vaultsБаланс чистых и чёрных денег каждого магазина игрока

Обновляетесь со старой версии? update.sql вам не нужен: при каждом запуске ресурс проверяет столбцы, добавленные с тех пор (clothes в locations, min_amount и max_amount в rewards), и добавляет их, если их нет. Когда это происходит, консоль один раз выводит Added clothes column to mic_shopcreator_locations table..


Собственных нет. Магазин продаёт предметы, которые уже существуют в вашем инвентаре, — их названия вы вводите при добавлении товара. Картинки товаров берутся из папки с картинками вашего инвентаря, см. шаг 5.


Откройте config.lua и проверьте:

ПараметрЗначение
Config.Framework'esx' (по умолчанию) или 'qbcore'. Автоматически не определяется. На QBox используйте 'qbcore' — QBox запускает ресурсы QBCore через слой совместимости
Config.Interaction'ox_target' (по умолчанию), 'qb-target' или 'default' (подсказка и E)
Config.InventoryImagePathГде ваш инвентарь хранит картинки предметов. По умолчанию указывает на nui://ox_inventory/web/images/
Config.IdentifierTypeКак распознаются владельцы и сотрудники. По умолчанию 'discord'; см. ниже

Config.IdentifierType определяет, что попадает в список владельцев и что хранится в таблице сотрудников:

ЗначениеИгроков распознают поИспользуйте, когда
'discord'Discord ID — число без discord:Все подключаются с привязанным Discord
'license'Лицензия Rockstar, целиком license:…Вы не требуете Discord
'esx'Собственный идентификатор ESX с префиксом персонажаESX с мультиперсонажами — у каждого персонажа свои владения
'citizenid'Citizen ID из QBCoreQBCore или QBox — у каждого персонажа свои владения

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


Панель закрыта ACE-разрешением mic_shop.open (а не mic_shopcreator.open). Выдайте его в server.cfg строкой add_ace — одному человеку, например add_ace identifier.discord:YOUR_DISCORD_ID mic_shop.open allow, или группе, например add_ace group.admin mic_shop.open allow.

Всё сработало, если /shopcreator открывает Shop Creator. Без разрешения вы получите уведомление об отсутствии прав.


  1. Введите /shopcreator, создайте магазин и дайте ему название.
  2. Добавьте локацию. Предпросмотр продавца следует за вашим взглядом: колесо мыши поворачивает его, ↑ / ↓ поднимают и опускают, E ставит, X отменяет.
  3. Добавьте товар: предмет, существующий в вашем инвентаре, цену, категорию и способ оплаты. Сохраните.

Всё сработало, если продавец стоит там, где вы его поставили, разговор с ним открывает магазин с вашим товаром и его картинкой, а покупка забирает деньги и выдаёт предмет.


  • Config.IdentifierType менять потом нельзя. Решите это сейчас; по нему хранятся владельцы и сотрудники.
  • mic_shop.open только у администраторов. С ним можно создавать, изменять и удалять все магазины.
  • Оставляйте Config.Screenshot включённым, только если screenshot-basic запущен. Иначе логи не будут отправляться.
  • Кулдауны ограблений задаются для каждого магазина, в минутах — задайте его для каждого магазина, который можно грабить.
  • Купите что-нибудь на обычном персонаже в каждом магазине с ограничением по работе, чтобы проверить заданный вами ранг.