ai-rental pour les développeurs
Ce qu’ai-rental expose aux autres scripts.
ai-rental n’a ni export ni base de données. Un véhicule loué est un simple véhicule apparu :
- sa plaque commence par le Plate start du panneau (
RNTpar défaut) suivi de chiffres, 8 caractères au total ; - son state bag
fuelvaut 100 quand il apparaît ; - le locataire reçoit les clés via la couche clés d’ai-core avec l’usage
"rental", donc un script de clés qui connaît les locations peut les traiter à part.
Ce n’est pas un véhicule possédé : ai-vehicles ne le connaît pas, et les garages refusent de le garer.
// Serveur : ce véhicule est-il une location ? (préfixe de plaque par défaut "RNT")
export function isRental(vehicle: number): boolean {
return GetVehicleNumberPlateText(vehicle).trim().startsWith("RNT");
}Le préfixe de plaque est un réglage du panneau. Si le propriétaire le change, une vérification comme celle ci-dessus doit changer aussi.
Events
Les events d’ai-rental sont internes (son client et son serveur) ; ne les appelez pas depuis d’autres scripts.
| Nom | Type | Ce qu’il fait |
|---|---|---|
ai-rental:rent | callback client | (locationId, vehicleKey) -> { ok, plate, minutes } : louer un véhicule de la liste. Limité à 2 appels toutes les 5 secondes. |
ai-rental:giveBack | callback client | (locationId) -> { ok, refund } : rendre la location au comptoir. |
ai-rental:state | serveur vers client | (active: boolean) : indique si le joueur a une location (affiche l’invite de restitution). |
ai-rental
Des points de location qui louent des véhicules contre des frais et une caution, avec la caution rendue au retour.
ai-mechanic
Des ateliers de mécanique avec réparation et tuning avec aperçu en direct, des ateliers de métier avec stockage et factures aux clients, des stations de lavage et un kit de réparation.