Aller au contenu

Personnalisation

Les paramĂštres se trouvent dans config.lua. Les fichiers qui communiquent avec votre framework, votre inventaire et votre ressource de target sont laissĂ©s ouverts, de sorte qu’un serveur qui fonctionne diffĂ©remment puisse les adapter sans toucher au cƓur sous escrow.


Fichier ou dossierCe qu’il dĂ©cideOuvert ?
config.luaChaque paramĂštre de cette page, la fonction de notification, les items et les saveursOuvert
locales/*.luaTous les textes : menu, libellés du target, messages. Un fichier par langueOuvert
server_functions.luaObtenir un joueur, ajouter, retirer et vérifier des items, enregistrer les items utilisables, le callback des saveurs, et ReduceStressOuvert
client/client_functions.luaLecture des données du joueur, et vérification du job pour le menu de configurationOuvert
target/target.luaToutes les options de target sur les chichas et les meubles, pour ox_target et qb-targetOuvert
client/client.lua, server/server.lua, locale.luaPlacement, tuyau, fumée, propriété et fournituresSous escrow
html/Le menu de configuration : index.html, style.css, script.jsFichiers en clair
inventory_items/DĂ©finitions d’items prĂȘtes Ă  l’emploi pour ESX, ox_inventory et QBCoreRĂ©fĂ©rence
inventory_images/Une icĂŽne par itemAssets
mic_hookah_prop/stream/Les dix modÚles de chichasAssets, ressource séparée

OptionCe qu’elle faitPar dĂ©faut
Config.LocaleLangueen
Config.Frameworkesx, qbcore ou qboxesx
Config.ESXResourceNameNom de dossier d’ESXes_extended
Config.QBResourceNameNom de dossier de QBCoreqb-core
Config.QBoxResourceNameNom de dossier de QBoxqbx_core
Config.Targetox_target ou qb-targetox_target
Config.QBTargetResourceNameNom de dossier de qb-targetqb-target
Config.InventoryImagePathD’oĂč le menu charge les icĂŽnes des saveursnui://ox_inventory/web/images/

OptionCe qu’elle faitPar dĂ©faut
Config.AdminGroupsGroupes autorisĂ©s Ă  ouvrir le menu et ramasser n’importe quelle chicha ou meuble. false signifie que tout le monde est adminfalse
Config.AllowedJobsJobs autorisĂ©s Ă  ouvrir le menu de configuration. false signifie n’importe quel jobfalse

Par dĂ©faut, n’importe qui peut gĂ©rer la chicha de n’importe qui. Pour que chaque chicha appartienne au joueur qui l’a posĂ©e, listez vos groupes de staff dans Config.AdminGroups — par exemple admin et superadmin. Sur ESX, la liste est comparĂ©e au groupe du joueur ; sur QBCore et QBox, au champ permission du joueur.

Avec une liste configurée :

QuiOpen Setup MenuRamasserGrab Hose
Le joueur qui l’a posĂ©eoui (si son job est autorisĂ©)ouioui
Un groupe adminoui (si son job est autorisé)ouioui
N’importe qui d’autrenonnonoui

Config.AllowedJobs ne protĂšge que le menu de configuration. N’importe qui peut attraper le tuyau et fumer une chicha allumĂ©e.


OptionCe qu’elle faitPar dĂ©faut
Config.MaxActiveTimeCe que signifie « plein » pour le charbon et l’eau. Un hookah_coal ou hookah_water le remplit Ă  cette valeur1800
Config.ConsumptionPerPuffQuantitĂ© retirĂ©e au charcoal et Ă  l’eau (water) par bouffĂ©e10 et 10
Config.MaxPuffsPerSessionCalculé à partir des deux valeurs ci-dessus (1800 ÷ 10 = 180). Donné pour référence ; le script ne le lit pas180
Config.MaxHoseDistanceDistance en mĂštres avant que le tuyau ne se rompe3.5
Config.MaxSimultaneousUsersLimite prĂ©vue de personnes fumant sur la mĂȘme chicha4
Config.StressAppelle ReduceStress à chaque boufféetrue

La chicha ne se consume pas avec le temps : le charbon et l’eau diminuent uniquement lorsque quelqu’un tire une bouffĂ©e. Lorsque l’un ou l’autre tombe Ă  zĂ©ro, la chicha s’éteint et nĂ©cessite une recharge.

ReduceStress dans server_functions.lua reçoit l’ID serveur du joueur Ă  chaque bouffĂ©e lorsque Config.Stress est activĂ©. Il est livrĂ© vide, avec des exemples commentĂ©s : un Ă©vĂ©nement client, un export ou un Ă©vĂ©nement serveur de votre ressource de stress ou de HUD. Placez votre appel Ă  cet endroit.


OptionCe qu’elle faitPar dĂ©faut
Config.ParticleParticule utilisée : un dict et un namescr_recartheft / scr_wheel_burnout
Config.VapeExhaleTaille de la fumée0.5

La configuration signale ces deux paramÚtres par « ne modifiez pas à moins de savoir ce que vous faites ». Chaque nuage dure trois secondes et est visible par les joueurs situés à moins de 150 mÚtres.


Les listes complùtes se trouvent sur 🎒 Items.

Config.HookahItems — nom de l’item → modĂšle. Pour ajouter une chicha, le modĂšle doit ĂȘtre streamĂ© (par exemple dans mic_hookah_prop/stream/ avec une entrĂ©e dans son .ytyp), puis ajoutez la ligne ici et l’item dans votre inventaire.

Config.PlaceableProps — nom de l’item → propModel, type (furniture) et isChair. Tout prop du jeu de base fonctionne. DĂ©finissez isChair = true pour tout Ă©lĂ©ment devant proposer Sit Down.

Config.Flavors — nom de l’item → paramùtres :

ChampCe qu’il fait
LabelNom affiché dans le menu de configuration
SmokeColorCouleur R, G, B de la fumée
ScreenEffectNom d’un effet d’écran GTA appliquĂ© au fumeur, ou false pour aucun
EffectDurationDurĂ©e en secondes de l’effet d’écran

La configuration fournit un lien vers une liste d’effets d’écran Ă  cĂŽtĂ© de Config.Flavors. Pour ajouter une saveur, copiez une entrĂ©e, donnez-lui un nouveau nom d’item, puis ajoutez l’item et son icĂŽne dans votre inventaire.


Config.Notify dans config.lua envoie chaque message : ShowNotification sur ESX, Functions.Notify sur QBCore et QBox, la console sinon. Remplacez son contenu pour utiliser votre propre ressource de notifications.


Onze fichiers sont fournis dans locales/ : en, es, fr, de, it, pt, ru, cn, nl, pl, tr. Choisissez-en un avec Config.Locale.

Le commentaire au-dessus de Config.Locale mentionne Ă©galement jp, mais aucun fichier japonais n’est fourni ; le dĂ©finir affichera « Locale [jp] does not exist ».

Chaque fichier couvre le menu de configuration, les libellés du target et les messages. Quelques mots sont codés en dur dans le Lua plutÎt que dans les fichiers de langue : les indications de placement (Rotate Right, Rotate Left, Height Up, Height Down, Place Prop, Cancel), « You are already placing an object », et « None » pour une saveur vide.

Pour ajouter une langue : copiez locales/en.lua, remplacez la clĂ© au dĂ©but par votre code et traduisez. Le manifest charge automatiquement tout ce qui se trouve dans locales/, il n’y a donc rien d’autre Ă  dĂ©clarer. DĂ©finissez Config.Locale, faites refresh et redĂ©marrez.


Pour modifierÉditer
Un framework sur mesureL’objet de framework au bas de config.lua, ainsi que les fonctions dans server_functions.lua et client/client_functions.lua
Un inventaire diffĂ©rentAddItem, RemoveItem et HasItem dans server_functions.lua, et l’enregistrement des items utilisables en dessous
Un target diffĂ©renttarget/target.lua — les listes d’options sont partagĂ©es, seuls les deux appels addModel / AddTargetModel diffĂšrent
Libellés, icÎnes ou distance targettarget/target.lua pour les icÎnes et la distance, locales/ pour les libellés
RĂšgles des jobsCheckJobAccess dans client/client_functions.lua

Sur QBCore et QBox avec ox_inventory dĂ©marrĂ©, server_functions.lua enregistre Ă©galement chaque item de chicha et de meuble via le hook d’utilisation propre Ă  ox_inventory, servant de recours de secours pour les configurations oĂč le bridge d’items de QBCore ne relaie pas l’utilisation.


Touche ou commandeQuandCe qu’elle fait
EEn tenant une chichaCommence le placement
XEn tenant une chichaRange sans placer
Molette de la sourisPendant le placementFait pivoter l’aperçu
Flùche haut / basPendant le placementMonte ou descend l’aperçu
EPendant le placementPose l’objet
XPendant le placementAnnule
EEn tenant le tuyau d’une chicha allumĂ©eTire une bouffĂ©e
X (“Hookah - Stand Up X”)En Ă©tant assisSe relever. Modifiable dans les assignations de touches FiveM
/hookah:chair:stand_upEn étant assisIdentique, sous forme de commande