Documentation Pulse Phone

Frameworks

Pour Pulse Phone 1.4.28 min de lectureMis à jour le

3. Pas à pas pour votre framework

Le téléphone trouve votre framework tout seul : es_extended, qb-core, qbx_core, ox_core, ND_Core, vrp ou le core de TMC. Vous n'avez besoin de Config.Framework dans config/config.lua que si plusieurs tournent en même temps, ou pour un framework personnalisé.

Votre framework en un coup d'œil

Framework Détecté via Items Banque et liquide Bon à savoir
ESX Legacy es_extended Pulse ajoute lui-même ses items à la table items d'ESX (inventaire par défaut). Sur ox_inventory, collez le bloc affiché par la vérification au démarrage Comptes ESX Comptes d'entreprise via votre script de société
QBCore qb-core Pulse ajoute lui-même ses items aux items partagés de QBCore (qb-, ps-, lj-inventory) Argent QBCore Les grades isboss dirigent l'entreprise
Qbox qbx_core (sa doublure qb-core compte comme Qbox, pas comme un second framework) Collez le bloc ox_inventory affiché Argent Qbox Utilise l'adaptateur Qbox, jamais celui de QBCore
ox_core ox_core Collez le bloc ox_inventory affiché Le compte ox_core du personnage ; le liquide est le money d'ox_inventory Pas d'indicateur de service : tout le monde compte comme en service
ND Core ND_Core Collez le bloc ox_inventory affiché bank et cash de ND Pas d'indicateur de service ; pas de comptes d'entreprise
TMC sa ressource core, reconnue grâce à l'objet core propre à TMC Chaque item doit figurer dans la liste d'items de TMC : la vérification au démarrage les affiche Argent TMC Passe par le bridge personnalisé, rien à configurer
vRP 2 vrp Voir la section vRP Portefeuille et banque vRP vRP 1 et ses forks ne sont pas pris en charge
Standalone aucun des frameworks ci-dessus démarré Aucun nécessaire La banque propre au téléphone Pour les serveurs de test ou les serveurs sans framework
Personnalisé Config.Framework = 'custom' Via votre bridge Via votre bridge Voir « Framework personnalisé ou maison »

Forcer le framework

La plupart des serveurs n'en ont jamais besoin. Forcez le framework quand la ligne de démarrage nomme le mauvais, ou quand deux cores de framework sont installés et démarrés. Ajoutez une ligne à server.cfg :

server.cfg
setr phone_framework qb
Valeur Framework
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 Pas de framework : le téléphone gère sa propre identité et sa propre banque
custom Votre propre bridge (voir « Framework personnalisé ou maison » ci-dessous)
auto Comme si la ligne était absente : Config.Framework décide
  • Elle prime sur Config.Framework. Redémarrez le téléphone après l'avoir modifiée.
  • Les noms de ressources fonctionnent aussi : qbcore, qb-core, qbx_core, es_extended, ox_core. Un mot inconnu est refusé : la vérification au démarrage l'indique et les fonctionnalités liées à l'argent restent désactivées.
  • qb sur un serveur qui fait tourner qbx_core utilise l'adaptateur Qbox. Qbox répond aussi en tant que QBCore.
  • Si le framework que vous forcez n'est pas démarré, les téléphones restent sur leur écran « pas prêt » jusqu'à ce qu'il le soit. Le téléphone ne passe jamais de lui-même à un autre framework.

Le multipersonnage fonctionne sur tous les frameworks. Config.IdentityScope = 'character' (par défaut) donne à chaque personnage son propre téléphone. 'player' donne un téléphone par compte. Choisissez une fois pour toutes : changer ce réglage sur un serveur en production laisse tous les téléphones existants de côté.

La gestion d'entreprise (service, personnel, recrutement, compte de l'entreprise dans l'app Services) utilise les entreprises de Config.Services dans config/apps.lua. Si les noms de vos métiers diffèrent de ceux par défaut (police, ambulance, mechanic, taxi, fire ...), ajoutez les vôtres à la liste job de l'entreprise concernée. Pour choisir vous-même les grades de patron, ajoutez bossGrade = <n> à l'entreprise.

ESX Legacy

server.cfg
ensure oxmysql
ensure es_extended
# ... your ESX scripts, inventory, banking ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Items : avec l'inventaire ESX par défaut, il n'y a rien à faire. Le téléphone ajoute ses items à la table items d'ESX au démarrage, et la console indique lesquels il a ajoutés. config/items/esx.sql est là si vous préférez les ajouter vous-même. Avec un autre inventaire, voir la section 4.
  • Argent : la banque est le compte ESX bank, le liquide est le compte money.
  • Personnage : le téléphone suit l'identifier du joueur ESX, donc esx_multicharacter fonctionne.
  • Patron : le grade nommé boss gère l'entreprise, sauf si vous définissez bossGrade.
  • Comptes d'entreprise : esx_addonaccount / esx_society, ou un script bancaire de la section 7.

QBCore

server.cfg
ensure oxmysql
ensure qb-core
# ... qb-inventory and your other qb scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Items : rien à coller. Le téléphone ajoute les items dont il a besoin aux items partagés de QBCore au démarrage, et la console indique lesquels il a ajoutés. Copiez les images de config/items/images/ vers qb-inventory/html/images/ ; la vérification au démarrage nomme celles qui manquent.
  • Argent : bank et cash.
  • Personnage : le citizenid, donc qb-multicharacter fonctionne.
  • Patron : les grades avec isboss = true dans vos métiers, sauf si vous définissez bossGrade.
  • Comptes d'entreprise : Renewed-Banking, qb-banking, ou l'ancien qb-management.
  • Multi-métier : avec ps-multijob démarré, les autres métiers du joueur apparaissent dans Services et un seul geste rend un métier actif.

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
  • Items : Qbox utilise ox_inventory, qui ne peut pas recevoir d'items d'un autre script. Démarrez le serveur une fois : la vérification au démarrage affiche les entrées manquantes, prêtes à coller dans ox_inventory/data/items.lua (section 4). Les images vont dans ox_inventory/web/images/.
  • Argent : bank et cash, via qbx_core.
  • Personnage : le citizenid.
  • Patron : les grades avec isboss = true, sauf si vous définissez bossGrade.
  • Multi-métier : intégré. Les autres métiers d'un joueur apparaissent dans Services.
  • qbx_core répond aussi en tant que qb-core. C'est normal : le téléphone traite les deux comme un seul framework.

ox_core

server.cfg
ensure oxmysql
ensure ox_core
ensure ox_inventory
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Items : démarrez le serveur une fois : la vérification au démarrage affiche les entrées manquantes, prêtes à coller dans ox_inventory/data/items.lua (section 4). Les images vont dans ox_inventory/web/images/.
  • Argent : la banque est le compte ox_core du personnage. Le liquide est l'item money d'ox_inventory.
  • Personnage : le charId.
  • Métiers : les groupes ox_core n'ont pas d'indicateur de service, donc le téléphone gère lui-même le service. La gestion d'entreprise (personnel, recrutement, grades) et le voiturier ne sont pas disponibles sur 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
  • Détecté automatiquement quand ND_Core est démarré. Pour le forcer : setr phone_framework nd.
  • Items : ND utilise ox_inventory. Démarrez le serveur une fois : la vérification au démarrage affiche les entrées manquantes, prêtes à coller dans ox_inventory/data/items.lua (section 4).
  • Argent : la bank ND du personnage, et le cash ND (ox_inventory garde l'item money synchronisé).
  • Personnage : l'identifiant de personnage ND. Le numéro de téléphone affiché est celui de ND quand le personnage en a un.
  • Métiers : le métier et le rang ND du personnage. ND n'a pas d'indicateur de service, donc tout le monde compte comme en service. La gestion d'entreprise, les comptes d'entreprise et le voiturier ne sont pas disponibles sur ND Core.
  • Garage : les voitures possédées viennent de la table nd_vehicles de ND.

vRP

Seul vRP 2 est pris en charge (ni vRP 1 ni les forks de la communauté). Le téléphone charge une petite extension dans vRP depuis bridge/frameworks/vrp/. Rien à copier.

server.cfg
ensure oxmysql
ensure vrp
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Items : il n'y a pas de fichier d'items pour vRP, et vRP 2 ne peut pas rendre des items utilisables pour le téléphone. Gardez Config.Item.required = false (par défaut), et définissez Config.Store.box = false pour que la boutique remette directement les téléphones. Les joueurs utilisent les items de recharge avec /phonepack et /phonecable ; avec un inventaire vRP, le joueur doit avoir sur lui pulse_magpack et pulse_cable : ajoutez donc ces deux items à votre liste d'items vRP, ou définissez Config.Charging.enabled = false.
  • Argent : la banque et le portefeuille de vRP.
  • Personnage : l'identifiant de personnage vRP.
  • Métiers : la gestion d'entreprise et le voiturier ne sont pas disponibles sur vRP. L'app Garage reste vide tant que vous ne connectez pas un script de garage.

TMC

TMC est intégré. Le téléphone reconnaît tout seul le core de TMC : aucune ressource supplémentaire, et aucune modification de config/config.lua (auto, tmc et custom fonctionnent tous).

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

La vérification au démarrage affiche Framework: TMC.

  • Items : ajoutez les items Pulse à la liste d'items de TMC comme vous ajoutez n'importe quel item. Les noms sont phone, pulse_magpack, pulse_magpack_max, pulse_cable, pulse_router, pulse_burner, pulse_buds, pulse_ringlight, pulse_wallet (config/items/tmc.lua contient les entrées), et pour les boîtes de la boutique pulse_phone_box plus une par finition (pulse_phone_box_black ...). Les libellés, poids et descriptions sont dans config/items/qb-core.lua, et les images dans config/items/images/. Un item absent de la liste est refusé, et le joueur voit « inventaire plein » : la console nomme alors l'item. Un item de boîte absent de la liste n'empêche pas la vente : la boutique remet ce téléphone sans la boîte et l'indique dans la console. Si vous ne voulez pas du tout des boîtes, définissez Config.Store.box = false.
  • Argent : le liquide du personnage, et sa banque : la ressource banking de TMC quand elle tourne (son propre compte personnel), sinon l'argent en banque du core. Si vos numéros de compte n'ont pas la forme BNK123456, indiquez le champ qui contient le numéro de compte dans config/config.lua : Config.Providers.tmcBankAccount = 'charinfo.account' (utilisez votre propre champ). Wallet affiche un tiret, jamais un montant inventé, quand la banque ne peut pas être lue.
  • Personnage : le citizen id de TMC.
  • Métiers : le métier en service (ou le premier), avec son grade et son état de service.
  • Vous aviez le connecteur temporaire pulse_tmc ? Retirez ensure pulse_tmc et supprimez ce dossier. La console vous le rappelle tant qu'il tourne encore.

Standalone (sans framework)

server.cfg
ensure oxmysql
ensure pma-voice
ensure screenshot-basic
ensure phone
  • Items : aucun nécessaire. Chaque joueur a un téléphone, une Reserve et un câble.
  • Argent : le téléphone gère sa propre banque. Un nouveau joueur commence avec 5000 (startingBalance dans config/apps.lua).
  • Personnage : la licence Rockstar du joueur.
  • Métiers, voitures et logements : le téléphone gère les siens. Remplissez-les avec les commandes de test de la section 9.

Framework personnalisé ou maison

  1. Définissez Config.Framework = 'custom' dans config/config.lua.
  2. Donnez au téléphone une table de bridge sur le modèle de optional-developer-kit/custom_framework_bridge.lua : soit en tant que Config.Providers.custom dans config/config.lua, soit depuis votre propre ressource avec exports.phone:RegisterFrameworkBridge(MyBridge).
  3. Seule GetCharacterId est obligatoire. Si vous omettez une fonction de nom, de métier, de licence ou de liste de véhicules/logements, le téléphone se comporte comme si votre serveur n'avait pas ces données. Si vous omettez une fonction d'argent ou d'item, cette action est refusée : le téléphone ne paie jamais depuis une banque à lui. L'app Bank n'apparaît que si votre bridge a GetBankBalance.
  4. Si votre core redémarre pendant que le téléphone continue de tourner, appelez exports.phone:FrameworkRestarted() une fois le core prêt.

bridge/frameworks/custom.lua montre comment le téléphone utilise votre table. Pour connecter d'autres scripts maison (un script bancaire ou de garage), voir optional-developer-kit/custom_provider_template.lua et Exports. Les deux modèles sont livrés dans le kit développeur facultatif, zerodevscripts.com/downloads/PulsePhone-developer-kit.zip, pas dans le dossier du téléphone.

Traduit de l'anglais. En cas de désaccord entre cette page et la page en anglais, c'est la page en anglais qui fait foi. English