Hugos Posted November 4, 2019 Share Posted November 4, 2019 (edited) Hello to everyone. I want to make sure that the player 's name is displayed above his head, but I don 't know how to do it correctly. Found the function "dxDrawTextOnElement" - I can 't understand how to apply it correctly? P.S: Also I want to add a team with which players can choose whether they will see the names of other players or not. Is it possible to implement this? Edited November 4, 2019 by Hugos Link to comment
VenomOG Posted November 4, 2019 Share Posted November 4, 2019 function dxDrawTextOnElement(TheElement,text,height,distance,R,G,B,alpha,size,font,...) local x, y, z = getElementPosition(TheElement) local x2, y2, z2 = getCameraMatrix() local distance = distance or 20 local height = height or 1 if (isLineOfSightClear(x, y, z+2, x2, y2, z2, ...)) then local sx, sy = getScreenFromWorldPosition(x, y, z+height) if(sx) and (sy) then local distanceBetweenPoints = getDistanceBetweenPoints3D(x, y, z, x2, y2, z2) if(distanceBetweenPoints < distance) then dxDrawText(text, sx+2, sy+2, sx, sy, tocolor(R or 255, G or 255, B or 255, alpha or 255), (size or 1)-(distanceBetweenPoints / distance), font or "arial", "center", "center") end end end end addEventHandler("onClientRender", getRootElement(), function () for k,v in ipairs(getElementsByType("player")) do if v == localPlayer then return end dxDrawTextOnElement(v,getPlayerName(localPlayer),1,20,0,0,255,255,1,"default") end end) This should work. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now