Main/resources/[standalone]/fmLib/wrappers/client/vehicle.lua
2025-06-07 08:51:21 +02:00

135 lines
4.2 KiB
Lua

FM.vehicle = {}
---@param vehicle number
function FM.vehicle.getPlate(vehicle)
if not vehicle then return end
if ESX then
return ESX.Math.Trim(GetVehicleNumberPlateText(vehicle))
elseif QB then
return QB.Functions.GetPlate(vehicle)
end
end
---@param vehicle number
function FM.vehicle.giveKeys(vehicle)
if not vehicle then return end
local plate = FM.vehicle.getPlate(vehicle)
local model = GetDisplayNameFromVehicleModel(GetEntityModel(vehicle))
if QBVehKeys then
TriggerEvent("vehiclekeys:client:SetOwner", plate)
TriggerServerEvent('qb-vehiclekeys:server:AcquireVehicleKeys', plate)
elseif CDGarage then
TriggerEvent('cd_garage:AddKeys', plate)
elseif okokGarage then
TriggerServerEvent('okokGarage:GiveKeys', plate)
elseif QSVehKeys then
QSVehKeys:GiveKeys(plate, model, true)
elseif RenewedVehKeys then
RenewedVehKeys:addKey(plate)
elseif WASABI_CARLOCK then
WASABI_CARLOCK:GiveKey(plate)
elseif TGIANN_HOTWIRE then
TGIANN_HOTWIRE:GiveKeyPlate(plate, true)
elseif MM_CARKEYS then
MM_CARKEYS:GiveKey(plate)
elseif MRNNEWBVEHICLEKEYS then
MRNNEWBVEHICLEKEYS:GiveKey(plate)
elseif ISVehicleKeys then
ISVehicleKeys:GiveKey(plate)
elseif FAST_VEHICLEKEYS then
FAST_VEHICLEKEYS:GiveKey(plate)
elseif FILO_VEHICLEKEYS then
FILO_VEHICLEKEYS:GiveKeys(plate)
end
end
---@param vehicle number
function FM.vehicle.removeKeys(vehicle)
if not vehicle then return end
local plate = FM.vehicle.getPlate(vehicle)
if QBVehKeys then
TriggerEvent("vehiclekeys:client:RemoveKeys", plate)
elseif okokGarage then
TriggerServerEvent('okokGarage:RemoveKeys', plate)
elseif QSVehKeys then
QSVehKeys:RemoveKeys(plate)
elseif RenewedVehKeys then
RenewedVehKeys:removeKey(plate)
elseif WASABI_CARLOCK then
WASABI_CARLOCK:RemoveKey(plate)
elseif MM_CARKEYS then
MM_CARKEYS:RemoveKey(plate)
elseif MRNNEWBVEHICLEKEYS then
MRNNEWBVEHICLEKEYS:RemoveKey(plate)
end
end
---@param vehicle number
function FM.vehicle.hasKey(vehicle)
if not vehicle then return end
local plate = FM.vehicle.getPlate(vehicle)
if QBVehKeys then
QBVehKeys:hasKey(plate)
elseif CDGarage then
return CDGarage:DoesPlayerHaveKeys(plate)
elseif QSVehKeys then
return QSVehKeys:GetServerKey(plate)
elseif RenewedVehKeys then
return RenewedVehKeys:hasKey(plate)
elseif WASABI_CARLOCK then
return WASABI_CARLOCK:HasKey(plate)
elseif TGIANN_HOTWIRE then
return TGIANN_HOTWIRE:HasKeyPlate(plate)
elseif MRNNEWBVEHICLEKEYS then
return MRNNEWBVEHICLEKEYS:HasKey(plate)
end
end
---@param vehicle number
---@param fuelLvl number
function FM.vehicle.setFuel(vehicle, fuelLvl)
if not vehicle or fuelLvl == nil then return end
fuelLvl = fuelLvl + 0.0
if OXFUEL then
Entity(vehicle).state.fuel = fuelLvl
elseif LEGACYFUEL then
LEGACYFUEL:SetFuel(vehicle, fuelLvl)
elseif CDN_FUEL then
CDN_FUEL:SetFuel(vehicle, fuelLvl)
elseif RENEWED_FUEL then
RENEWED_FUEL:SetFuel(vehicle, fuelLvl)
elseif QBFUEL then
QBFUEL:SetFuel(vehicle, fuelLvl)
elseif LC_FUEL then
LC_FUEL:SetFuel(vehicle, fuelLvl)
elseif PS_FUEL then
PS_FUEL:SetFuel(vehicle, fuelLvl)
elseif RCORE_FUEL then
RCORE_FUEL:SetFuel(vehicle, fuelLvl)
elseif QS_FUEL then
QS_FUEL:SetFuel(vehicle, fuelLvl)
elseif ND_FUEL then
ND_FUEL:SetFuel(vehicle, fuelLvl)
elseif BIGDADDY_FUEL then
BIGDADDY_FUEL:SetFuel(vehicle, fuelLvl)
elseif GKS_FUEL then
GKS_FUEL:SetFuel(vehicle, fuelLvl)
elseif RIP_FUEL then
RIP_FUEL:SetFuel(vehicle, fuelLvl)
elseif MYFUEL then
MYFUEL:SetFuel(vehicle, fuelLvl)
elseif LJ_FUEL then
LJ_FUEL:SetFuel(vehicle, fuelLvl)
elseif MELONS_FUEL then
MELONS_FUEL:SetFuel(vehicle, fuelLvl)
else
SetVehicleFuelLevel(vehicle, fuelLvl)
end
end