Установка
Пять минут. Никакого SQL и файла предметов для импорта: вам нужны lb-phone, одна строка в config.lua и наркотики в инвентаре, которые приложение сможет продавать.
Перед началом
Заголовок раздела «Перед началом»| Что нужно | Зачем |
|---|---|
| lb-phone | Приложение живёт на нём, и все уведомления проходят через него |
| ESX, QBCore или QBox | Инвентарь, деньги, работы и личность игрока |
| Предметы-наркотики в инвентаре | Приложение продаёт то, что игроки носят с собой; предметы оно не создаёт |
1. Поместите папку в ресурсы
Заголовок раздела «1. Поместите папку в ресурсы»Переместите mic_drugdealer в папку ваших ресурсов, например resources/[mic]/mic_drugdealer.
2. Запустите после lb-phone и вашего фреймворка
Заголовок раздела «2. Запустите после lb-phone и вашего фреймворка»В server.cfg добавьте ensure mic_drugdealer на строке ниже вашего фреймворка и ниже lb-phone.
Приложение дожидается lb-phone и добавляется заново при каждом его перезапуске, так что порядок относительно прощающий, но фреймворк должен быть запущен первым: серверная часть обращается к нему в момент запуска.
3. База данных — делать ничего не нужно
Заголовок раздела «3. База данных — делать ничего не нужно»Уровни и количество продаж сохраняются в player_data.json в папке ресурса. Ресурс создаёт его, если файла нет. Ваш сервер должен иметь право записи в эту папку.
4. Укажите ваш фреймворк
Заголовок раздела «4. Укажите ваш фреймворк»Он не определяется автоматически. Откройте config.lua и задайте Config.Framework:
| Ваш фреймворк | Значение |
|---|---|
| ESX | "ESX" |
| QBCore | "QB" |
| QBox | "QB" |
Регистр важен. Если у ресурса вашего фреймворка нестандартное название, измените Config.esxResourceName или Config.qbResourceName соответственно; в остальных случаях не трогайте их.
На QBox используйте "QB" и оставьте Config.qbResourceName равным "qb-core": QBox запускает ресурсы QBCore через слой совместимости, а qbx_core предоставляет qb-core.
5. Предметы
Заголовок раздела «5. Предметы»Ресурс не поставляет определения предметов: он продаёт предметы, которые ваш инвентарь уже знает. Поставляемый конфиг ожидает следующие названия:
| Предмет | Продаётся как | Зоны | Уровень |
|---|---|---|---|
maria | Трава | Грув | 1 |
coca | Кокаин | Пирс, Палето | 3 |
lsd | ЛСД | Грув, Пирс, Вайнвуд | 2 |
meta | Мет | Сэнди, Палето | 4 |
mush | Грибы | Грув, Сэнди | 2 |
opium | Опиум | Палето | 1 |
crack | Крэк | Грув, Сэнди | 3 |
heroin | Героин | Сэнди, Палето | 5 |
xtc | Экстази | Пирс, Вайнвуд | 2 |
oxy | Оксиконтин | Вайнвуд, Сэнди | 3 |
lean | Лин | Грув, Пирс | 1 |
hash | Гашиш | Грув, Вайнвуд | 2 |
Скорее всего, ваши наркотики называются иначе. Измените поле item каждой записи в Config.drugs под ваш инвентарь, а не создавайте новые предметы — см. Настройка.
Предметы-деньги тоже важны:
- ESX при
Config.MoneyAsItem = trueвыплачиваетblack_money(илиConfig.MoneyItem, когда чёрные деньги отключены) предметом — подходит для ox_inventory. - QBCore выплачивает чёрные деньги предметом
blackmoney. Убедитесь, что такой предмет существует, или отключитеConfig.BlackMoney.
Картинки в ui/img/ — это собственные иконки наркотиков приложения. Это обычные PNG, поэтому вы можете скопировать их в папку изображений вашего инвентаря, если хотите такой же вид и там.
6. Первый тест
Заголовок раздела «6. Первый тест»- Установите
Config.MinimumPolice = 0на время теста — поставляемое значение равно1, а без полиции в сети никто не покупает. - Зайдите с работой, которой нет в
Config.BlockedAppJobs(police, sheriff, ambulance и mechanic там есть). - Откройте lb-phone, найдите Drug Dealer в App Store и установите его.
- Выдайте себе несколько
maria, откройте приложение, нажмите DRUGS, затем Weed, затем SELL.
Всё сработало, если на карте появился красный маршрут, а в приложении — обратный отсчёт. Приезжайте, подойдите к маркеру двери и нажмите E: игрок стучит, выходит покупатель, и телефон сообщает, что и за сколько вы продали. PROFILE теперь показывает одну продажу.
Перед открытием города
Заголовок раздела «Перед открытием города»- Верните
Config.MinimumPoliceк значению, которое нужно вашему городу. - Очистите тестовый прогресс.
player_data.jsonпоставляется с примерами записей и сохраняет ваши тестовые. Удалите файл; ресурс создаст пустой при следующем запуске. - Сопоставьте каждое название
itemвConfig.drugsс вашим инвентарём. Наркотик, который никто не может носить, — это кнопка, которая всегда говорит только «You don’t have enough». - Проверьте предмет-деньги для вашего фреймворка, см. выше.
- Проверьте, что
Config.BlockedAppJobsиConfig.PoliceJobsиспользуют названия ваших работ.