Fuel & Seatbelt Integration

All speedometer presets share the same adapters. Keep your existing fuel/belt resource; Finals displays its status.


Fuel

Lua
Config.Fuel.mode = 'auto'

Auto checks configured GetFuel-compatible providers and native fuel. ox_fuel uses native fuel readings. Forks may expose different APIs, so choose an explicit adapter if needed:

Lua
Config.Fuel.mode = 'export'
Config.Fuel.resource = 'your-fuel'
Config.Fuel.exportName = 'GetFuel'
Config.Fuel.maxValue = 100 -- use 1 if the getter returns 0..1

The getter receives the vehicle handle. Custom readers can also be supplied:

Lua
Config.Fuel.mode = 'custom'
Config.Fuel.get = function(vehicle)
    return exports['your-fuel']:GetFuel(vehicle)
end

Statebag mode uses Config.Fuel.stateKey. Native mode reads GTA directly. Failed reads fall back safely. The reader does not consume, refill or change fuel.

Seatbelt state

Auto mode reads LocalPlayer.state.seatbelt/harness and the conventional QB toggle event. To use a state-bearing custom event:

Lua
Config.Seatbelt.mode = 'event'
Config.Seatbelt.event = 'your-belt:stateChanged'
Config.Seatbelt.eventMode = 'state'
Config.Seatbelt.eventArgument = 1
Config.Seatbelt.eventField = false

Use eventMode='toggle' only for a no-state toggle event. If an argument is {buckled=true}, set eventField='buckled'. Getter export mode:

Lua
Config.Seatbelt.mode = 'export'
Config.Seatbelt.resource = 'your-belt'
Config.Seatbelt.exportName = 'IsSeatbeltOn'
Config.Seatbelt.passVehicle = false

A belt client can push status with exports.finals_UI:setSeatbelt(true) or TriggerEvent('finals_UI:seatbelt:set', true).

Optional toggle forwarding

Lua
Config.Seatbelt.toggle = {type='event',name='your-belt:toggle'}
Config.Seatbelt.command = 'fuiseatbelt'
Config.Seatbelt.key = false

Supported toggle types are none, event, export and command. Export mode needs resource/name and optional passVehicle. Keep key=false when the original resource already binds a key. Finals forwards the request; the belt resource implements the actual toggle, physics and state update.

Holographic display

Choose Holographic in /hudedit. Config.Hud.hologram controls enabled, offset, rotation, displayScale, resolution, updateInterval, opacity, maxDistance, driverOnly, onlyEngineRunning and hideInFirstPerson. Offset is vehicle right/forward/up in metres; rotation is local degrees. Resolution is texture width, with half that height.

The renderer uses native textured world triangles without spawning a vehicle or replacing a model material. Motion reads directly from the occupied vehicle. fuihologramdebug in F8 compares native sent speed and browser acknowledgment. Test perspective and occlusion in-game.