Skip to content

Exports

Exporturi

Patru exporturi pentru partea de client, destinate altor resurse care trebuie să citească sau să modifice nivelul de combustibil al unui vehicul. Această pagină documentează doar ceea ce există efectiv în resursă.

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 Argumente Returnează
GetFuel vehicle (identificator entitate) Nivelul de combustibil ca număr, 0.0100.0
SetFuel vehicle, level (număr) Nimic
GetFuelType vehicle (identificator entitate) Un șir de caractere pentru tipul de combustibil — 'gasoline', 'diesel', 'premium', 'electric'
IsElectric vehicle (identificator entitate) true sau false

Note

GetFuel returnează 0.0 pentru o entitate invalidă sau inexistentă. Dacă vehiculul nu a mai fost întâlnit până acum, acesta este apelul care generează nivelul Config.Consumption.SpawnFuel și îl scrie în state bag — așadar, simpla citire a combustibilului unei mașini noi este cea care îi atribuie unul.

SetFuel limitează valoarea între 0.0 și 100.0. Pe un vehicul sincronizat în rețea, scrie în state bag-ul entității, care se replică pe fiecare client; pe unul local, setează doar nivelul nativ. Este un procentaj, nu litri — pentru litri, înmulțește cu dimensiunea rezervorului pentru clasa acelui vehicul.

GetFuelType se rezolvă în aceeași ordine ca pompa: lista electrică, apoi Config.VehicleFuel.Model, apoi tabelul claselor, revenind la 'gasoline' în caz contrar.

IsElectric este o scurtătură pentru GetFuelType(vehicle) == 'electric'.

Combustibilul este replicat prin state bag-ul fuel de pe entitatea vehiculului. Orice resursă care dorește să monitorizeze modificările de combustibil fără a face interogări repetate (polling) poate adăuga propriul handler AddStateBagChangeHandler('fuel', ...) în loc să apeleze GetFuel într-o buclă (loop).

Handler pentru obiecte din inventar

bupa-fuel.useJerryCan este handler-ul de utilizare a obiectului ox_inventory pentru obiectul jerrycan. Îl referențiezi din definiția obiectului — nu îl apelezi tu direct.

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

Pe QBox, QB-Core și ESX, obiectul utilizabil este înregistrat intern de către resursă, așa că nu este necesară nicio configurare suplimentară de export acolo.