Skip to content

Exports

Exports

Quatre exports côté client, pour les autres ressources qui ont besoin de lire ou de modifier le carburant d'un véhicule. Cette page documente uniquement ce qui existe réellement dans la ressource.

client-side
local fuel = exports['bupa-fuel']:GetFuel(vehicle)
exports['bupa-fuel']:SetFuel(vehicle, 75.0)
local kind = exports['bupa-fuel']:GetFuelType(vehicle)
local ev   = exports['bupa-fuel']:IsElectric(vehicle)
Export Arguments Retours
GetFuel vehicle (handle d'entité) Le niveau de carburant sous forme de nombre, de 0.0 à 100.0
SetFuel vehicle, level (nombre) Rien
GetFuelType vehicle (handle d'entité) Une chaîne de caractères représentant la clé du carburant — 'gasoline', 'diesel', 'premium', 'electric'
IsElectric vehicle (handle d'entité) true ou false

Notes

GetFuel retourne 0.0 pour une entité invalide ou inexistante. Si le véhicule n'a jamais été vu auparavant, c'est cet appel qui génère son niveau Config.Consumption.SpawnFuel et l'écrit dans le state bag — ainsi, lire simplement le carburant d'une voiture neuve lui en attribue un.

SetFuel limite la valeur entre 0.0 et 100.0. Sur un véhicule en réseau, il écrit dans le state bag de l'entité, qui se réplique sur chaque client ; sur un véhicule local, il définit uniquement le niveau natif. Il s'agit d'un pourcentage, et non de litres — pour obtenir des litres, multipliez par la taille du réservoir de la classe de ce véhicule.

GetFuelType se résout dans le même ordre que la pompe : la liste électrique, puis Config.VehicleFuel.Model, puis la table des classes, avec comme solution de repli 'gasoline'.

IsElectric est un raccourci pour GetFuelType(vehicle) == 'electric'.

Le carburant est répliqué via le state bag fuel sur l'entité du véhicule. Toute ressource souhaitant surveiller les changements de carburant sans faire de polling peut ajouter son propre AddStateBagChangeHandler('fuel', ...) au lieu d'appeler GetFuel en boucle.

Gestionnaire d'objets d'inventaire

bupa-fuel.useJerryCan est le gestionnaire d'utilisation d'objet ox_inventory pour l'objet jerrycan. Vous y faites référence depuis la définition de l'objet — vous ne l'appelez pas vous-même.

ox_inventory/data/items.lua
client = { export = 'bupa-fuel.useJerryCan' }

Sur QBox, QB-Core et ESX, l'objet utilisable est enregistré en interne par la ressource, aucune configuration d'export n'est donc nécessaire.