Skip to content

Exports

Exports

Cuatro exports del lado del cliente, para otros recursos que necesiten leer o cambiar el combustible de un vehículo. Esta página documenta únicamente lo que realmente existe en el recurso.

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 Argumentos Retorno
GetFuel vehicle (identificador de entidad) El nivel de combustible como número, 0.0100.0
SetFuel vehicle, level (número) Nada
GetFuelType vehicle (identificador de entidad) Una cadena de clave de combustible — 'gasoline', 'diesel', 'premium', 'electric'
IsElectric vehicle (identificador de entidad) true o false

Notas

GetFuel devuelve 0.0 para una entidad inválida o inexistente. Si el vehículo nunca antes ha sido visto, esta es la función que asigna su nivel de Config.Consumption.SpawnFuel y lo escribe en el state bag; por lo tanto, simplemente leer el combustible de un coche nuevo es lo que se lo otorga.

SetFuel limita el valor entre 0.0 y 100.0. En un vehículo en red, escribe en el state bag de la entidad, el cual se replica a cada cliente; en uno local, solo establece el nivel nativo. Es un porcentaje, no litros — para obtener litros, multiplícalo por el tamaño del tanque para la clase de ese vehículo.

GetFuelType se resuelve en el mismo orden que el surtidor: la lista de eléctricos, luego Config.VehicleFuel.Model, seguido de la tabla de clases, recurriendo a 'gasoline' por defecto.

IsElectric es un atajo para GetFuelType(vehicle) == 'electric'.

El combustible se replica a través del state bag fuel en la entidad del vehículo. Cualquier recurso que quiera supervisar los cambios de combustible sin sondeos (polling) puede añadir su propio AddStateBagChangeHandler('fuel', ...) en lugar de llamar a GetFuel en un bucle.

Manejador de objetos del inventario

bupa-fuel.useJerryCan es el manejador de uso de objetos de ox_inventory para el objeto jerrycan. Lo referencies desde la definición del objeto — no lo llamas tú mismo.

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

En QBox, QB-Core y ESX, el objeto utilizable se registra internamente por el recurso, por lo que no se necesita cableado de exports allí.