Accueil › Documentation › Configuration · origen_vendings

Configuration · origen_vendings

Toute la configuration côté client se trouve dans config.lua. La configuration des logs côté serveur se trouve dans svconfig.lua. Ces deux fichiers sont exclus de l’escrow et peuvent être modifiés librement.


config.lua

Général

Variable Type Par défaut Description
Config.Framework string 'qb-core' Framework à utiliser. Elle est détectée automatiquement à l’exécution : définis cette valeur uniquement comme solution de repli. Valeurs acceptées : 'qb-core', 'qbx_core', 'esx'
Config.Inventory string 'auto' Fournisseur d’inventaire. Utilise 'auto' pour que la ressource le détecte, ou force-en un précis : 'ox_inventory', 'qb-inventory', 'qs-inventory', 'ps-inventory', 'origen_inventory', 'codem-inventory', 'tgiann-inventory', 'core_inventory'
Config.GroupPermissions string[] { 'god', 'admin', 'superadmin' } Groupes ACE ayant un accès complet au panneau d’administration. Vérifiés via IsPlayerAceAllowed
Config.Debug boolean false Affiche des logs détaillés dans la console du serveur (création de tables, ajout de colonnes, etc.)
Config.Language string 'en' Langue de l’interface. Valeurs acceptées : 'en', 'es'

Notification

Variable Type Par défaut Description
Config.NotificationPosition string 'top-right' Position des notifications en jeu. Transmise directement au bridge de notifications dans custom/client.lua

Monde

Variable Type Par défaut Description
Config.DistanceRender float 60.0 Distance, en unités du jeu, à laquelle le prop du distributeur apparaît ou disparaît pour le joueur
Config.InteractDistance float 2.5 Rayon, en unités du jeu, dans lequel l’invite [E] apparaît et le distributeur peut être ouvert

Catalogue de props

Config.PropCatalog définit les catégories de props disponibles et leurs modèles GTA associés. Il détermine quels props les administrateurs peuvent attribuer aux groupes de distributeurs.

lua
Config.PropCatalog = {
    {
        category = 'drinks',
        label    = 'Bebidas',
        props    = {
            { model = 'prop_vend_soda_01',  label = 'Máquina eCola',           interactive = true },
            { model = 'prop_vend_soda_02',  label = 'Máquina Sprunk',          interactive = true },
            { model = 'prop_vend_fridge01', label = 'Refrigerador de bebidas', interactive = true },
            { model = 'prop_vend_water_01', label = 'Máquina de agua',         interactive = true },
            { model = 'sf_prop_sf_vend_drink_01a',        label = 'Máquina bebidas (The Contract)', interactive = true },
            { model = 'ch_chint10_vending_smallroom_01',  label = 'Máquina vending (Casino)',       interactive = true },
        },
    },
    {
        category = 'snacks',
        label    = 'Snacks',
        props    = {
            { model = 'prop_vend_condom_01',  label = 'Máquina vending compacta',    interactive = true },
            { model = 'prop_vend_snak_01_tu', label = 'Máquina de snacks (variante)', interactive = true },
        },
    },
    {
        category = 'coffee',
        label    = 'Café',
        props    = {
            { model = 'prop_vend_coffe_01', label = 'Cafetera Bean Machine (A)', interactive = true },
            { model = 'p_ld_coffee_vend_s', label = 'Cafetera móvil',           interactive = true },
        },
    },
    {
        category = 'cigarettes',
        label    = 'Cigarrillos',
        props    = {
            { model = 'prop_vend_fags_01', label = 'Máquina de cigarrillos', interactive = true },
            { model = 'v_ret_247_cigs',    label = 'Exhibidor de cigarrillos', interactive = true },
        },
    },
}

Champs d’un prop

Champ Type Description
model string Nom du modèle du prop de GTA V
label string Nom affiché dans le panneau d’administration
interactive boolean Si false, le prop apparaît dans le catalogue d’administration mais ne peut pas être placé comme point de vente actif

Catégories

Catégorie Comportement
'drinks', 'snacks', 'coffee', 'cigarettes' Standard : les props sont attribués automatiquement à la création d’un groupe ou au changement de sa catégorie. Les administrateurs ne peuvent pas ajouter ni retirer de props manuellement
'custom' Les groupes démarrent sans props. Les administrateurs peuvent attribuer manuellement n’importe quel prop interactif de n’importe quelle catégorie du catalogue

Pour ajouter d’autres props, ajoute des entrées à une catégorie existante ou crée un nouveau bloc de catégorie. Les props personnalisés doivent avoir interactive = true pour pouvoir être placés.


svconfig.lua

Contrôle les logs par webhook Discord. Ce fichier s’exécute uniquement côté serveur et est exclu de l’escrow.

Champ Type Par défaut Description
enabled boolean true Interrupteur général. Mets-le à false pour désactiver tous les logs Discord
webhooks['group-created'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un administrateur crée un nouveau groupe de distributeurs
webhooks['group-updated'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un administrateur met à jour un groupe de distributeurs
webhooks['group-deleted'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un administrateur supprime un groupe de distributeurs
webhooks['item-added'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un item est ajouté à un groupe
webhooks['item-updated'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un item d’un groupe est mis à jour
webhooks['item-removed'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un item est retiré d’un groupe
webhooks['machine-created'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un distributeur est placé
webhooks['machine-updated'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un distributeur est mis à jour
webhooks['machine-deleted'] string 'YOUR_WEBHOOK_URL' Déclenché lorsqu’un distributeur est supprimé
lua
-- svconfig.lua
return {
    enabled = true,
    webhooks = {
        ['group-created']   = 'https://discord.com/api/webhooks/...',
        ['group-updated']   = 'https://discord.com/api/webhooks/...',
        ['group-deleted']   = 'https://discord.com/api/webhooks/...',
        ['item-added']      = 'https://discord.com/api/webhooks/...',
        ['item-updated']    = 'https://discord.com/api/webhooks/...',
        ['item-removed']    = 'https://discord.com/api/webhooks/...',
        ['machine-created'] = 'https://discord.com/api/webhooks/...',
        ['machine-updated'] = 'https://discord.com/api/webhooks/...',
        ['machine-deleted'] = 'https://discord.com/api/webhooks/...',
    },
}

Tu peux utiliser la même URL de webhook pour plusieurs événements, ou un canal différent par type d’événement. Laisser une valeur à 'YOUR_WEBHOOK_URL' avec enabled = true provoquera une requête HTTP en échec pour cet événement : remplace toutes les valeurs avant la mise en production.