Ive ben testing this 120 value, no matter what I change it to, 120 all the way up to 2000 it still only registers the same range ,and that’s about 40 feet in front of you.
After testing a bit more, it appears that CastRayPointToPoint
isn’t a very good solution for long distance targetting since it can only detect targets at the same height as you (well in its current state)…
This is the new code I made, It’s open able by pressing L, and lockable by pressing E. Thanks to Clod_TIF for the original script, Cosmo for the improved functions, and Bob_74 for making it compatible for players. Replace the speedcamera.lua with this text.
--script by devilkkw
local radar = {shown = false, freeze = false, info = "none", minSpeed = 10.0, maxSpeed = 40.0}
function drawTxt(x,y ,width,height,scale, text, r,g,b,a)
SetTextFont(0)
SetTextProportional(0)
SetTextScale(scale, scale)
SetTextColour(r, g, b, a)
SetTextDropShadow(0, 0, 0, 0,255)
SetTextEdge(1, 0, 0, 0, 255)
SetTextDropShadow()
SetTextOutline()
SetTextEntry("STRING")
AddTextComponentString(text)
DrawText(x - width/2, y - height/2 + 0.005)
end
Citizen.CreateThread(function()
while true do
Wait(0)
if IsControlPressed(1, 7)then -- L
if radar.shown then radar.shown = false else radar.shown = true end
Wait(75)
end
if IsControlPressed(1, 38)then -- E
if radar.freeze then radar.freeze = false else radar.freeze = true end
end
if radar.shown then
if radar.freeze == false then
local pos = GetEntityCoords(GetPlayerPed(-1))
local carM = GetCurrentTargetCar()
if carM ~= nil then
local plate = GetVehicleNumberPlateText(carM)
local vehSpeedKM = GetEntitySpeed(carM)*3.6
local vehSpeedMph = GetEntitySpeed(carM)*2.236936
if vehSpeedKM > radar.minSpeed then
if vehSpeedKM < radar.maxSpeed then
radar.info = string.format("~b~Plate:~w~ %s ~n~~y~Km/h: ~g~%s~n~~y~Mph: ~g~%s",plate,math.ceil(vehSpeedKM),math.ceil(vehSpeedMph) )
else
radar.info = string.format("~b~Plate:~w~ %s ~n~~y~Km/h: ~r~%s~n~~y~Mph: ~r~%s",plate,math.ceil(vehSpeedKM),math.ceil(vehSpeedMph) )
end
end
end
end
DrawRect(0.5,0.0,0.12,0.18,0,10,28,210)
drawTxt(0.53,0.1,0.185,0.206,0.40,radar.info,255,255,255,255)
end
end
end)
function GetCurrentTargetCar()
local ped = GetPlayerPed(-1)
local coords = GetEntityCoords(ped)
local entityWorld = GetOffsetFromEntityInWorldCoords(ped, 0.0, 120.0, 0.0)
local rayHandle = CastRayPointToPoint(coords.x, coords.y, coords.z, entityWorld.x, entityWorld.y, entityWorld.z, 10, ped, 0)
local a, b, c, d, vehicleHandle = GetRaycastResult(rayHandle)
return vehicleHandle
end
How do you turn off controller support for it? everytime I look back (click left thumbstick) the radar appears. I don’t want the controller to be able to activate it. Any help appreciated, thanks.
Not with this native, it only cast a ray (a line) and return what it has collided with.
I don’t know how to solve the speed camera issue at the moment but there must be a solution
what variables do i change to move the output position it interferes with the compass hud i use thats top middle of screen , thanks
-edited didnt look close enough noticed it has both mph and km/h my bad
you just took what cosmo made and called it your own.
Anyway this is a modified version that lets you truely lock it until you press the button again, to run the radar hold E and to lock it press the ~ key while holding E, to unlock hold E and press ~ again.
This also includes the fix for player cars.
--script by devilkkw
local maxSpeed= 73.0
local minSpeed= 1.0
local info ="nope"
function drawTxt(x,y ,width,height,scale, text, r,g,b,a)
SetTextFont(0)
SetTextProportional(0)
SetTextScale(scale, scale)
SetTextColour(r, g, b, a)
SetTextDropShadow(0, 0, 0, 0,255)
SetTextEdge(1, 0, 0, 0, 255)
SetTextDropShadow()
SetTextOutline()
SetTextEntry("STRING")
AddTextComponentString(text)
DrawText(x - width/2, y - height/2 + 0.005)
end
local locked = false
local speed1 = 0.0
local speed2 = 0.0
local plates = ""
Citizen.CreateThread(function()
while true do
Wait(0)
if locked then
if speed1 < maxSpeed then
info = string.format("~b~Plate:~w~ %s ~n~~y~Km/h: ~g~%s~n~~y~Mph: ~g~%s",plates,math.ceil(speed1),math.ceil(speed2) )
else
info = string.format("~b~Plate:~w~ %s ~n~~y~Km/h: ~r~%s~n~~y~Mph: ~r~%s",plates,math.ceil(speed1),math.ceil(speed2) )
end
DrawRect(0.5,0.0,0.12,0.18,0,10,28,210)
drawTxt(0.55,0.1,0.185,0.206, 0.40, info, 255,255,255,255)
end
if IsControlPressed(1, 38)then
local pos = GetEntityCoords(GetPlayerPed(-1))
local carM = GetCurrentTargetCar()
if carM ~=nil then
--TriggerEvent("chatMessage", "FIRE", {255, 0, 0},"test string: " .. tostring(carM))
--local num = tostring(GetPlayerPed(GetPedInVehicleSeat(carM, -1)))
--local num = true
--if num ~= nil and num ~= "" and num ~= "0" then
local plate=GetVehicleNumberPlateText(carM)
local herSpeedKm= GetEntitySpeed(carM)*3.6
local herSpeedMph= GetEntitySpeed(carM)*2.236936
if IsControlJustPressed(0, 243) then
PlaySoundFrontend(-1, "SELECT", "HUD_FRONTEND_DEFAULT_SOUNDSET", false)
if not locked then
locked = true
speed1 = herSpeedKm
speed2 = herSpeedMph
plates = plate
else
locked = false
end
end
if herSpeedKm > minSpeed and not locked then
if herSpeedKm < maxSpeed then
info = string.format("~b~Plate:~w~ %s ~n~~y~Km/h: ~g~%s~n~~y~Mph: ~g~%s",plate,math.ceil(herSpeedKm),math.ceil(herSpeedMph) )
else
info = string.format("~b~Plate:~w~ %s ~n~~y~Km/h: ~r~%s~n~~y~Mph: ~r~%s",plate,math.ceil(herSpeedKm),math.ceil(herSpeedMph) )
end
DrawRect(0.5,0.0,0.12,0.18,0,10,28,210)
drawTxt(0.55,0.1,0.185,0.206, 0.40, info, 255,255,255,255)
end
--end
end
end
end
end)
function GetCurrentTargetCar()
local ped = GetPlayerPed(-1)
local coords = GetEntityCoords(ped)
local entityWorld = GetOffsetFromEntityInWorldCoords(ped, 0.0, 1000.0, 0.0)
local rayHandle = CastRayPointToPoint(coords.x, coords.y, coords.z, entityWorld.x, entityWorld.y, entityWorld.z, 30, ped, 0)
local a, b, c, d, vehicleHandle = GetRaycastResult(rayHandle)
return vehicleHandle
end
Hey i changed the speedcamera lua with this and its not working
Should work, do you have any errors you can tell me?
I put the code above yours and works. Idk
I tried your code and when I press E it doesnt display
You have to be right behind a car and moving with it… This is very sketchy and I think someone needs to convert Real Speed Radar to FiveM… I am currently working an that but having a tough time
Yeah I have just noticed
Sorry for no replies guys, i have been very busy. Yes it is quite temperamental, and you dont have to be in a car moving with them, but that does help. You have to be on the same or near the same z axis as them. I will look into making it act a little better, but for now im a little busy.
No worries… I still use it cause it works lol
How do I make it so I don’t have to hold it in?
Hey, i’m having some trouble with the freezing. I’m pressing the ~ key but it won’t freeze? Could u please fix it or tell me what could be wrong?
Thanks in advance
Hey rjross,
Lovely script! Works as intended. I updated my key from E to Caps lock as it interferes with the Lux Lighting control.
One question: Is there a way to have the window display a little longer after the car passes? If someone is going real fast, the window disappears before I can lock it in.
IE: Let the speed display like 3 seconds after the car passes. Not sure if that can be done now.
Thanks!