Documentation Pulse Phone
Frameworks
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 :
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. qbsur un serveur qui fait tournerqbx_coreutilise 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
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
itemsd'ESX au démarrage, et la console indique lesquels il a ajoutés.config/items/esx.sqlest 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 comptemoney. - Personnage : le téléphone suit l'
identifierdu joueur ESX, donc esx_multicharacter fonctionne. - Patron : le grade nommé
bossgère l'entreprise, sauf si vous définissezbossGrade. - Comptes d'entreprise : esx_addonaccount / esx_society, ou un script bancaire de la section 7.
QBCore
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/versqb-inventory/html/images/; la vérification au démarrage nomme celles qui manquent. - Argent :
banketcash. - Personnage : le
citizenid, donc qb-multicharacter fonctionne. - Patron : les grades avec
isboss = truedans vos métiers, sauf si vous définissezbossGrade. - 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
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 dansox_inventory/web/images/. - Argent :
banketcash, via qbx_core. - Personnage : le
citizenid. - Patron : les grades avec
isboss = true, sauf si vous définissezbossGrade. - 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
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 dansox_inventory/web/images/. - Argent : la banque est le compte ox_core du personnage. Le liquide est l'item
moneyd'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
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_Coreest 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
bankND du personnage, et lecashND (ox_inventory garde l'itemmoneysynchronisé). - 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_vehiclesde 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.
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éfinissezConfig.Store.box = falsepour que la boutique remette directement les téléphones. Les joueurs utilisent les items de recharge avec/phonepacket/phonecable; avec un inventaire vRP, le joueur doit avoir sur luipulse_magpacketpulse_cable: ajoutez donc ces deux items à votre liste d'items vRP, ou définissezConfig.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).
ensure oxmysql
ensure core
# ... your other scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phoneLa 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.luacontient les entrées), et pour les boîtes de la boutiquepulse_phone_boxplus une par finition (pulse_phone_box_black...). Les libellés, poids et descriptions sont dansconfig/items/qb-core.lua, et les images dansconfig/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éfinissezConfig.Store.box = false. - Argent : le liquide du personnage, et sa banque : la ressource
bankingde 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 formeBNK123456, indiquez le champ qui contient le numéro de compte dansconfig/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? Retirezensure pulse_tmcet supprimez ce dossier. La console vous le rappelle tant qu'il tourne encore.
Standalone (sans framework)
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 (
startingBalancedansconfig/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
- Définissez
Config.Framework = 'custom'dansconfig/config.lua. - Donnez au téléphone une table de bridge sur le modèle de
optional-developer-kit/custom_framework_bridge.lua: soit en tant queConfig.Providers.customdansconfig/config.lua, soit depuis votre propre ressource avecexports.phone:RegisterFrameworkBridge(MyBridge). - Seule
GetCharacterIdest 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 aGetBankBalance. - 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.