hello community ,
I'm a beginner and i trying to make dxDrawLine3D with vehicle + attack dxdrawtext but i got a problem (the line attack into sky)
my trying
function nametag()
if not nametagsEnabled then
return
end
for index, player in pairs(getElementsByType("player")) do
if not nametags[player] then
nametag.create(player)
end
end
for player in pairs(nametags) do
while true do
if not player or not isElement(player) then
nametag.destroy(player)
end
break
end
end
local camX, camY, camZ = getCameraMatrix()
for player in pairs(nametags) do
while true do
if player == localPlayer and not selftagEnabled then
break
end
if getElementDimension(player) ~= getElementDimension(localPlayer) then
break
end
if isPedDead(player) then
break
end
setPlayerNametagShowing(player, false)
local posX, posY, posZ = getPedBonePosition(player, 8)
local offset = 0.25
local vehicle = getPedOccupiedVehicle(player) or false
if vehicle and isElement(vehicle) then
posX, posY, posZ = getElementPosition(vehicle)
offset = 0.75
end
local distance = getDistanceBetweenPoints3D(camX, camY, camZ, posX, posY, posZ)
if distance > nametagDistance then
break
end
if not isLineOfSightClear(camX, camY, camZ, posX, posY, posZ, true, false, false, false, false, false, false, nil) then
break
end
local sX, sY = getScreenFromWorldPosition(posX, posY, posZ + offset)
if not sX or not sY then
break
end
dxDrawText(getPlayerName(player), sX, sY, sX, sY, tocolor(r, g, b, alpha), scale, "default-bold", "center", "center", false, false, false, true)
dxDrawLine3D (posX, posY, posZ, camX, camY, posZ+1.1, tocolor ( 255, 255, 255, 255 ), 2)
end
addEventHandler("onClientRender", root, nametag)
my try second
dxDrawLine3D (posX, posY, posZ, sY, sX, sY, tocolor ( 255, 255, 255, 255 ), 2)