Garage Docs
Présentation
Kairo Garage gère les véhicules possédés par les joueurs : rangement, sortie, fourrière et assurance. Carburant, dégâts, plaque et modifications sont sauvegardés quand le véhicule est rangé.
Les garages peuvent être publics, réservés à un métier, ou partagés par un groupe. Chaque garage peut accepter un ou plusieurs types de véhicules (voiture, moto, bateau, aéronef).
Installation
- Télécharge l'archive depuis « Mes achats » et décompresse-la.
- Place le dossier kairo-garage dans resources/[kairo]/ de ton serveur.
- Vérifie que kairo-core est démarré avant kairo-garage dans ton server.cfg.
- Ajoute la ligne ensure kairo-garage, puis redémarre le serveur. Les tables sont créées automatiquement au premier lancement.
# server.cfgensure kairo-coreensure kairo-garage
Configuration
Chaque garage a un point d'interaction et une position de sortie (vector4, l'angle en plus). Ajoute job = 'police' pour réserver un garage à un métier.
-- config.luaConfig.ImpoundPrice = 500Config.InsurancePrice = 2500Garages.pillbox = { label = 'Parking Pillbox', types = { 'car', 'bike' }, point = vector3(215.8, -810.1, 30.7), spawn = vector4(229.7, -800.1, 30.5, 157.0),}
API
Les exports s'appellent avec exports['kairo-garage']:Nom(...). Les fonctions serveur ne sont jamais accessibles depuis le client.
StoreVehicle
serveurexports['kairo-garage']:StoreVehicle(source, vehicle, garage)
Range un véhicule et sauvegarde son état. Le joueur doit en être le propriétaire.
| Paramètre | Type | Description |
|---|---|---|
source | number | ID serveur |
vehicle | number | Handle réseau de l'entité |
garage | string | Identifiant du garage |
Retour boolean
exports['kairo-garage']:StoreVehicle(source, vehicle, 'pillbox')SpawnVehicle
serveurexports['kairo-garage']:SpawnVehicle(source, plate, garage)
Sort un véhicule rangé et lui réapplique son état.
| Paramètre | Type | Description |
|---|---|---|
source | number | ID serveur |
plate | string | Plaque |
garage | string | Garage de sortie |
Retour number? — l'entité créée, ou nil
local veh = exports['kairo-garage']:SpawnVehicle(source, 'KAIRO123', 'pillbox')GetVehicles
serveurexports['kairo-garage']:GetVehicles(source)
Liste les véhicules d'un joueur avec leur emplacement.
| Paramètre | Type | Description |
|---|---|---|
source | number | ID serveur |
Retour table — { plate, model, garage, state }
for _, v in ipairs(exports['kairo-garage']:GetVehicles(source)) do print(v.plate, v.state)end
Impound
serveurexports['kairo-garage']:Impound(plate, reason)
Envoie un véhicule en fourrière.
| Paramètre | Type | Description |
|---|---|---|
plate | string | Plaque |
reason | string? | Motif affiché au propriétaire |
Retour boolean
exports['kairo-garage']:Impound('KAIRO123', 'Stationnement gênant')GiveVehicle
serveurexports['kairo-garage']:GiveVehicle(source, model, garage)
Ajoute un nouveau véhicule au joueur (concession, récompense).
| Paramètre | Type | Description |
|---|---|---|
source | number | ID serveur |
model | string | Nom du modèle |
garage | string | Garage où il est livré |
Retour string — la plaque générée
local plate = exports['kairo-garage']:GiveVehicle(source, 'sultan', 'pillbox')Événements
kairo-garage:stored
serveurUn véhicule a été rangé.
AddEventHandler('kairo-garage:stored', function(source, plate, garage)end)
kairo-garage:spawned
serveurUn véhicule a été sorti.
AddEventHandler('kairo-garage:spawned', function(source, plate, entity)end)
FAQ
Que devient un véhicule détruit ?
Il passe en état détruit. Le joueur peut le récupérer via l'assurance s'il l'a souscrite, ou en payant la fourrière.
Les modifications sont-elles conservées ?
Oui : peinture, pièces, néons et extras sont enregistrés au rangement.