Scripts/resources/[qb]/[qb_jobs]/cad-diving/cl_diving.lua
2024-12-29 21:06:22 +01:00

73 lines
2.5 KiB
Lua

QBCore = exports['qb-core']:GetCoreObject()
local locations = {
[1] = {x = 3144.94, y = -280.54, z = -10.31},
[2] = {x = 3151.75, y = -286.02, z = -27.16},
[3] = {x = 3127.14, y = -341.26, z = -23.14},
[4] = {x = 3162.18, y = -357.39, z = -27.6},
[5] = {x = 3195.47, y = -388.18, z = -32.16},
[6] = {x = 3188.67, y = -395.82, z = -27.51},
[7] = {x = 3221.45, y = -405.6, z = -48.48},
[8] = {x = 3192.30, y = -385.23, z = -16.81},
}
local normal = {
[1] = {item = 'steel'},
[2] = {item = 'iron'},
[3] = {item = 'plastic'},
}
local rare = {
[1] = {item = 'goldbar'},
[2] = {item = 'diamond'},
}
local pickup = math.random(1, #locations)
Citizen.CreateThread(function()
Wait(1000)
CreateBlip()
while true do
inRange = false
x = locations[pickup].x
y = locations[pickup].y
z = locations[pickup].z
local playerPed = PlayerPedId()
local coords = GetEntityCoords(playerPed)
local distance = #(vector3(coords.x, coords.y, coords.z) - vector3(x, y, z))
if distance < 250 then
inRange = true
if distance > 3 then
QBCore.Functions.DrawText3D(x, y, z, "Distance: "..(math.floor(distance*10)/10).."m")
else
pickup = math.random(1, #locations)
local random = math.random(1, 1000)
if random > 0 and random < 600 then
TriggerServerEvent("cad-diving:collected", "normal", normal[math.random(1,#normal)].item, math.random(1, 4))
elseif random > 980 and random < 1000 then
TriggerServerEvent("cad-diving:collected", "rare", rare[math.random(1,#rare)].item, 1)
else
TriggerServerEvent("cad-diving:collected", "none", nil)
end
Citizen.Wait(2000)
end
end
if inRange then
Citizen.Wait(4)
else
Citizen.Wait(2000)
end
end
end)
function CreateBlip()
local divingblip = AddBlipForCoord(3146.24, -280.84, -8.44)
SetBlipSprite(divingblip, 465)
SetBlipDisplay(diving, 4)
SetBlipScale(divingblip, 0.9)
SetBlipColour(divingblip, 3)
SetBlipAsShortRange(divingblip, true)
BeginTextCommandSetBlipName("STRING")
AddTextComponentString('Sunket skib')
EndTextCommandSetBlipName(divingblip)
end