Accueil › Documentation › 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.
| 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' |
| 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 |
| 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 |
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.
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 },
},
},
}| 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é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.
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é |
-- 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.