Skip to content

Installation

Installation

Quatre étapes : importer le SQL, vous donner l'accès à l'éditeur, enregistrer vos objets, démarrer la ressource.

1. Dependencies

Resource Required Why
ox_lib Yes Callbacks, notifications, locales
oxmysql Yes Stockage des substances et de l'état d'addiction du joueur
A targeting resource Optional Examiner un joueur sans commande

2. server.cfg — ensure order

Démarrez bupa-addictioncreator après les ressources dont il dépend.

server.cfg
ensure ox_lib
ensure oxmysql
ensure ox_target
ensure bupa-addictioncreator

3. Database

Importez sql/bupa_addictioncreator.sql. Cela crée deux tables :

Table Holds
bupa_substances Les définitions de substances que vous créez dans l'éditeur
bupa_addictions Le niveau d'addiction, la tolérance, le nombre de doses et l'historique par personnage

Les deux noms peuvent être modifiés dans Config.Tables en cas de conflit avec des éléments déjà existants.

4. Access to the editor

L'éditeur modifie les effets des drogues sur votre serveur, il est donc protégé.

server.cfg
add_ace group.admin bupa.substances allow

Sur un serveur de développement où les ACE ne sont pas encore configurés, ajoutez plutôt votre identifiant de licence dans la configuration :

config.lua
Config.Creator = {
    Command = 'substances',
    UseAce  = true,
    Ace     = 'bupa.substances',
    Developers = { 'license:0000000000000000000000000000000000000000' },
    LivePreview = true,
}

5. Register your items

Chaque substance créée dans l'éditeur pointe vers un objet d'inventaire, et cet objet doit exister. Copiez le bloc correspondant à votre inventaire depuis le fichier approprié dans install/inv/ :

File Covers
inv/ox_inventory.txt ox_inventory
inv/qb-inventory.txt qb-inventory, lj-inventory, ps-inventory
inv/qs-inventory.txt qs-inventory
inv/codem-inventory.txt codem-inventory
inv/tgiann-inventory.txt tgiann-inventory
inv/esx.txt classic ESX inventories

Pour ox_inventory, deux lignes de cette entrée sont importantes :

ox_inventory/data/items.lua
['meth_syringe'] = {
    label = 'Meth',
    weight = 20,
    stack = true,
    close = true,
    consume = 0,
    description = 'A loaded syringe',
    client = { image = 'meth_syringe.png' },
    server = { export = 'bupa-addictioncreator.useSubstance' },
},
  • server.export — ox_inventory n'a pas de CreateUseableItem, cette fonction exportée permet donc à la ressource de savoir que l'objet a été utilisé.
  • consume = 0 — sans cela, ox_inventory supprime l'objet avant que la ressource n'ait validé si la dose est autorisée. La ressource se charge elle-même de supprimer l'objet une fois validé.

Sur QBox, QB-Core et ESX, la ressource enregistre elle-même l'objet utilisable via le core, il suffit donc que l'objet ait useable = true.

Le nom de l'objet dans l'éditeur et le nom de l'objet dans votre inventaire doivent correspondre exactement, en minuscules. L'éditeur met automatiquement vos saisies en minuscules ; votre fichier d'objets doit faire de même.