mirror of
https://github.com/qbcore-fivem/qb-core.git
synced 2026-08-28 17:01:16 +00:00
chore(client/functions): Merge fix
This commit is contained in:
+7
-3
@@ -46,13 +46,17 @@ end)
|
||||
RegisterNetEvent('QBCore:Command:SpawnVehicle', function(vehName)
|
||||
local ped = PlayerPedId()
|
||||
local hash = GetHashKey(vehName)
|
||||
if not IsModelInCdimage(hash) then return end
|
||||
if not IsModelInCdimage(hash) then
|
||||
return
|
||||
end
|
||||
RequestModel(hash)
|
||||
while not HasModelLoaded(hash) do Wait(10) end
|
||||
while not HasModelLoaded(hash) do
|
||||
Wait(10)
|
||||
end
|
||||
local vehicle = CreateVehicle(hash, GetEntityCoords(ped), GetEntityHeading(ped), true, false)
|
||||
TaskWarpPedIntoVehicle(ped, vehicle, -1)
|
||||
SetModelAsNoLongerNeeded(vehicle)
|
||||
TriggerEvent("vehiclekeys:client:SetOwner", GetVehicleNumberPlateText(vehicle))
|
||||
TriggerEvent("vehiclekeys:client:SetOwner", GetVehicleNumberPlateText(vehicle))
|
||||
end)
|
||||
|
||||
RegisterNetEvent('QBCore:Command:DeleteVehicle', function()
|
||||
|
||||
+407
-261
@@ -14,75 +14,83 @@ end
|
||||
function QBCore.Functions.GetCoords(entity)
|
||||
local coords = GetEntityCoords(entity, false)
|
||||
local heading = GetEntityHeading(entity)
|
||||
return vector4(coords.x, coords.y, coords.z, heading)
|
||||
return vector4(coords.x, coords.y, coords.z, heading)
|
||||
end
|
||||
|
||||
function QBCore.Functions.HasItem(item)
|
||||
QBCore.Functions.TriggerCallback('QBCore:HasItem', function(result)
|
||||
if result then
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end, item)
|
||||
return false
|
||||
QBCore.Functions.TriggerCallback('QBCore:HasItem', function(result)
|
||||
if result then
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end, item)
|
||||
return false
|
||||
end
|
||||
|
||||
-- Utility
|
||||
|
||||
function QBCore.Functions.DrawText(x, y, width, height, scale, r, g, b, a, text) -- Use local function instead
|
||||
SetTextFont(4)
|
||||
function QBCore.Functions.DrawText(x, y, width, height, scale, r, g, b, a, text)
|
||||
-- Use local function instead
|
||||
SetTextFont(4)
|
||||
SetTextProportional(0)
|
||||
SetTextScale(scale, scale)
|
||||
SetTextColour(r, g, b, a)
|
||||
SetTextDropShadow(0, 0, 0, 0,255)
|
||||
SetTextDropShadow(0, 0, 0, 0, 255)
|
||||
SetTextEdge(2, 0, 0, 0, 255)
|
||||
SetTextDropShadow()
|
||||
SetTextOutline()
|
||||
SetTextEntry('STRING')
|
||||
AddTextComponentString(text)
|
||||
DrawText(x - width/2, y - height/2 + 0.005)
|
||||
DrawText(x - width / 2, y - height / 2 + 0.005)
|
||||
end
|
||||
|
||||
function QBCore.Functions.DrawText3D(x, y, z, text) -- Use local function instead
|
||||
SetTextScale(0.35, 0.35)
|
||||
function QBCore.Functions.DrawText3D(x, y, z, text)
|
||||
-- Use local function instead
|
||||
SetTextScale(0.35, 0.35)
|
||||
SetTextFont(4)
|
||||
SetTextProportional(1)
|
||||
SetTextColour(255, 255, 255, 215)
|
||||
SetTextEntry('STRING')
|
||||
SetTextCentre(true)
|
||||
AddTextComponentString(text)
|
||||
SetDrawOrigin(x,y,z, 0)
|
||||
SetDrawOrigin(x, y, z, 0)
|
||||
DrawText(0.0, 0.0)
|
||||
local factor = (string.len(text)) / 370
|
||||
DrawRect(0.0, 0.0+0.0125, 0.017+ factor, 0.03, 0, 0, 0, 75)
|
||||
DrawRect(0.0, 0.0 + 0.0125, 0.017 + factor, 0.03, 0, 0, 0, 75)
|
||||
ClearDrawOrigin()
|
||||
end
|
||||
|
||||
RegisterNUICallback('getNotifyConfig', function(_, cb)
|
||||
cb(QBCore.Config.Notify)
|
||||
end)
|
||||
|
||||
function QBCore.Functions.Notify(text, textype, length)
|
||||
if type(text) == "table" then
|
||||
local ttext = text.text or 'Placeholder'
|
||||
local caption = text.caption or 'Placeholder'
|
||||
local ttype = textype or 'primary'
|
||||
local length = length or 5000
|
||||
SendNUIMessage({
|
||||
type = ttype,
|
||||
length = length,
|
||||
text = ttext,
|
||||
caption = caption
|
||||
})
|
||||
else
|
||||
local ttype = textype or 'primary'
|
||||
local length = length or 5000
|
||||
SendNUIMessage({
|
||||
type = ttype,
|
||||
length = length,
|
||||
text = text
|
||||
})
|
||||
end
|
||||
if type(text) == "table" then
|
||||
local ttext = text.text or 'Placeholder'
|
||||
local caption = text.caption or 'Placeholder'
|
||||
local ttype = textype or 'primary'
|
||||
local length = length or 5000
|
||||
SendNUIMessage({
|
||||
action = 'notify',
|
||||
type = ttype,
|
||||
length = length,
|
||||
text = ttext,
|
||||
caption = caption
|
||||
})
|
||||
else
|
||||
local ttype = textype or 'primary'
|
||||
local length = length or 5000
|
||||
SendNUIMessage({
|
||||
action = 'notify',
|
||||
type = ttype,
|
||||
length = length,
|
||||
text = text
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
function QBCore.Debug(resource, obj, depth)
|
||||
TriggerServerEvent('QBCore:DebugSomething', resource, obj, depth)
|
||||
TriggerServerEvent('QBCore:DebugSomething', resource, obj, depth)
|
||||
end
|
||||
|
||||
function QBCore.Functions.TriggerCallback(name, cb, ...)
|
||||
@@ -116,26 +124,32 @@ end
|
||||
|
||||
-- Getters
|
||||
|
||||
function QBCore.Functions.GetVehicles() return GetGamePool('CVehicle') end
|
||||
function QBCore.Functions.GetObjects() return GetGamePool('CObject') end
|
||||
function QBCore.Functions.GetPlayers() return GetActivePlayers() end
|
||||
function QBCore.Functions.GetVehicles()
|
||||
return GetGamePool('CVehicle')
|
||||
end
|
||||
function QBCore.Functions.GetObjects()
|
||||
return GetGamePool('CObject')
|
||||
end
|
||||
function QBCore.Functions.GetPlayers()
|
||||
return GetActivePlayers()
|
||||
end
|
||||
|
||||
function QBCore.Functions.GetPeds(ignoreList)
|
||||
local pedPool = GetGamePool('CPed')
|
||||
local ignoreList = ignoreList or {}
|
||||
local peds = {}
|
||||
for i = 1, #pedPool, 1 do
|
||||
local found = false
|
||||
for j=1, #ignoreList, 1 do
|
||||
if ignoreList[j] == pedPool[i] then
|
||||
found = true
|
||||
end
|
||||
end
|
||||
if not found then
|
||||
peds[#peds+1] = pedPool[i]
|
||||
end
|
||||
local found = false
|
||||
for j = 1, #ignoreList, 1 do
|
||||
if ignoreList[j] == pedPool[i] then
|
||||
found = true
|
||||
end
|
||||
end
|
||||
if not found then
|
||||
peds[#peds + 1] = pedPool[i]
|
||||
end
|
||||
end
|
||||
return peds
|
||||
return peds
|
||||
end
|
||||
|
||||
function QBCore.Functions.GetClosestPed(coords, ignoreList)
|
||||
@@ -171,18 +185,18 @@ function QBCore.Functions.GetClosestPlayer(coords)
|
||||
local closestPlayers = QBCore.Functions.GetPlayersFromCoords(coords)
|
||||
local closestDistance = -1
|
||||
local closestPlayer = -1
|
||||
for i=1, #closestPlayers, 1 do
|
||||
for i = 1, #closestPlayers, 1 do
|
||||
if closestPlayers[i] ~= PlayerId() and closestPlayers[i] ~= -1 then
|
||||
local pos = GetEntityCoords(GetPlayerPed(closestPlayers[i]))
|
||||
local distance = #(pos - coords)
|
||||
local distance = #(pos - coords)
|
||||
|
||||
if closestDistance == -1 or closestDistance > distance then
|
||||
closestPlayer = closestPlayers[i]
|
||||
closestDistance = distance
|
||||
end
|
||||
end
|
||||
end
|
||||
return closestPlayer, closestDistance
|
||||
end
|
||||
return closestPlayer, closestDistance
|
||||
end
|
||||
|
||||
function QBCore.Functions.GetPlayersFromCoords(coords, distance)
|
||||
@@ -196,36 +210,36 @@ function QBCore.Functions.GetPlayersFromCoords(coords, distance)
|
||||
local distance = distance or 5
|
||||
local closePlayers = {}
|
||||
for _, player in pairs(players) do
|
||||
local target = GetPlayerPed(player)
|
||||
local targetCoords = GetEntityCoords(target)
|
||||
local targetdistance = #(targetCoords - coords)
|
||||
if targetdistance <= distance then
|
||||
closePlayers[#closePlayers+1] = player
|
||||
end
|
||||
local target = GetPlayerPed(player)
|
||||
local targetCoords = GetEntityCoords(target)
|
||||
local targetdistance = #(targetCoords - coords)
|
||||
if targetdistance <= distance then
|
||||
closePlayers[#closePlayers + 1] = player
|
||||
end
|
||||
end
|
||||
return closePlayers
|
||||
end
|
||||
|
||||
function QBCore.Functions.GetClosestVehicle(coords)
|
||||
local ped = PlayerPedId()
|
||||
local vehicles = GetGamePool('CVehicle')
|
||||
local closestDistance = -1
|
||||
local closestVehicle = -1
|
||||
local ped = PlayerPedId()
|
||||
local vehicles = GetGamePool('CVehicle')
|
||||
local closestDistance = -1
|
||||
local closestVehicle = -1
|
||||
if coords then
|
||||
coords = type(coords) == 'table' and vec3(coords.x, coords.y, coords.z) or coords
|
||||
else
|
||||
coords = GetEntityCoords(ped)
|
||||
end
|
||||
for i=1, #vehicles, 1 do
|
||||
local vehicleCoords = GetEntityCoords(vehicles[i])
|
||||
local distance = #(vehicleCoords - coords)
|
||||
for i = 1, #vehicles, 1 do
|
||||
local vehicleCoords = GetEntityCoords(vehicles[i])
|
||||
local distance = #(vehicleCoords - coords)
|
||||
|
||||
if closestDistance == -1 or closestDistance > distance then
|
||||
closestVehicle = vehicles[i]
|
||||
closestDistance = distance
|
||||
end
|
||||
end
|
||||
return closestVehicle, closestDistance
|
||||
if closestDistance == -1 or closestDistance > distance then
|
||||
closestVehicle = vehicles[i]
|
||||
closestDistance = distance
|
||||
end
|
||||
end
|
||||
return closestVehicle, closestDistance
|
||||
end
|
||||
|
||||
function QBCore.Functions.GetClosestObject(coords)
|
||||
@@ -252,20 +266,20 @@ end
|
||||
-- Vehicle
|
||||
|
||||
local function Round(value, numDecimalPlaces)
|
||||
if numDecimalPlaces then
|
||||
local power = 10^numDecimalPlaces
|
||||
return math.floor((value * power) + 0.5) / (power)
|
||||
else
|
||||
return math.floor(value + 0.5)
|
||||
end
|
||||
if numDecimalPlaces then
|
||||
local power = 10 ^ numDecimalPlaces
|
||||
return math.floor((value * power) + 0.5) / (power)
|
||||
else
|
||||
return math.floor(value + 0.5)
|
||||
end
|
||||
end
|
||||
|
||||
local function Trim(value)
|
||||
if value then
|
||||
return (string.gsub(value, '^%s*(.-)%s*$', '%1'))
|
||||
else
|
||||
return nil
|
||||
end
|
||||
if value then
|
||||
return (string.gsub(value, '^%s*(.-)%s*$', '%1'))
|
||||
else
|
||||
return nil
|
||||
end
|
||||
end
|
||||
|
||||
function QBCore.Functions.SpawnVehicle(model, cb, coords, isnetworked)
|
||||
@@ -277,9 +291,13 @@ function QBCore.Functions.SpawnVehicle(model, cb, coords, isnetworked)
|
||||
coords = GetEntityCoords(ped)
|
||||
end
|
||||
local isnetworked = isnetworked or true
|
||||
if not IsModelInCdimage(model) then return end
|
||||
if not IsModelInCdimage(model) then
|
||||
return
|
||||
end
|
||||
RequestModel(model)
|
||||
while not HasModelLoaded(model) do Citizen.Wait(10) end
|
||||
while not HasModelLoaded(model) do
|
||||
Citizen.Wait(10)
|
||||
end
|
||||
local veh = CreateVehicle(model, coords.x, coords.y, coords.z, coords.w, isnetworked, false)
|
||||
local netid = NetworkGetNetworkIdFromEntity(veh)
|
||||
SetVehicleHasBeenOwnedByPlayer(veh, true)
|
||||
@@ -287,7 +305,9 @@ function QBCore.Functions.SpawnVehicle(model, cb, coords, isnetworked)
|
||||
SetVehicleNeedsToBeHotwired(veh, false)
|
||||
SetVehRadioStation(veh, 'OFF')
|
||||
SetModelAsNoLongerNeeded(model)
|
||||
if cb then cb(veh) end
|
||||
if cb then
|
||||
cb(veh)
|
||||
end
|
||||
end
|
||||
|
||||
function QBCore.Functions.DeleteVehicle(vehicle)
|
||||
@@ -296,184 +316,310 @@ function QBCore.Functions.DeleteVehicle(vehicle)
|
||||
end
|
||||
|
||||
function QBCore.Functions.GetVehicleProperties(vehicle)
|
||||
if DoesEntityExist(vehicle) then
|
||||
local colorPrimary, colorSecondary = GetVehicleColours(vehicle)
|
||||
local pearlescentColor, wheelColor = GetVehicleExtraColours(vehicle)
|
||||
local extras = {}
|
||||
if DoesEntityExist(vehicle) then
|
||||
local colorPrimary, colorSecondary = GetVehicleColours(vehicle)
|
||||
local pearlescentColor, wheelColor = GetVehicleExtraColours(vehicle)
|
||||
local extras = {}
|
||||
|
||||
for extraId=0, 12 do
|
||||
if DoesExtraExist(vehicle, extraId) then
|
||||
local state = IsVehicleExtraTurnedOn(vehicle, extraId) == 1
|
||||
extras[tostring(extraId)] = state
|
||||
end
|
||||
end
|
||||
for extraId = 0, 12 do
|
||||
if DoesExtraExist(vehicle, extraId) then
|
||||
local state = IsVehicleExtraTurnedOn(vehicle, extraId) == 1
|
||||
extras[tostring(extraId)] = state
|
||||
end
|
||||
end
|
||||
|
||||
return {
|
||||
model = GetEntityModel(vehicle),
|
||||
plate = Trim(GetVehicleNumberPlateText(vehicle)),
|
||||
plateIndex = GetVehicleNumberPlateTextIndex(vehicle),
|
||||
bodyHealth = Round(GetVehicleBodyHealth(vehicle), 1),
|
||||
engineHealth = Round(GetVehicleEngineHealth(vehicle), 1),
|
||||
tankHealth = Round(GetVehiclePetrolTankHealth(vehicle), 1),
|
||||
fuelLevel = Round(GetVehicleFuelLevel(vehicle), 1),
|
||||
dirtLevel = Round(GetVehicleDirtLevel(vehicle), 1),
|
||||
color1 = colorPrimary,
|
||||
color2 = colorSecondary,
|
||||
pearlescentColor = pearlescentColor,
|
||||
interiorColor = GetVehicleInteriorColor(vehicle),
|
||||
dashboardColor = GetVehicleDashboardColour(vehicle),
|
||||
wheelColor = wheelColor,
|
||||
wheels = GetVehicleWheelType(vehicle),
|
||||
windowTint = GetVehicleWindowTint(vehicle),
|
||||
xenonColor = GetVehicleXenonLightsColour(vehicle),
|
||||
neonEnabled = {
|
||||
IsVehicleNeonLightEnabled(vehicle, 0),
|
||||
IsVehicleNeonLightEnabled(vehicle, 1),
|
||||
IsVehicleNeonLightEnabled(vehicle, 2),
|
||||
IsVehicleNeonLightEnabled(vehicle, 3)
|
||||
},
|
||||
neonColor = table.pack(GetVehicleNeonLightsColour(vehicle)),
|
||||
extras = extras,
|
||||
tyreSmokeColor = table.pack(GetVehicleTyreSmokeColor(vehicle)),
|
||||
modSpoilers = GetVehicleMod(vehicle, 0),
|
||||
modFrontBumper = GetVehicleMod(vehicle, 1),
|
||||
modRearBumper = GetVehicleMod(vehicle, 2),
|
||||
modSideSkirt = GetVehicleMod(vehicle, 3),
|
||||
modExhaust = GetVehicleMod(vehicle, 4),
|
||||
modFrame = GetVehicleMod(vehicle, 5),
|
||||
modGrille = GetVehicleMod(vehicle, 6),
|
||||
modHood = GetVehicleMod(vehicle, 7),
|
||||
modFender = GetVehicleMod(vehicle, 8),
|
||||
modRightFender = GetVehicleMod(vehicle, 9),
|
||||
modRoof = GetVehicleMod(vehicle, 10),
|
||||
modEngine = GetVehicleMod(vehicle, 11),
|
||||
modBrakes = GetVehicleMod(vehicle, 12),
|
||||
modTransmission = GetVehicleMod(vehicle, 13),
|
||||
modHorns = GetVehicleMod(vehicle, 14),
|
||||
modSuspension = GetVehicleMod(vehicle, 15),
|
||||
modArmor = GetVehicleMod(vehicle, 16),
|
||||
modTurbo = IsToggleModOn(vehicle, 18),
|
||||
modSmokeEnabled = IsToggleModOn(vehicle, 20),
|
||||
modXenon = IsToggleModOn(vehicle, 22),
|
||||
modFrontWheels = GetVehicleMod(vehicle, 23),
|
||||
modBackWheels = GetVehicleMod(vehicle, 24),
|
||||
modCustomTiresF = GetVehicleModVariation(vehicle, 23),
|
||||
modCustomTiresR = GetVehicleModVariation(vehicle, 24),
|
||||
modPlateHolder = GetVehicleMod(vehicle, 25),
|
||||
modVanityPlate = GetVehicleMod(vehicle, 26),
|
||||
modTrimA = GetVehicleMod(vehicle, 27),
|
||||
modOrnaments = GetVehicleMod(vehicle, 28),
|
||||
modDashboard = GetVehicleMod(vehicle, 29),
|
||||
modDial = GetVehicleMod(vehicle, 30),
|
||||
modDoorSpeaker = GetVehicleMod(vehicle, 31),
|
||||
modSeats = GetVehicleMod(vehicle, 32),
|
||||
modSteeringWheel = GetVehicleMod(vehicle, 33),
|
||||
modShifterLeavers = GetVehicleMod(vehicle, 34),
|
||||
modAPlate = GetVehicleMod(vehicle, 35),
|
||||
modSpeakers = GetVehicleMod(vehicle, 36),
|
||||
modTrunk = GetVehicleMod(vehicle, 37),
|
||||
modHydrolic = GetVehicleMod(vehicle, 38),
|
||||
modEngineBlock = GetVehicleMod(vehicle, 39),
|
||||
modAirFilter = GetVehicleMod(vehicle, 40),
|
||||
modStruts = GetVehicleMod(vehicle, 41),
|
||||
modArchCover = GetVehicleMod(vehicle, 42),
|
||||
modAerials = GetVehicleMod(vehicle, 43),
|
||||
modTrimB = GetVehicleMod(vehicle, 44),
|
||||
modTank = GetVehicleMod(vehicle, 45),
|
||||
modWindows = GetVehicleMod(vehicle, 46),
|
||||
modLivery = GetVehicleMod(vehicle, 48),
|
||||
}
|
||||
else
|
||||
return
|
||||
end
|
||||
return {
|
||||
model = GetEntityModel(vehicle),
|
||||
plate = Trim(GetVehicleNumberPlateText(vehicle)),
|
||||
plateIndex = GetVehicleNumberPlateTextIndex(vehicle),
|
||||
bodyHealth = Round(GetVehicleBodyHealth(vehicle), 1),
|
||||
engineHealth = Round(GetVehicleEngineHealth(vehicle), 1),
|
||||
tankHealth = Round(GetVehiclePetrolTankHealth(vehicle), 1),
|
||||
fuelLevel = Round(GetVehicleFuelLevel(vehicle), 1),
|
||||
dirtLevel = Round(GetVehicleDirtLevel(vehicle), 1),
|
||||
color1 = colorPrimary,
|
||||
color2 = colorSecondary,
|
||||
pearlescentColor = pearlescentColor,
|
||||
interiorColor = GetVehicleInteriorColor(vehicle),
|
||||
dashboardColor = GetVehicleDashboardColour(vehicle),
|
||||
wheelColor = wheelColor,
|
||||
wheels = GetVehicleWheelType(vehicle),
|
||||
windowTint = GetVehicleWindowTint(vehicle),
|
||||
xenonColor = GetVehicleXenonLightsColour(vehicle),
|
||||
neonEnabled = {
|
||||
IsVehicleNeonLightEnabled(vehicle, 0),
|
||||
IsVehicleNeonLightEnabled(vehicle, 1),
|
||||
IsVehicleNeonLightEnabled(vehicle, 2),
|
||||
IsVehicleNeonLightEnabled(vehicle, 3)
|
||||
},
|
||||
neonColor = table.pack(GetVehicleNeonLightsColour(vehicle)),
|
||||
extras = extras,
|
||||
tyreSmokeColor = table.pack(GetVehicleTyreSmokeColor(vehicle)),
|
||||
modSpoilers = GetVehicleMod(vehicle, 0),
|
||||
modFrontBumper = GetVehicleMod(vehicle, 1),
|
||||
modRearBumper = GetVehicleMod(vehicle, 2),
|
||||
modSideSkirt = GetVehicleMod(vehicle, 3),
|
||||
modExhaust = GetVehicleMod(vehicle, 4),
|
||||
modFrame = GetVehicleMod(vehicle, 5),
|
||||
modGrille = GetVehicleMod(vehicle, 6),
|
||||
modHood = GetVehicleMod(vehicle, 7),
|
||||
modFender = GetVehicleMod(vehicle, 8),
|
||||
modRightFender = GetVehicleMod(vehicle, 9),
|
||||
modRoof = GetVehicleMod(vehicle, 10),
|
||||
modEngine = GetVehicleMod(vehicle, 11),
|
||||
modBrakes = GetVehicleMod(vehicle, 12),
|
||||
modTransmission = GetVehicleMod(vehicle, 13),
|
||||
modHorns = GetVehicleMod(vehicle, 14),
|
||||
modSuspension = GetVehicleMod(vehicle, 15),
|
||||
modArmor = GetVehicleMod(vehicle, 16),
|
||||
modTurbo = IsToggleModOn(vehicle, 18),
|
||||
modSmokeEnabled = IsToggleModOn(vehicle, 20),
|
||||
modXenon = IsToggleModOn(vehicle, 22),
|
||||
modFrontWheels = GetVehicleMod(vehicle, 23),
|
||||
modBackWheels = GetVehicleMod(vehicle, 24),
|
||||
modCustomTiresF = GetVehicleModVariation(vehicle, 23),
|
||||
modCustomTiresR = GetVehicleModVariation(vehicle, 24),
|
||||
modPlateHolder = GetVehicleMod(vehicle, 25),
|
||||
modVanityPlate = GetVehicleMod(vehicle, 26),
|
||||
modTrimA = GetVehicleMod(vehicle, 27),
|
||||
modOrnaments = GetVehicleMod(vehicle, 28),
|
||||
modDashboard = GetVehicleMod(vehicle, 29),
|
||||
modDial = GetVehicleMod(vehicle, 30),
|
||||
modDoorSpeaker = GetVehicleMod(vehicle, 31),
|
||||
modSeats = GetVehicleMod(vehicle, 32),
|
||||
modSteeringWheel = GetVehicleMod(vehicle, 33),
|
||||
modShifterLeavers = GetVehicleMod(vehicle, 34),
|
||||
modAPlate = GetVehicleMod(vehicle, 35),
|
||||
modSpeakers = GetVehicleMod(vehicle, 36),
|
||||
modTrunk = GetVehicleMod(vehicle, 37),
|
||||
modHydrolic = GetVehicleMod(vehicle, 38),
|
||||
modEngineBlock = GetVehicleMod(vehicle, 39),
|
||||
modAirFilter = GetVehicleMod(vehicle, 40),
|
||||
modStruts = GetVehicleMod(vehicle, 41),
|
||||
modArchCover = GetVehicleMod(vehicle, 42),
|
||||
modAerials = GetVehicleMod(vehicle, 43),
|
||||
modTrimB = GetVehicleMod(vehicle, 44),
|
||||
modTank = GetVehicleMod(vehicle, 45),
|
||||
modWindows = GetVehicleMod(vehicle, 46),
|
||||
modLivery = GetVehicleMod(vehicle, 48),
|
||||
}
|
||||
else
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
function QBCore.Functions.SetVehicleProperties(vehicle, props)
|
||||
if DoesEntityExist(vehicle) then
|
||||
local colorPrimary, colorSecondary = GetVehicleColours(vehicle)
|
||||
local pearlescentColor, wheelColor = GetVehicleExtraColours(vehicle)
|
||||
SetVehicleModKit(vehicle, 0)
|
||||
if props.plate then SetVehicleNumberPlateText(vehicle, props.plate) end
|
||||
if props.plateIndex then SetVehicleNumberPlateTextIndex(vehicle, props.plateIndex) end
|
||||
if props.bodyHealth then SetVehicleBodyHealth(vehicle, props.bodyHealth + 0.0) end
|
||||
if props.engineHealth then SetVehicleEngineHealth(vehicle, props.engineHealth + 0.0) end
|
||||
if props.fuelLevel then SetVehicleFuelLevel(vehicle, props.fuelLevel + 0.0) end
|
||||
if props.dirtLevel then SetVehicleDirtLevel(vehicle, props.dirtLevel + 0.0) end
|
||||
if props.color1 then SetVehicleColours(vehicle, props.color1, colorSecondary) end
|
||||
if props.color2 then SetVehicleColours(vehicle, props.color1 or colorPrimary, props.color2) end
|
||||
if props.pearlescentColor then SetVehicleExtraColours(vehicle, props.pearlescentColor, wheelColor) end
|
||||
if props.interiorColor then SetVehicleInteriorColor(vehicle, props.interiorColor) end
|
||||
if props.dashboardColor then SetVehicleDashboardColour(vehicle, props.dashboardColor) end
|
||||
if props.wheelColor then SetVehicleExtraColours(vehicle, props.pearlescentColor or pearlescentColor, props.wheelColor) end
|
||||
if props.wheels then SetVehicleWheelType(vehicle, props.wheels) end
|
||||
if props.windowTint then SetVehicleWindowTint(vehicle, props.windowTint) end
|
||||
if props.neonEnabled then
|
||||
SetVehicleNeonLightEnabled(vehicle, 0, props.neonEnabled[1])
|
||||
SetVehicleNeonLightEnabled(vehicle, 1, props.neonEnabled[2])
|
||||
SetVehicleNeonLightEnabled(vehicle, 2, props.neonEnabled[3])
|
||||
SetVehicleNeonLightEnabled(vehicle, 3, props.neonEnabled[4])
|
||||
end
|
||||
if props.extras then
|
||||
for id,enabled in pairs(props.extras) do
|
||||
if enabled then
|
||||
SetVehicleExtra(vehicle, tonumber(id), 0)
|
||||
else
|
||||
SetVehicleExtra(vehicle, tonumber(id), 1)
|
||||
end
|
||||
end
|
||||
end
|
||||
if props.neonColor then SetVehicleNeonLightsColour(vehicle, props.neonColor[1], props.neonColor[2], props.neonColor[3]) end
|
||||
if props.modSmokeEnabled then ToggleVehicleMod(vehicle, 20, true) end
|
||||
if props.tyreSmokeColor then SetVehicleTyreSmokeColor(vehicle, props.tyreSmokeColor[1], props.tyreSmokeColor[2], props.tyreSmokeColor[3]) end
|
||||
if props.modSpoilers then SetVehicleMod(vehicle, 0, props.modSpoilers, false) end
|
||||
if props.modFrontBumper then SetVehicleMod(vehicle, 1, props.modFrontBumper, false) end
|
||||
if props.modRearBumper then SetVehicleMod(vehicle, 2, props.modRearBumper, false) end
|
||||
if props.modSideSkirt then SetVehicleMod(vehicle, 3, props.modSideSkirt, false) end
|
||||
if props.modExhaust then SetVehicleMod(vehicle, 4, props.modExhaust, false) end
|
||||
if props.modFrame then SetVehicleMod(vehicle, 5, props.modFrame, false) end
|
||||
if props.modGrille then SetVehicleMod(vehicle, 6, props.modGrille, false) end
|
||||
if props.modHood then SetVehicleMod(vehicle, 7, props.modHood, false) end
|
||||
if props.modFender then SetVehicleMod(vehicle, 8, props.modFender, false) end
|
||||
if props.modRightFender then SetVehicleMod(vehicle, 9, props.modRightFender, false) end
|
||||
if props.modRoof then SetVehicleMod(vehicle, 10, props.modRoof, false) end
|
||||
if props.modEngine then SetVehicleMod(vehicle, 11, props.modEngine, false) end
|
||||
if props.modBrakes then SetVehicleMod(vehicle, 12, props.modBrakes, false) end
|
||||
if props.modTransmission then SetVehicleMod(vehicle, 13, props.modTransmission, false) end
|
||||
if props.modHorns then SetVehicleMod(vehicle, 14, props.modHorns, false) end
|
||||
if props.modSuspension then SetVehicleMod(vehicle, 15, props.modSuspension, false) end
|
||||
if props.modArmor then SetVehicleMod(vehicle, 16, props.modArmor, false) end
|
||||
if props.modTurbo then ToggleVehicleMod(vehicle, 18, props.modTurbo) end
|
||||
if props.modXenon then ToggleVehicleMod(vehicle, 22, props.modXenon) end
|
||||
if props.xenonColor then SetVehicleXenonLightsColor(vehicle, props.xenonColor) end
|
||||
if props.modFrontWheels then SetVehicleMod(vehicle, 23, props.modFrontWheels, false) end
|
||||
if props.modBackWheels then SetVehicleMod(vehicle, 24, props.modBackWheels, false) end
|
||||
if props.modCustomTiresF then SetVehicleMod(vehicle, 23, props.modFrontWheels, props.modCustomTiresF) end
|
||||
if props.modCustomTiresR then SetVehicleMod(vehicle, 24, props.modBackWheels, props.modCustomTiresR) end
|
||||
if props.modPlateHolder then SetVehicleMod(vehicle, 25, props.modPlateHolder, false) end
|
||||
if props.modVanityPlate then SetVehicleMod(vehicle, 26, props.modVanityPlate, false) end
|
||||
if props.modTrimA then SetVehicleMod(vehicle, 27, props.modTrimA, false) end
|
||||
if props.modOrnaments then SetVehicleMod(vehicle, 28, props.modOrnaments, false) end
|
||||
if props.modDashboard then SetVehicleMod(vehicle, 29, props.modDashboard, false) end
|
||||
if props.modDial then SetVehicleMod(vehicle, 30, props.modDial, false) end
|
||||
if props.modDoorSpeaker then SetVehicleMod(vehicle, 31, props.modDoorSpeaker, false) end
|
||||
if props.modSeats then SetVehicleMod(vehicle, 32, props.modSeats, false) end
|
||||
if props.modSteeringWheel then SetVehicleMod(vehicle, 33, props.modSteeringWheel, false) end
|
||||
if props.modShifterLeavers then SetVehicleMod(vehicle, 34, props.modShifterLeavers, false) end
|
||||
if props.modAPlate then SetVehicleMod(vehicle, 35, props.modAPlate, false) end
|
||||
if props.modSpeakers then SetVehicleMod(vehicle, 36, props.modSpeakers, false) end
|
||||
if props.modTrunk then SetVehicleMod(vehicle, 37, props.modTrunk, false) end
|
||||
if props.modHydrolic then SetVehicleMod(vehicle, 38, props.modHydrolic, false) end
|
||||
if props.modEngineBlock then SetVehicleMod(vehicle, 39, props.modEngineBlock, false) end
|
||||
if props.modAirFilter then SetVehicleMod(vehicle, 40, props.modAirFilter, false) end
|
||||
if props.modStruts then SetVehicleMod(vehicle, 41, props.modStruts, false) end
|
||||
if props.modArchCover then SetVehicleMod(vehicle, 42, props.modArchCover, false) end
|
||||
if props.modAerials then SetVehicleMod(vehicle, 43, props.modAerials, false) end
|
||||
if props.modTrimB then SetVehicleMod(vehicle, 44, props.modTrimB, false) end
|
||||
if props.modTank then SetVehicleMod(vehicle, 45, props.modTank, false) end
|
||||
if props.modWindows then SetVehicleMod(vehicle, 46, props.modWindows, false) end
|
||||
if props.modLivery then
|
||||
SetVehicleMod(vehicle, 48, props.modLivery, false)
|
||||
SetVehicleLivery(vehicle, props.modLivery)
|
||||
end
|
||||
end
|
||||
local colorPrimary, colorSecondary = GetVehicleColours(vehicle)
|
||||
local pearlescentColor, wheelColor = GetVehicleExtraColours(vehicle)
|
||||
SetVehicleModKit(vehicle, 0)
|
||||
if props.plate then
|
||||
SetVehicleNumberPlateText(vehicle, props.plate)
|
||||
end
|
||||
if props.plateIndex then
|
||||
SetVehicleNumberPlateTextIndex(vehicle, props.plateIndex)
|
||||
end
|
||||
if props.bodyHealth then
|
||||
SetVehicleBodyHealth(vehicle, props.bodyHealth + 0.0)
|
||||
end
|
||||
if props.engineHealth then
|
||||
SetVehicleEngineHealth(vehicle, props.engineHealth + 0.0)
|
||||
end
|
||||
if props.fuelLevel then
|
||||
SetVehicleFuelLevel(vehicle, props.fuelLevel + 0.0)
|
||||
end
|
||||
if props.dirtLevel then
|
||||
SetVehicleDirtLevel(vehicle, props.dirtLevel + 0.0)
|
||||
end
|
||||
if props.color1 then
|
||||
SetVehicleColours(vehicle, props.color1, colorSecondary)
|
||||
end
|
||||
if props.color2 then
|
||||
SetVehicleColours(vehicle, props.color1 or colorPrimary, props.color2)
|
||||
end
|
||||
if props.pearlescentColor then
|
||||
SetVehicleExtraColours(vehicle, props.pearlescentColor, wheelColor)
|
||||
end
|
||||
if props.interiorColor then
|
||||
SetVehicleInteriorColor(vehicle, props.interiorColor)
|
||||
end
|
||||
if props.dashboardColor then
|
||||
SetVehicleDashboardColour(vehicle, props.dashboardColor)
|
||||
end
|
||||
if props.wheelColor then
|
||||
SetVehicleExtraColours(vehicle, props.pearlescentColor or pearlescentColor, props.wheelColor)
|
||||
end
|
||||
if props.wheels then
|
||||
SetVehicleWheelType(vehicle, props.wheels)
|
||||
end
|
||||
if props.windowTint then
|
||||
SetVehicleWindowTint(vehicle, props.windowTint)
|
||||
end
|
||||
if props.neonEnabled then
|
||||
SetVehicleNeonLightEnabled(vehicle, 0, props.neonEnabled[1])
|
||||
SetVehicleNeonLightEnabled(vehicle, 1, props.neonEnabled[2])
|
||||
SetVehicleNeonLightEnabled(vehicle, 2, props.neonEnabled[3])
|
||||
SetVehicleNeonLightEnabled(vehicle, 3, props.neonEnabled[4])
|
||||
end
|
||||
if props.extras then
|
||||
for id, enabled in pairs(props.extras) do
|
||||
if enabled then
|
||||
SetVehicleExtra(vehicle, tonumber(id), 0)
|
||||
else
|
||||
SetVehicleExtra(vehicle, tonumber(id), 1)
|
||||
end
|
||||
end
|
||||
end
|
||||
if props.neonColor then
|
||||
SetVehicleNeonLightsColour(vehicle, props.neonColor[1], props.neonColor[2], props.neonColor[3])
|
||||
end
|
||||
if props.modSmokeEnabled then
|
||||
ToggleVehicleMod(vehicle, 20, true)
|
||||
end
|
||||
if props.tyreSmokeColor then
|
||||
SetVehicleTyreSmokeColor(vehicle, props.tyreSmokeColor[1], props.tyreSmokeColor[2], props.tyreSmokeColor[3])
|
||||
end
|
||||
if props.modSpoilers then
|
||||
SetVehicleMod(vehicle, 0, props.modSpoilers, false)
|
||||
end
|
||||
if props.modFrontBumper then
|
||||
SetVehicleMod(vehicle, 1, props.modFrontBumper, false)
|
||||
end
|
||||
if props.modRearBumper then
|
||||
SetVehicleMod(vehicle, 2, props.modRearBumper, false)
|
||||
end
|
||||
if props.modSideSkirt then
|
||||
SetVehicleMod(vehicle, 3, props.modSideSkirt, false)
|
||||
end
|
||||
if props.modExhaust then
|
||||
SetVehicleMod(vehicle, 4, props.modExhaust, false)
|
||||
end
|
||||
if props.modFrame then
|
||||
SetVehicleMod(vehicle, 5, props.modFrame, false)
|
||||
end
|
||||
if props.modGrille then
|
||||
SetVehicleMod(vehicle, 6, props.modGrille, false)
|
||||
end
|
||||
if props.modHood then
|
||||
SetVehicleMod(vehicle, 7, props.modHood, false)
|
||||
end
|
||||
if props.modFender then
|
||||
SetVehicleMod(vehicle, 8, props.modFender, false)
|
||||
end
|
||||
if props.modRightFender then
|
||||
SetVehicleMod(vehicle, 9, props.modRightFender, false)
|
||||
end
|
||||
if props.modRoof then
|
||||
SetVehicleMod(vehicle, 10, props.modRoof, false)
|
||||
end
|
||||
if props.modEngine then
|
||||
SetVehicleMod(vehicle, 11, props.modEngine, false)
|
||||
end
|
||||
if props.modBrakes then
|
||||
SetVehicleMod(vehicle, 12, props.modBrakes, false)
|
||||
end
|
||||
if props.modTransmission then
|
||||
SetVehicleMod(vehicle, 13, props.modTransmission, false)
|
||||
end
|
||||
if props.modHorns then
|
||||
SetVehicleMod(vehicle, 14, props.modHorns, false)
|
||||
end
|
||||
if props.modSuspension then
|
||||
SetVehicleMod(vehicle, 15, props.modSuspension, false)
|
||||
end
|
||||
if props.modArmor then
|
||||
SetVehicleMod(vehicle, 16, props.modArmor, false)
|
||||
end
|
||||
if props.modTurbo then
|
||||
ToggleVehicleMod(vehicle, 18, props.modTurbo)
|
||||
end
|
||||
if props.modXenon then
|
||||
ToggleVehicleMod(vehicle, 22, props.modXenon)
|
||||
end
|
||||
if props.xenonColor then
|
||||
SetVehicleXenonLightsColor(vehicle, props.xenonColor)
|
||||
end
|
||||
if props.modFrontWheels then
|
||||
SetVehicleMod(vehicle, 23, props.modFrontWheels, false)
|
||||
end
|
||||
if props.modBackWheels then
|
||||
SetVehicleMod(vehicle, 24, props.modBackWheels, false)
|
||||
end
|
||||
if props.modCustomTiresF then
|
||||
SetVehicleMod(vehicle, 23, props.modFrontWheels, props.modCustomTiresF)
|
||||
end
|
||||
if props.modCustomTiresR then
|
||||
SetVehicleMod(vehicle, 24, props.modBackWheels, props.modCustomTiresR)
|
||||
end
|
||||
if props.modPlateHolder then
|
||||
SetVehicleMod(vehicle, 25, props.modPlateHolder, false)
|
||||
end
|
||||
if props.modVanityPlate then
|
||||
SetVehicleMod(vehicle, 26, props.modVanityPlate, false)
|
||||
end
|
||||
if props.modTrimA then
|
||||
SetVehicleMod(vehicle, 27, props.modTrimA, false)
|
||||
end
|
||||
if props.modOrnaments then
|
||||
SetVehicleMod(vehicle, 28, props.modOrnaments, false)
|
||||
end
|
||||
if props.modDashboard then
|
||||
SetVehicleMod(vehicle, 29, props.modDashboard, false)
|
||||
end
|
||||
if props.modDial then
|
||||
SetVehicleMod(vehicle, 30, props.modDial, false)
|
||||
end
|
||||
if props.modDoorSpeaker then
|
||||
SetVehicleMod(vehicle, 31, props.modDoorSpeaker, false)
|
||||
end
|
||||
if props.modSeats then
|
||||
SetVehicleMod(vehicle, 32, props.modSeats, false)
|
||||
end
|
||||
if props.modSteeringWheel then
|
||||
SetVehicleMod(vehicle, 33, props.modSteeringWheel, false)
|
||||
end
|
||||
if props.modShifterLeavers then
|
||||
SetVehicleMod(vehicle, 34, props.modShifterLeavers, false)
|
||||
end
|
||||
if props.modAPlate then
|
||||
SetVehicleMod(vehicle, 35, props.modAPlate, false)
|
||||
end
|
||||
if props.modSpeakers then
|
||||
SetVehicleMod(vehicle, 36, props.modSpeakers, false)
|
||||
end
|
||||
if props.modTrunk then
|
||||
SetVehicleMod(vehicle, 37, props.modTrunk, false)
|
||||
end
|
||||
if props.modHydrolic then
|
||||
SetVehicleMod(vehicle, 38, props.modHydrolic, false)
|
||||
end
|
||||
if props.modEngineBlock then
|
||||
SetVehicleMod(vehicle, 39, props.modEngineBlock, false)
|
||||
end
|
||||
if props.modAirFilter then
|
||||
SetVehicleMod(vehicle, 40, props.modAirFilter, false)
|
||||
end
|
||||
if props.modStruts then
|
||||
SetVehicleMod(vehicle, 41, props.modStruts, false)
|
||||
end
|
||||
if props.modArchCover then
|
||||
SetVehicleMod(vehicle, 42, props.modArchCover, false)
|
||||
end
|
||||
if props.modAerials then
|
||||
SetVehicleMod(vehicle, 43, props.modAerials, false)
|
||||
end
|
||||
if props.modTrimB then
|
||||
SetVehicleMod(vehicle, 44, props.modTrimB, false)
|
||||
end
|
||||
if props.modTank then
|
||||
SetVehicleMod(vehicle, 45, props.modTank, false)
|
||||
end
|
||||
if props.modWindows then
|
||||
SetVehicleMod(vehicle, 46, props.modWindows, false)
|
||||
end
|
||||
if props.modLivery then
|
||||
SetVehicleMod(vehicle, 48, props.modLivery, false)
|
||||
SetVehicleLivery(vehicle, props.modLivery)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
+1
-1
@@ -13,7 +13,7 @@ CreateThread(function()
|
||||
Wait(QBCore.Config.StatusInterval)
|
||||
if LocalPlayer.state['isLoggedIn'] then
|
||||
if QBCore.Functions.GetPlayerData().metadata['hunger'] <= 0 or
|
||||
QBCore.Functions.GetPlayerData().metadata['thirst'] <= 0 then
|
||||
QBCore.Functions.GetPlayerData().metadata['thirst'] <= 0 then
|
||||
local ped = PlayerPedId()
|
||||
local currentHealth = GetEntityHealth(ped)
|
||||
SetEntityHealth(ped, currentHealth - math.random(5, 10))
|
||||
|
||||
+1
-1
@@ -5,7 +5,7 @@ QBCore.Shared = QBShared
|
||||
QBCore.ServerCallbacks = {}
|
||||
|
||||
exports('GetCoreObject', function()
|
||||
return QBCore
|
||||
return QBCore
|
||||
end)
|
||||
|
||||
-- To use this export in a script instead of manifest method
|
||||
|
||||
Reference in New Issue
Block a user