Garage

Système de garage complet avec gestion de véhicules et personnalisation

Version: 1.0.0 Framework: ESX/QB

Description

Garage est un système complet de gestion de véhicules pour votre serveur FiveM. Il permet aux joueurs de stocker, récupérer et personnaliser leurs véhicules depuis une interface moderne.

Fonctionnalités principales :

  • Interface garage moderne et intuitive
  • Gestion complète des véhicules (sortir, ranger, supprimer)
  • Système de personnalisation de véhicules
  • Garages multiples avec zones personnalisables
  • Support ESX et QBCore
  • Système de clés de véhicules
  • Historique des véhicules
  • Optimisé pour de meilleures performances

Installation

Étapes d'installation :

  1. Téléchargez le script depuis la boutique Tebex
  2. Extrayez le fichier ZIP dans votre dossier resources
  3. Renommez le dossier en cn-garage
  4. Ajoutez le script dans votre server.cfg :
ensure cn-garage

Configuration

Ouvrez le fichier config.lua :

Config = {}

-- Framework
Config.Framework = "esx"

-- Garages disponibles
Config.Garages = {
    {
        name = "garage_central",
        label = "Garage Central",
        coords = vector3(0.0, 0.0, 0.0),
        spawnPoint = vector4(0.0, 0.0, 0.0, 0.0),
        type = "public" -- public, private, job
    }
}

-- Système de clés
Config.Keys = {
    enabled = true,
    item = "keys"
}

-- Personnalisation
Config.Customization = {
    enabled = true,
    categories = {
        "mods",
        "colors",
        "extras"
    }
}

Utilisation

Ouvrir le garage

Les joueurs peuvent ouvrir le garage en se rendant à une zone configurée :

-- Ouvrir le garage via export
exports['cn-garage']:OpenGarage("garage_central")

-- Ouvrir le garage pour un joueur spécifique
TriggerClientEvent('cn-garage:openGarage', source, "garage_central")

Exports

Utilisez les exports pour interagir avec le garage :

-- Obtenir les véhicules d'un joueur
local vehicles = exports['cn-garage']:GetPlayerVehicles(source)

-- Sortir un véhicule
exports['cn-garage']:SpawnVehicle(source, vehiclePlate, garageName)

-- Ranger un véhicule
exports['cn-garage']:StoreVehicle(source, vehiclePlate)

-- Vérifier si un véhicule est dans un garage
local isStored = exports['cn-garage']:IsVehicleStored(vehiclePlate)

Events

Écoutez les events du script :

-- Quand un véhicule est sorti
RegisterNetEvent('cn-garage:vehicleSpawned')
AddEventHandler('cn-garage:vehicleSpawned', function(source, vehiclePlate, garageName)
    print("Véhicule sorti: " .. vehiclePlate .. " depuis " .. garageName)
end)

-- Quand un véhicule est rangé
RegisterNetEvent('cn-garage:vehicleStored')
AddEventHandler('cn-garage:vehicleStored', function(source, vehiclePlate)
    print("Véhicule rangé: " .. vehiclePlate)
end)

Configuration avancée

Ajouter un garage personnalisé

Ajoutez un nouveau garage dans config.lua :

table.insert(Config.Garages, {
    name = "garage_police",
    label = "Garage Police",
    coords = vector3(450.0, -1020.0, 28.0),
    spawnPoint = vector4(450.0, -1025.0, 28.0, 90.0),
    type = "job",
    job = "police"
})

Personnalisation de l'interface

Modifiez les fichiers dans html/ pour personnaliser l'apparence :

/* Couleurs du garage */
.garage-container {
    --primary-color: #3b82f6;
    --secondary-color: #dc2626;
    --background: #0f172a;
}

Support

Pour toute question, contactez-nous via Discord.

Rejoindre le Discord