Документація Pulse Phone

Фреймворки

Для Pulse Phone 1.4.28 хв читанняОновлено

3. Покроково для вашого фреймворку

Телефон сам знаходить ваш фреймворк: es_extended, qb-core, qbx_core, ox_core, ND_Core, vrp або core від TMC. Config.Framework у config/config.lua потрібен лише тоді, коли запущено кілька фреймворків, або для власного фреймворку.

Ваш фреймворк коротко

Фреймворк Як визначається Предмети Банк і готівка Варто знати
ESX Legacy es_extended Pulse сам додає свої предмети в таблицю items ESX (стандартний інвентар). На ox_inventory вставте блок, який виводить перевірка під час запуску Рахунки ESX Рахунки компаній через ваш скрипт організацій
QBCore qb-core Pulse сам додає свої предмети в shared items QBCore (qb-, ps-, lj-inventory) Гроші QBCore Компанією керують ранги з isboss
Qbox qbx_core (його заглушка qb-core вважається Qbox, а не другим фреймворком) Вставте виведений блок для ox_inventory Гроші Qbox Використовує адаптер Qbox, ніколи — QBCore
ox_core ox_core Вставте виведений блок для ox_inventory Рахунок персонажа в ox_core; готівка — це money в ox_inventory Немає прапорця зміни: усі вважаються на зміні
ND Core ND_Core Вставте виведений блок для ox_inventory bank і cash від ND Немає прапорця зміни; немає рахунків компаній
TMC його ресурс core, розпізнається за власним core-об'єктом TMC Кожен предмет має бути в списку предметів TMC: перевірка під час запуску їх виводить Гроші TMC Працює через власний міст, нічого налаштовувати не треба
vRP 2 vrp Див. розділ vRP Гаманець і банк vRP vRP 1 і форки не підтримуються
Standalone нічого з переліченого вище не запущено Не потрібні Власний банк телефона Для тестових серверів або серверів без фреймворку
Власний Config.Framework = 'custom' Через ваш міст Через ваш міст Див. «Сторонній або власний фреймворк»

Примусовий вибір фреймворку

Більшості серверів це ніколи не потрібно. Задавайте фреймворк примусово, коли рядок під час запуску називає не той, або коли встановлено й запущено два ядра фреймворків. Додайте один рядок у server.cfg:

server.cfg
setr phone_framework qb
Значення Фреймворк
esx ESX Legacy (es_extended)
qb QBCore (qb-core)
qbox Qbox (qbx_core)
ox ox_core
nd ND Core (ND_Core)
vrp vRP 2 (vrp)
tmc TMC (core)
standalone Без фреймворку: телефон має власну ідентифікацію та банк
custom Ваш власний міст (див. «Сторонній або власний фреймворк» нижче)
auto Те саме, що й без цього рядка: вирішує Config.Framework
  • Має пріоритет над Config.Framework. Після зміни перезапустіть телефон.
  • Назви ресурсів теж працюють: qbcore, qb-core, qbx_core, es_extended, ox_core. Невідоме слово відхиляється: перевірка під час запуску повідомляє про це, а грошові функції залишаються вимкненими.
  • qb на сервері з qbx_core використовує адаптер Qbox. Qbox також відповідає як QBCore.
  • Якщо примусово заданий фреймворк не запущено, телефони залишаються на екрані «not ready», доки його не запустять. Телефон ніколи сам не перемикається на інший фреймворк.

Мультиперсонажі працюють на кожному фреймворку. Config.IdentityScope = 'character' (за замовчуванням) дає кожному персонажу власний телефон. 'player' дає один телефон на акаунт. Оберіть один раз: зміна на живому сервері залишить усі наявні телефони позаду.

Керування компанією (зміна, персонал, наймання, рахунок компанії в застосунку Services) використовує компанії з Config.Services у config/apps.lua. Якщо назви ваших робіт відрізняються від стандартних (police, ambulance, mechanic, taxi, fire ...), додайте свої до списку job цієї компанії. Щоб самостійно обрати ранги боса, додайте компанії bossGrade = <n>.

ESX Legacy

server.cfg
ensure oxmysql
ensure es_extended
# ... your ESX scripts, inventory, banking ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Предмети: зі стандартним інвентарем ESX нічого робити не потрібно. Телефон додає свої предмети в таблицю items ESX під час запуску, а консоль повідомляє, які саме додано. config/items/esx.sql є на випадок, якщо ви хочете додати їх самі. З іншим інвентарем див. розділ 4.
  • Гроші: банк — це рахунок ESX bank, готівка — рахунок money.
  • Персонаж: телефон прив'язується до identifier гравця ESX, тож esx_multicharacter працює.
  • Бос: компанією керує ранг з назвою boss, якщо ви не задали bossGrade.
  • Рахунки компаній: esx_addonaccount / esx_society або банківський скрипт із розділу 7.

QBCore

server.cfg
ensure oxmysql
ensure qb-core
# ... qb-inventory and your other qb scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Предмети: нічого вставляти не потрібно. Телефон додає потрібні предмети в shared items QBCore під час запуску, а консоль повідомляє, які саме додано. Скопіюйте зображення з config/items/images/ у qb-inventory/html/images/; перевірка під час запуску називає ті, яких бракує.
  • Гроші: bank і cash.
  • Персонаж: citizenid, тож qb-multicharacter працює.
  • Бос: ранги з isboss = true у ваших роботах, якщо ви не задали bossGrade.
  • Рахунки компаній: Renewed-Banking, qb-banking або старіший qb-management.
  • Мультиробота: коли запущено ps-multijob, інші роботи гравця показуються в Services, і одне натискання робить роботу активною.

Qbox

server.cfg
ensure oxmysql
ensure qbx_core
ensure ox_inventory
# ... your other Qbox scripts, in Qbox's own order ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Предмети: Qbox використовує ox_inventory, який не може приймати предмети від іншого скрипту. Запустіть сервер один раз: перевірка під час запуску виведе відсутні записи, готові до вставлення в ox_inventory/data/items.lua (розділ 4). Зображення кладіть у ox_inventory/web/images/.
  • Гроші: bank і cash через qbx_core.
  • Персонаж: citizenid.
  • Бос: ранги з isboss = true, якщо ви не задали bossGrade.
  • Мультиробота: вбудована. Інші роботи гравця показуються в Services.
  • qbx_core також відповідає як qb-core. Це нормально: телефон вважає їх одним фреймворком.

ox_core

server.cfg
ensure oxmysql
ensure ox_core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Предмети: запустіть сервер один раз: перевірка під час запуску виведе відсутні записи, готові до вставлення в ox_inventory/data/items.lua (розділ 4). Зображення кладіть у ox_inventory/web/images/.
  • Гроші: банк — це рахунок персонажа в ox_core. Готівка — предмет money в ox_inventory.
  • Персонаж: charId.
  • Роботи: групи ox_core не мають прапорця зміни, тож телефон відстежує зміну сам. Керування компанією (персонал, наймання, ранги) і valet на ox_core недоступні.

ND Core

server.cfg
ensure oxmysql
ensure ox_lib
ensure ND_Core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Визначається автоматично, коли запущено ND_Core. Щоб задати примусово: setr phone_framework nd.
  • Предмети: ND використовує ox_inventory. Запустіть сервер один раз: перевірка під час запуску виведе відсутні записи, готові до вставлення в ox_inventory/data/items.lua (розділ 4).
  • Гроші: bank персонажа в ND і cash від ND (ox_inventory синхронізує предмет money).
  • Персонаж: id персонажа в ND. Показаний номер телефона — власний номер ND, якщо він у персонажа є.
  • Роботи: робота й ранг персонажа в ND. ND не має прапорця зміни, тож усі вважаються на зміні. Керування компанією, рахунки компаній і valet на ND Core недоступні.
  • Гараж: власні авто беруться з таблиці ND nd_vehicles.

vRP

Підтримується лише vRP 2 (не vRP 1 і не форки спільноти). Телефон завантажує в vRP невелике розширення з bridge/frameworks/vrp/. Нічого копіювати не потрібно.

server.cfg
ensure oxmysql
ensure vrp
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Предмети: файлу предметів для vRP немає, і vRP 2 не може зробити предмети придатними до використання для телефона. Залиште Config.Item.required = false (за замовчуванням) і задайте Config.Store.box = false, щоб магазин видавав телефони напряму. Гравці користуються предметами для заряджання через /phonepack і /phonecable; з інвентарем vRP для цього гравець має мати при собі pulse_magpack і pulse_cable, тож додайте обидва предмети до свого списку предметів vRP або задайте Config.Charging.enabled = false.
  • Гроші: банк і гаманець vRP.
  • Персонаж: id персонажа у vRP.
  • Роботи: керування компанією та valet на vRP недоступні. Застосунок Garage залишається порожнім, доки ви не підключите скрипт гаража.

TMC

TMC вбудовано. Телефон сам розпізнає core від TMC: без додаткового ресурсу й без змін у config/config.lua (auto, tmc і custom — усі працюють).

server.cfg
ensure oxmysql
ensure core
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone

Перевірка під час запуску показує Framework: TMC.

  • Предмети: додайте предмети Pulse до списку предметів TMC так само, як будь-який інший предмет. Назви: phone, pulse_magpack, pulse_magpack_max, pulse_cable, pulse_router, pulse_burner, pulse_buds, pulse_ringlight, pulse_wallet (записи є в config/items/tmc.lua), а для коробок магазину — pulse_phone_box плюс по одній на кожне оздоблення (pulse_phone_box_black ...). Назви для показу, вага й описи — у config/items/qb-core.lua, а зображення — у config/items/images/. Предмет, якого немає в списку, відхиляється, і гравець бачить "inventory full": тоді консоль називає цей предмет. Відсутній у списку предмет коробки не зупиняє продаж: магазин видає телефон без коробки й повідомляє про це в консолі. Якщо коробки вам взагалі не потрібні, задайте Config.Store.box = false.
  • Гроші: готівка персонажа та його банк: ресурс TMC banking, якщо він запущений (особистий рахунок персонажа), інакше банківські гроші ядра. Якщо ваші номери рахунків мають інший вигляд, ніж BNK123456, вкажіть поле з номером рахунку в config/config.lua: Config.Providers.tmcBankAccount = 'charinfo.account' (використайте своє поле). Коли банк не вдається прочитати, Wallet показує прочерк, а не вигадану суму.
  • Персонаж: citizen id у TMC.
  • Роботи: робота на зміні (або перша), з її рангом і станом зміни.
  • Мали тимчасовий конектор pulse_tmc? Видаліть ensure pulse_tmc і цю папку. Консоль нагадуватиме, поки він ще запущений.

Standalone (без фреймворку)

server.cfg
ensure oxmysql
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Предмети: не потрібні. Кожен гравець має телефон, Reserve і кабель.
  • Гроші: телефон має власний банк. Новий гравець починає з 5000 (startingBalance у config/apps.lua).
  • Персонаж: ліцензія Rockstar гравця.
  • Роботи, авто й житло: телефон веде власні. Заповніть їх тестовими командами з розділу 9.

Сторонній або власний фреймворк

  1. Задайте Config.Framework = 'custom' у config/config.lua.
  2. Передайте телефону таблицу мосту за зразком optional-developer-kit/custom_framework_bridge.lua: або як Config.Providers.custom у config/config.lua, або з власного ресурсу через exports.phone:RegisterFrameworkBridge(MyBridge).
  3. Обов'язкова лише GetCharacterId. Якщо ви не додасте функцію імені, роботи, ліцензії чи списку транспорту/житла, телефон поводиться так, ніби на вашому сервері таких даних немає. Якщо не додасте функцію грошей чи предметів, цю дію буде відхилено: телефон ніколи не платить із власного банку. Застосунок Bank з'являється, лише коли ваш міст має GetBankBalance.
  4. Якщо ваше ядро перезапускається, поки телефон працює, викличте exports.phone:FrameworkRestarted(), щойно ядро буде готове.

bridge/frameworks/custom.lua показує, як телефон використовує вашу таблицю. Щоб підключити інші власні скрипти (банківський чи гаражний), див. optional-developer-kit/custom_provider_template.lua та Exports. Обидва шаблони постачаються в необов'язковому наборі для розробника, zerodevscripts.com/downloads/PulsePhone-developer-kit.zip, а не в папці телефона.

Перекладено з англійської. Якщо щось тут розходиться з англійською сторінкою, правильною є англійська сторінка. English