74 lines
2.8 KiB
Lua
74 lines
2.8 KiB
Lua
function Draw2DText(content, font, colour, scale, x, y)
|
|
SetTextFont(font)
|
|
SetTextScale(scale, scale)
|
|
SetTextColour(colour[1], colour[2], colour[3], 255)
|
|
SetTextEntry("STRING")
|
|
SetTextDropShadow(0, 0, 0, 0, 255)
|
|
SetTextDropShadow()
|
|
SetTextEdge(4, 0, 0, 0, 255)
|
|
SetTextOutline()
|
|
AddTextComponentString(content)
|
|
DrawText(x, y)
|
|
end
|
|
|
|
function RotationToDirection(rotation)
|
|
local adjustedRotation = {
|
|
x = (math.pi / 180) * rotation.x,
|
|
y = (math.pi / 180) * rotation.y,
|
|
z = (math.pi / 180) * rotation.z
|
|
}
|
|
local direction = {
|
|
x = -math.sin(adjustedRotation.z) * math.abs(math.cos(adjustedRotation.x)),
|
|
y = math.cos(adjustedRotation.z) * math.abs(math.cos(adjustedRotation.x)),
|
|
z = math.sin(adjustedRotation.x)
|
|
}
|
|
return direction
|
|
end
|
|
|
|
function RayCastGamePlayCamera(distance)
|
|
local cameraRotation = GetGameplayCamRot()
|
|
local cameraCoord = GetGameplayCamCoord()
|
|
local direction = RotationToDirection(cameraRotation)
|
|
local destination = {
|
|
x = cameraCoord.x + direction.x * distance,
|
|
y = cameraCoord.y + direction.y * distance,
|
|
z = cameraCoord.z + direction.z * distance
|
|
}
|
|
local a, b, c, d, e = GetShapeTestResult(StartShapeTestRay(cameraCoord.x, cameraCoord.y, cameraCoord.z,
|
|
destination.x, destination.y, destination.z, -1, PlayerPedId(), 0))
|
|
return c, e
|
|
end
|
|
|
|
-- -- flip car if needed
|
|
-- local bones = { 'bodyshell' }
|
|
-- exports['qb-target']:AddTargetBone(bones, {
|
|
-- options = { { -- This is the first table with options, you can make as many options inside the options table as you want
|
|
-- type = "client",
|
|
-- icon = "fa-solid fa-scythe",
|
|
-- label = "Flip",
|
|
-- action = function(entity)
|
|
-- local QBcore = exports['qb-core']:GetCoreObject()
|
|
-- QBcore.Functions.Progressbar("flipingcAr", "Fliping car", Config.Settings.carFlipingDuration * 1000,
|
|
-- false, false, {
|
|
-- disableMovement = true,
|
|
-- disableCarMovement = true,
|
|
-- disableMouse = true,
|
|
-- disableCombat = true
|
|
-- }, {}, {}, {}, function()
|
|
-- local plyped = PlayerPedId()
|
|
-- ClearPedTasks(plyped)
|
|
-- Citizen.CreateThread(function()
|
|
-- local coord = GetEntityCoords(entity)
|
|
-- local x, y, z = table.unpack(coord)
|
|
-- local xx, yy, zz = GetEntityRotation(entity, 5)
|
|
-- ground, posZ = GetGroundZFor_3dCoord(x + .0, y + .0, z, true)
|
|
|
|
-- SetEntityRotation(entity, 0.0, yy, zz)
|
|
-- SetEntityCoords(entity, x, y, posZ, 1, 0, 0, 1)
|
|
-- end)
|
|
-- end)
|
|
-- end
|
|
-- } },
|
|
-- distance = 2.0
|
|
-- })
|