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

С чем это работает

Всё перечисленное ниже определяется автоматически. Нет настройки «какой у меня фреймворк» и нет списка названий ресурсов, который надо заполнять: телефон смотрит, что запущено, и спрашивает об этом.

Тип ресурса, который не запущен, — это не сломанный телефон: приложение, которому он был нужен, сообщает об этом или просто отсутствует. Маркетплейс работает без гаража; Wallet работает без ресурса выставления счетов.


ESXLegacy и 1.x. Номер — это колонка phone_number, которую этот телефон добавляет в users
QBCoreНомер — тот, что QBCore выдаёт каждому персонажу: charinfo.phone в players
QBoxТот же charinfo.phone. Собственная таблица Qbox с названием users — это таблица его аккаунтов, её не трогают
fmLibДля всего остального или вашего собственного

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

11 из них, а RequireItem = false покрывает остальные:

ox_inventory · qb-inventory · qs-inventory · core_inventory · ps-inventory · tgiann-inventory · jpr-inventory · codem-inventory · origen_inventory · jaksam_inventory · тот, что поставляется с ESX

Метаданные по каждому предмету — то, что делает телефон именно этим телефоном в режиме предметов, — работают на ox, qs, qb, core, jaksam и origen. У chezza, ps и tgiann нет места, где их хранить, а в штатном инвентаре ESX их нет вообще, поэтому в режиме предметов там происходит откат к одному телефону на персонажа.

pma-voice · mumble-voip · saltychat · tokovoip_script

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

ЧтоОпределяется
Счетаesx_billing, okokBilling или собственные телефона
Жильёesx_property, ps-housing, qb-houses, loaf_housing
Гаражиesx_garage, qb-garages, cd_garage, okokGarage, jg-advancedgarages
Societyesx_society, qb-management, qb-banking
Лицензииesx_license, qb-core, qbx_core
Погодаcd_easytime, qb-weathersync, vSync или сама игра
Скриншотыscreenshot-basic
ЗагрузкиFivemanage или Discord webhook

Единственное, на что нет двух одинаковых ответов на разных серверах, поэтому телефон спрашивает четырьмя способами и берёт первый ответ: фреймворк (ESX dead, QB isdead / inlaststand), затем state bag’и, затем экспорты, названные вами в Config.Restrict.Death.Exports, затем сама игра.

Это уже покрывает ESX, QBCore, QBox и всё, что пишет обычные bag’и. Если ваш скрипт скорой помощи не делает ничего из этого:

Config.Restrict.Death.Exports = {
{ 'wasabi_ambulance', 'isPlayerDead' },
}

Он вызывается, только если этот ресурс запущен, а имя, которое ничего не отвечает, пропускается и не ломает телефон — поэтому неверная догадка ничего не стоит.

oxmysqlВсё, что запоминает телефон
Сборка FiveM не старше пары последних летБраузерная половина использует встроенный Node сервера

Никакого npm, никакого шага сборки, никакой второй программы и никакого SQL-файла для импорта — таблицы создаются сами при первом запуске ресурса.