Accueil › Documentation › Configuration · origen_housing

Configuration · origen_housing

La configuration est répartie en plusieurs fichiers dans config/.


config/_main.lua — Général

Variable Par défaut Description
Config.Language 'en' Langue de l’interface — 'en' | 'es' | 'fr' | 'it'
Config.Debug false Active les journaux de débogage
Config.DatabaseStructureCheck true Valide la structure de la base de données au démarrage
Config.RenderDistance 200 Distance en mètres pour afficher les bâtiments et le mobilier extérieur
Config.DoorLimit 10 Nombre maximal de portes par maison (MLO uniquement). false = pas de limite
Config.LightsLimit.interior 10 Nombre maximal de lumières intérieures par maison
Config.LightsLimit.exterior 10 Nombre maximal de lumières extérieures par maison
Config.SaveDoorStatus true Enregistre en base de données l’état ouvert/fermé des portes
Config.StartBuildingOnBuy true Lance la construction immédiatement à l’achat. false = elle démarre à la création de la maison
Config.LoadFurnitureOnlyInPolyzone false Ne charge le mobilier que lorsque le joueur est dans la polyzone
Config.GarageNeedMainDoorUnlocked false Le garage est verrouillé quand la porte principale est verrouillée
Config.KeyHoldersNeedDoorUnlocked false Les détenteurs de clé ne peuvent entrer que si la porte principale est déverrouillée
Config.LimitOfHouses 10 Nombre maximal de maisons qu’un joueur peut posséder. false = pas de limite
Config.LimitOfKeyHolders 15 Nombre maximal de détenteurs de clé par maison. false = pas de limite
Config.CustomDrawText false Utilise Custom.DrawText au lieu du texte à l’écran du framework
Config.CustomNotify false Utilise Custom.Notify au lieu des notifications de ox_lib
Config.ExternalInteractionSystem false Utilise Custom.CreateCoordsInteraction pour les points d’interaction
Config.EnableStashesLimit false Limite le nombre de coffres par maison
Config.StashesLimit 5 Nombre maximal de coffres par maison (quand EnableStashesLimit = true)
Config.ShowHousePanelOnBuy true Affiche le panneau de la maison juste après l’achat
Config.CustomInventory false Utilise Custom.OpenStash au lieu de l’inventaire détecté automatiquement
Config.CustomClothing false Utilise Custom.Wardrobe au lieu du système de vêtements détecté automatiquement
Config.EnterHouseOnSpawn true Téléporte le joueur dans sa dernière maison à l’apparition
Config.UseNameInBlipInsteadOfId false Affiche le nom de la maison au lieu de l’ID sur les blips de la carte
Config.UseHouseGarages false Active le système de garages intégré
Config.ForceDisableRain false Désactive la pluie dans les intérieurs shell
Config.FurnitureEnable.interior true Autorise le placement de mobilier intérieur
Config.FurnitureEnable.exterior true Autorise le placement de mobilier extérieur

Blip

lua
Config.Blip = {
    sprite              = 350,
    scale               = 0.6,
    color               = 0,
    buyedSprite         = 40,        -- sprite for owned houses
    showBlipInDistance  = false,     -- short range blip
}

Marqueurs

lua
Config.Markers = {
    ['general'] = { type = 20, color = {0, 0, 0, 200}, ... },  -- entry/exit points
    ['garage']  = { type = 36, color = {0, 0, 0, 200}, ... },  -- garage points
}

Paiement

lua
Config.DefaultPaymentMethod = 'cash'
 
Config.PaymentMethods = {
    ['cash'] = true,
    ['bank'] = true,
}

Distances des portes

lua
Config.DoorDistances = {
    ['normal'] = 2.0,
    ['double'] = 2.0,
    ['garage'] = 3.5,
}

Correspondance des colonnes de la base de données

Associe les noms de champs internes aux colonnes des tables de ton framework. Utilise des valeurs 'custom' quand tu utilises Config.Framework = 'custom' :

Champ QBCore ESX
table players players users
colonne identifier citizenid identifier
table vehicles player_vehicles owned_vehicles
colonne owner citizenid owner
colonne mods mods vehicle
colonne state state stored
colonne garage garage parking

config/permissions.lua

Groupes d’administration pouvant créer, supprimer ou modifier des maisons :

lua
Config.Permissions = {
    ['create'] = {'god', 'admin'},
    ['delete'] = {'god', 'admin'},
    ['edit']   = {'god', 'admin'},
}

Permissions par métier (agent immobilier)

lua
Config.Job = {
    active = true,
    allowed = {
        ['realestate'] = {
            minGrade = 1,
            create   = true,
            delete   = false,
            edit     = false,
        },
    }
}

config/commands.lua

Commande Touche par défaut Description
/housing — Ouvre le menu d’administration / de gestion immobilière
/management O Ouvre le menu de gestion de la maison (à l’intérieur d’une maison)
/furniture K Ouvre le menu de placement du mobilier (à l’intérieur d’une maison)

config/logs.lua — Webhooks Discord

lua
ServerConfig.UseIdentifiers = true  -- include player identifiers in logs
 
ServerConfig.Logs = {
    CreateHouse  = 'YOUR_DISCORD_WEBHOOK',
    DeleteHouse  = 'YOUR_DISCORD_WEBHOOK',
    BuyHouse     = 'YOUR_DISCORD_WEBHOOK',
    BuyUpgrade   = 'YOUR_DISCORD_WEBHOOK',
    CreateDoor   = 'YOUR_DISCORD_WEBHOOK',
}

config/upgrades.lua

Améliorations achetables et leurs prix :

Clé Nom Prix
alarm Alarme $10,000
cameras Caméras $12,000
doors Portes $15,000
sensors Capteurs $10,000
storage_security Sécurité du stockage $10,000
domotic Domotique $10,000

config/stashes.lua

Types de coffres disponibles pour ranger des objets dans la maison :

Clé Poids Emplacements
small 5 1
normal 20 5
medium 25 6
big 50 10
extrabig 100 30

config/raid.lua

lua
Config.Raid = {
    enabled      = true,
    item         = 'stormram',
    allowedJobs  = { ['police'] = true, ['sheriff'] = true, ['fib'] = true },
    triggerAlarm = true,
    skillcheck   = true,
    animation    = { dict = 'melee@unarmed@streamed_core', anim = 'kick_close_a' },
}

config/robbery.lua

lua
Config.Lockpick = {
    enabled               = true,
    customLockpickMinigame = false,  -- use Custom.LockpickMinigame if true
    policeNeed            = 2,
    maxTry                = 3,
    item                  = 'lockpick',
    advancedItem          = 'advancedlockpick',
    alertOwner            = true,
}
 
Config.AlarmDuration = 5   -- alarm duration in minutes
Config.Dispatch      = 'origen_police'  -- 'origen_police' | 'custom'
Config.PoliceJob     = 'police'

config/garages.lua

Active le garage intégré en définissant Config.UseHouseGarages = true.

Types de garage disponibles :

Nom Modèle Places
Garage basique basic 1
Garage moyen medium 4
Grand garage large 10
Garage premium premium 16 (3 étages)

Définis Config.CustomGarage = true et implémente Custom.OpenCustomGarage(houseID, garageType, coords) pour utiliser ton propre système de garages.