Files
Elite-Gaming-FiveM/resources/ulc/client/c_cruise.lua
T
2025-01-28 07:05:49 -08:00

78 lines
2.3 KiB
Lua

--print("[ULC]: Cruise lights Loaded")
-- 1 disabled, 0 enabled
local sbState = 1
-- 0 on, 1 off
local function setCruiseLights(newState)
sbState = newState
for _, v in pairs(MyVehicleConfig.steadyBurnConfig.sbExtras) do
--print("Setting cruise lights extra: " .. v)
ULC:SetStage(v, newState, false, true, false, false, true, false)
end
end
local function getSteadyBurnState()
if IsVehicleExtraTurnedOn(MyVehicle, MyVehicleConfig.steadyBurnConfig.sbExtras[1]) then
return 0
else
return 1
end
end
CreateThread(function()
while true do
if MyVehicle then
TriggerEvent('ulc:CheckCruise', false)
end
Wait(1000)
end
end)
--TODO: disable when lights are on, enable when lights are off
AddEventHandler('ulc:lightsOn', function()
--print("Lights on")
if MyVehicle and (MyVehicleConfig.steadyBurnConfig.disableWithLights or false) then
setCruiseLights(1)
end
end)
AddEventHandler('ulc:lightsOff', function()
--print("Lights off")
if MyVehicle and (MyVehicleConfig.steadyBurnConfig.disableWithLights or false) then
TriggerEvent('ulc:CheckCruise')
end
end)
AddEventHandler('ulc:CheckCruise', function()
sbState = getSteadyBurnState()
if not MyVehicle then return end
if Entity(MyVehicle).state.ulc_blackout == 0 then
-- print("Blackout is on, disabling cruise lights")
setCruiseLights(1)
return
end
if MyVehicleConfig.steadyBurnConfig.forceOn then
if sbState == 0 then return end
if Lights and MyVehicleConfig.steadyBurnConfig.disableWithLights then return end
--print("Setting cruise lights on")
setCruiseLights(0)
elseif MyVehicleConfig.steadyBurnConfig.useTime then
local isTime = GetClockHours() > Config.SteadyBurnSettings.nightStartHour or
GetClockHours() < Config.SteadyBurnSettings.nightEndHour
if isTime then
-- if lights are already on do nothing
if sbState == 0 then return end
if Lights and MyVehicleConfig.steadyBurnConfig.disableWithLights then return end
setCruiseLights(0)
else
-- if already off do nothing
if sbState == 1 then return end
setCruiseLights(1)
end
end
end)