Personnalisation
Tout ce que vous pouvez personnaliser se trouve dans config.lua et dans locales/. Le reste de la ressource est sous escrow, Ă lâexception des Ă©crans de lâapplication mobile.
Quel fichier décide de quoi
Section intitulĂ©e « Quel fichier dĂ©cide de quoi »| Fichier | Ce quâil dĂ©cide | Modifiable ? |
|---|---|---|
config.lua | Framework, argent, taux dâĂ©chec, police, fiche App Store, drogues, niveaux, zones | Oui |
locales/*.lua | Les notifications du téléphone, un fichier par langue | Oui |
locales/locales.lua | La table de locales que les fichiers de langues remplissent | Oui |
ui/img/ | Les images de lâapplication : une par drogue, le logo dâaccueil et lâicĂŽne (icon.png) | Oui |
ui/index.html, ui/styles.css, ui/script.js | Les Ă©crans de lâapplication, la disposition et le texte des boutons | â |
player_data.json | Les ventes, niveaux et bonus de chaque dealer. Ăcrit par la ressource | Oui |
client/, server/ | La logique interne | Sous escrow |
Il nây a pas de dossier bridge sĂ©parĂ© : le framework se choisit directement via Config.Framework ci-dessous.
Framework et argent
Section intitulĂ©e « Framework et argent »| Option | Ce quâelle fait | DĂ©faut |
|---|---|---|
Config.Framework | "ESX" ou "QB", en majuscules. Sur QBox, utilisez "QB" â QBox gĂšre les ressources QBCore via sa compatibilitĂ© | "ESX" |
Config.esxResourceName | Le nom de ressource dâESX, si le vĂŽtre nâest pas le standard | "es_extended" |
Config.qbResourceName | Le nom de ressource de QBCore, si le vĂŽtre nâest pas le standard. Laissez "qb-core" sur QBox | "qb-core" |
Config.BlackMoney | Payer en argent sale plutĂŽt quâen argent propre | true |
Config.MoneyAsItem | Payer sous forme dâitem dâinventaire plutĂŽt que sur un compte bancaire | true |
Config.MoneyItem | Lâitem payĂ© lorsque MoneyAsItem est activĂ© et que BlackMoney est dĂ©sactivĂ© | "money" |
Ce que reçoit réellement le joueur :
| ESX | QBCore / QBox | |
|---|---|---|
| Argent sale, en item | Item black_money | Item blackmoney |
| Argent sale, en compte | Compte black_money | Item blackmoney |
| Argent propre, en item | Item de Config.MoneyItem | Item de Config.MoneyItem |
| Argent propre, en compte | Cash (liquide) | Cash (liquide) |
| Option | Ce quâelle fait | DĂ©faut |
|---|---|---|
Config.Failure | Le pourcentage de chance (0 Ă 100) que lâacheteur rejette le joueur aprĂšs quâil a frappĂ©. Le joueur garde sa marchandise | 55 |
Config.DealTimeout | Nombre de secondes pour atteindre la porte avant expiration de lâoffre | 300 |
Config.MinimumPolice | Nombre de policiers en ligne requis avant que quiconque nâachĂšte. 0 dĂ©sactive la vĂ©rification | 1 |
La quantité vendue est tirée au sort entre minAmount et maxAmount de la drogue concernée dÚs que le joueur appuie sur SELL ; la porte est tirée au sort parmi les zones associées à cette drogue.
La police
Section intitulĂ©e « La police »| Option | Ce quâelle fait | DĂ©faut |
|---|---|---|
Config.PoliceJobs | Métiers comptabilisés comme policiers et recevant les alertes | police, sheriff |
Config.PoliceAlertChance | Pourcentage de chance (0 Ă 100) quâune vente rĂ©ussie soit signalĂ©e | 20 |
Config.PoliceNotifyAppName | Titre de lâalerte sur le lb-phone des policiers | "Police Dispatch" |
Config.PoliceBlipSprite | LâicĂŽne de blip placĂ©e Ă lâendroit de la vente | 161 |
Config.PoliceBlipColor | Sa couleur | 38 |
Config.PoliceBlipScale | Sa taille | 1.0 |
Config.PoliceBlipDuration | Durée en secondes avant disparition du blip | 120 |
Config.PriceMultipliers | Paliers de prix selon le nombre de policiers en ligne, avec minPolice, maxPolice et multiplier | Voir ci-dessous |
Paliers par dĂ©faut : 1â2 policiers Ă1.0, 3â4 Ă1.2, 5â6 Ă1.4, 7â9 Ă1.6, 10 ou plus Ă2.0. Si le nombre de policiers ne correspond Ă aucun palier, le multiplicateur reste Ă Ă1.0.
Calcul du prix final : Le bonus de niveau et le bonus de police sont additionnĂ©s, et non multipliĂ©s : un dealer de niveau 5 (Ă1.5) vendant avec six policiers en ligne (Ă1.4) reçoit 1 + 0.5 + 0.4 = Ă1.9 le prix de base.
Chaque agent exerçant un mĂ©tier prĂ©sent dans PoliceJobs reçoit lâalerte ; il nây a pas de vĂ©rification de prise de service.
Qui voit lâapplication
Section intitulĂ©e « Qui voit lâapplication »| Option | Ce quâelle fait | DĂ©faut |
|---|---|---|
Config.BlockedAppJobs | MĂ©tiers ne pouvant ni voir ni installer lâapplication. VĂ©rifiĂ© au chargement du joueur et Ă chaque changement de mĂ©tier | police, sheriff, ambulance, mechanic |
La fiche App Store
Section intitulĂ©e « La fiche App Store »| Option | Ce quâelle fait | DĂ©faut |
|---|---|---|
Config.name | Nom de lâapplication sur le tĂ©lĂ©phone | "Drug Dealer" |
Config.description | Slogan affichĂ© sous le nom dans lâApp Store | "Deal dope, dodge the cops" |
Config.defaultApp | true prĂ©installe lâapplication sur tous les tĂ©lĂ©phones ; false nĂ©cessite de la tĂ©lĂ©charger | false |
Config.size | Taille affichée dans le store, en Ko | 25400 |
Config.price | CoĂ»t dâinstallation | 0 |
LâicĂŽne de lâapplication est ui/img/icon.png. Remplacez ce fichier pour la changer.
Config.drugs est une liste ; chaque entrĂ©e reprĂ©sente un bouton dans lâapplication.
| Champ | Ce quâil fait |
|---|---|
item | Lâitem dâinventaire qui est vendu |
label | Le nom affichĂ© dans lâapplication et les notifications |
price | Prix par unité, avant application des bonus |
minAmount, maxAmount | Plage de quantité tirée pour chaque deal |
zones | Zones de Config.NPCLocations oĂč un acheteur peut se trouver |
image | Nom de fichier dans ui/img/ |
minLevel | Niveau de dealer requis pour pouvoir la vendre |
Pour ajouter une drogue, ajoutez une entrĂ©e, placez son image dans ui/img/, et assurez-vous que lâitem existe dans votre inventaire. Images fournies et utilisĂ©es par la liste dâorigine : baggy_weed.png, baggy_cocaine.png, lsd.png, baggy_meth.png, mushroom.png, opium.png, crack.png, drug_heroin.png, xtc_baggy.png, oxy.png, drug_lean.png, drug_hash.png.
Config.levels liste les rangs dans lâordre. Chacun possĂšde un numĂ©ro level, un nom name, un nombre de salesRequired (le nombre total de ventes, pas dâunitĂ©s) et un bonusMultiplier.
| Niveau | Nom | Ventes | Bonus |
|---|---|---|---|
| 1 | Newbie | 0 | Ă1.0 |
| 2 | Rookie | 25 | Ă1.1 |
| 3 | Hustler | 75 | Ă1.2 |
| 4 | Dealer | 150 | Ă1.35 |
| 5 | Trader | 300 | Ă1.5 |
| 6 | Boss | 600 | Ă1.75 |
| 7 | Kingpin | 1200 | Ă2.0 |
| 8 | Overlord | 2000 | Ă2.25 |
| 9 | Tycoon | 3500 | Ă2.5 |
| 10 | Legend | 5000 | Ă3.0 |
Conservez-les par ordre croissant de salesRequired ; le niveau est calculé en parcourant la liste.
| Option | Ce quâelle fait | DĂ©faut |
|---|---|---|
Config.dataFile | Fichier dans le dossier de la ressource stockant la progression des dealers | "player_data.json" |
La progression est conservée par personnage : identifiant ESX ou Citizen ID QBCore.
Config.NPCLocations est numéroté ; ces numéros correspondent aux zones référencées dans le champ zones des drogues. Chaque zone contient :
| Champ | Ce quâil fait |
|---|---|
peds | ModĂšles de peds, lâun Ă©tant choisi au hasard pour ouvrir |
locations | Positions des portes (x, y, z et orientation) |
| Zone | Quartier | Portes fournies |
|---|---|---|
| 1 | Grove | 1 |
| 2 | Ponton et plage | 10 |
| 3 | Maisons Vinewood | 10 |
| 4 | Sandy Shores | 8 |
| 5 | Paleto Bay | 9 |
Vous pouvez librement ajouter des zones et des portes. DĂ©tail important : le nom de zone affichĂ© dans lâalerte de police provient du code interne de la ressource qui ne connaĂźt que les zones 1 Ă 5 ; toute nouvelle zone sera signalĂ©e sous lâappellation âUnknown Zoneâ.
Neuf langues sont fournies dans locales/ : en, es, fr, de, it, pt, pl, ru et tr. DĂ©finissez Config.Locale sur lâune dâelles.
Pour en ajouter une :
- Copiez
locales/en.luavers un nouveau fichier, par exemplelocales/nl.lua. - Modifiez le code au début du fichier en
nlet traduisez les textes. - Ajoutez
locales/nl.luaà la listeshared_scriptsdansfxmanifest.lua, aux cÎtés des autres et au-dessus deconfig.lua. - Définissez
Config.Locale = "nl", puis faitesrefreshet redémarrez la ressource.
Les fichiers de locales couvrent les notifications tĂ©lĂ©phoniques. Les boutons de lâapplication elle-mĂȘme â DRUGS, PROFILE, SELL, CANCEL et lâĂ©cran de profil â sont Ă©crits en dur dans ui/script.js et ui/index.html.