Aller au contenu

Personnalisation

Un seul fichier rĂ©git tout ce que vous pouvez modifier : config.lua. Le reste est constituĂ© des Ă©crans de l’application et de la logique sous escrow.


FichierCe qu’il dĂ©cideModifiable ?
config.luaFramework, chemin des images, expiration, paiements, emplacement du pawn shop, marqueur, blip, PNJ, blacklist, textes de notification, nom de l’appOui
pawnshop.sqlLes trois tables, Ă  importer une seule foisOui
web/index.html, web/styles.css, web/script.jsLes Ă©crans de l’application, la disposition et les libellĂ©s—
web/assets/pawn.pngL’icîne de l’applicationOui
web/assets/fries.pngL’image affichĂ©e par dĂ©faut lorsqu’un item n’a pas d’illustrationOui
client/main.lua, server/main.luaLa logique interneSous escrow

Il n’y a pas de dossier bridge ni de dossier locales : le framework est une simple option ci-dessous et les textes rĂ©sident dans config.lua.


OptionCe qu’elle faitDĂ©faut
Config.Framework"esx" ou "qb", en minuscules. Sur QBox, utilisez "qb" — QBox gĂšre les ressources QBCore via sa compatibilitĂ©"esx"
Config.InventoryImagePathLe dossier de lecture des images d’items, au format resource/dossier/. Pour qb-inventory, "qb-inventory/html/images/""ox_inventory/web/images/"
Config.ExpireNombre de jours durant lesquels une annonce reste active. Modifier le prix réinitialise le décompte7

OptionCe qu’elle faitDĂ©faut
Config.Banktrue : les acheteurs paient via leur banque et les vendeurs encaissent sur leur banque. false : paiement via l’item de Config.Moneytrue
Config.MoneyL’item d’inventaire utilisĂ© comme monnaie lorsque Bank est dĂ©sactivĂ© — money, black_money ou votre propre item"money"

Lorsque Bank est dĂ©sactivĂ© (false), l’argent doit impĂ©rativement ĂȘtre un item d’inventaire, ce qui correspond au fonctionnement de l’argent liquide sur ox_inventory. Sur l’inventaire par dĂ©faut d’ESX et sur QBCore, l’argent liquide est gĂ©rĂ© comme un compte et non comme un item ; laissez donc Config.Bank = true dans ces environnements.

L’argent issu d’une vente ne parvient pas directement au vendeur. Il est crĂ©ditĂ© sur son solde Pending dans l’application, et le joueur doit appuyer sur le bouton de transfert pour le rĂ©cupĂ©rer.


OptionCe qu’elle faitDĂ©faut
Config.RequireLocationtrue : la publication et l’achat d’annonces doivent ĂȘtre finalisĂ©s au pawn shopfalse
Config.PawnShopLocationCoordonnées du pawn shop : x, y, z et orientation du PNJ412.17, 315.11, 103.13, orientation 194.62
Config.InteractionDistanceDistance en mÚtres pour pouvoir appuyer sur E. Le serveur la vérifie également1.0
Config.MarkerMarqueur Ă  la porte : Type, Scale (x, y, z) et Color (r, g, b, a)Type 20, bleu-gris sombre
Config.BlipBlip d’itinĂ©raire : Sprite, Color, Scale480, 32, 1
Config.NPCModĂšle de ped du vendeur (Model) et animation d’échange (Dict et Name)a_m_m_business_01, mp_common / givetake1_a

DĂ©roulement du jeu lorsque RequireLocation est activĂ© : le joueur remplit l’annonce ou clique sur acheter, le tĂ©lĂ©phone trace un itinĂ©raire vers le pawn shop, et le marqueur apparaĂźt lorsqu’il se trouve Ă  moins de 20 mĂštres. Appuyer sur E devant le marqueur fait intervenir le PNJ pour l’échange de la marchandise et la transaction se conclut.

Le blip et le marqueur n’existent que tant que le joueur a une opĂ©ration Ă  finaliser sur place ; il n’y a pas de blip permanent sur la carte. Lorsque RequireLocation est dĂ©sactivĂ©, aucun de ces Ă©lĂ©ments n’est utilisĂ©.

Config.Blip.Name n’est pas utilisĂ© pour le libellĂ© du blip — celui-ci provient de Config.Messages.blip_name.


Config.BlackList est une liste de noms d’items qui ne peuvent jamais ĂȘtre mis en vente. Ils sont masquĂ©s dans le sĂ©lecteur d’items, refusĂ©s par le serveur, et toute offre existante les concernant est immĂ©diatement retirĂ©e du tableau — avec ses items — dĂšs la prochaine ouverture de l’application par un joueur. Fournie avec burger et weapon_appistol comme exemples.


Il n’y a pas de dossier de locales dĂ©diĂ©. L’intĂ©gralitĂ© des textes modifiables se trouve dans config.lua, en anglais par dĂ©faut :

OptionCe qu’elle contient
Config.locales.en.app_nameNom de l’application sur le tĂ©lĂ©phone et titre de ses notifications
Config.locales.en.app_descriptionSlogan affichĂ© sous le nom dans l’App Store
Config.MessagesChaque notification : offre créée, achetĂ©e et supprimĂ©e, champs manquants, Ă©checs, “allez au pawn shop”, invite de la touche E et nom du blip

Pour proposer une autre langue, traduisez directement ces chaĂźnes dans le fichier. Quelques rĂ©ponses du serveur — “Insufficient items”, “Inventory full”, “This item cannot be listed for sale”, “You do not own this offer” et Ă©quivalents — sont codĂ©es en dur dans le fichier serveur sous escrow et restent en anglais.

Sur ESX, les notifications parviennent sous forme de notifications lb-phone Ă©mises par l’application. Sur QBCore, elles utilisent le systĂšme de notification natif du framework.


L’application affiche chaque item via <Config.InventoryImagePath><item name>.png, lu directement depuis votre ressource d’inventaire. Si une image est manquante, web/assets/fries.png est affichĂ©e comme solution de secours ; remplacez ce fichier si vous souhaitez modifier l’image par dĂ©faut.