judeu Posted April 3 Share Posted April 3 Estou com problemas nesse codigo, se nao me engano é pelo final do codigo dxDrawText Eu estou precisando deixar o codigo centralizado no objeto, as vezes quando tempo ajustar ele consigo ter um resultado, porem quando vou me desaproximando do caixote o texto começa a subir pra cima ele nao fica parado fixado em cima da caixa e nao centraliza direito no meio do objeto, alguem poderia me ajudar sobre esses parametros, pra mim é tudo novo. Imagem do resultado do codigo abaixo: https://prnt.sc/CWzL-wdO0sJ2 addEventHandler("onClientRender", root, function() for _, objeto in ipairs(getElementsByType("object")) do if (getElementData(objeto,"objeto.element")) then local ID = getElementData(objeto, "objeto.id") local PD = getElementData(objeto, "objeto.produtos") local localPos = {getElementPosition(localPlayer)} local objetoPos = {getElementPosition(objeto)} local worldPosition = {getScreenFromWorldPosition(objetoPos[1], objetoPos[2], objetoPos[3] + 0.50)} local distance = getDistanceBetweenPoints3D(localPos[1], localPos[2], localPos[3], objetoPos[1], objetoPos[2], objetoPos[3]) if distance <= 15 then if worldPosition[1] and worldPosition[2] then dxDrawText("ID: "..ID.." | "..PD.."", worldPosition[1] - 40, worldPosition[2], 10, 20, tocolor(255, 255, 255, 255), 1.0 ,"default-bold") end end end end end) Link to comment
Other Languages Moderators Lord Henry Posted April 4 Other Languages Moderators Share Posted April 4 Adicione o parâmetro , "center" depois do nome da fonte ali no dxDrawText. 1 Link to comment
judeu Posted April 4 Author Share Posted April 4 Deu certo meu amigo, e como eu faço pro começo do texto fique centralizado Por exemplo: Esta dessa forma: ID: 5 | PD: 1579874 Quero que fique dessa forma: ID: 5 | PD: 1579874 dxDrawText("HP:"..HP.."", worldPosition[1], worldPosition[2], 10, 20, tocolor(255, 255, 255, 255), 1.0 ,"default-bold", "center", "center" , center) Eu vi alguns parametros e tentei adicionar, ficou assim.... porem nao funciona o texto buga e fica na tela em um canto bem aleatorio, voce pode me ajudar a entender @Lord Henry Exemplo de como quero deixar: https://prnt.sc/XBqz7sFvfcUF Oque eu tentei fazer: dxDrawText("HP:"..HP.." asdasdasdasdasds", worldPosition[1], worldPosition[2], 10, 20, tocolor(255, 255, 255, 255), 1.0 ,"default-bold", "left", "top" , center, true) Link to comment
Other Languages Moderators Lord Henry Posted April 5 Other Languages Moderators Share Posted April 5 O seu 4º e 5º parâmetros não fazem sentido. (10, 20) Também não faz sentido vc colocar "center" fora de aspas duplas. Este parâmetro é uma string, portanto precisa estar entre aspas, exatamente como mencionei na minha resposta anterior. O primeiro "center" faz ele centralizar o texto na horizontal, o segundo "center" faz ele centralizar na vertical, mas não é necessário centralizar na vertical nesse caso, pois é só aumentar o diminuir aquele offset do + 0.50 para mudar a altura do texto. Então utilize apenas o primeiro "center" e delete o que tem depois. 1 Link to comment
Other Languages Moderators Lord Henry Posted April 5 Other Languages Moderators Share Posted April 5 objeto = createObject (1337, 2502, -1667, 12.36) -- Cria um objeto qualquer na Grove Street. addEventHandler("onClientRender", root, function() -- for _, objeto in ipairs(getElementsByType("object")) do -- DESATIVADOS APENAS PARA TESTES. -- if (getElementData(objeto,"objeto.element")) then -- local ID = getElementData(objeto, "objeto.id") -- local PD = getElementData(objeto, "objeto.produtos") local ID = 1337 -- APENAS PARA TESTES local PD = 1234567890 -- APENAS PARA TESTES local localPos = {getElementPosition(localPlayer)} local objetoPos = {getElementPosition(objeto)} local worldPosition = {getScreenFromWorldPosition(objetoPos[1], objetoPos[2], objetoPos[3] + 0.50)} local distance = getDistanceBetweenPoints3D(localPos[1], localPos[2], localPos[3], objetoPos[1], objetoPos[2], objetoPos[3]) if distance <= 15 then if worldPosition[1] and worldPosition[2] then dxDrawText("ID: "..ID.." | PD: "..PD, worldPosition[1], worldPosition[2], worldPosition[1], worldPosition[2], tocolor(255, 255, 255, 255), 1.0 , "default-bold", "center") end end -- end -- end -- DESATIVADOS APENAS PARA TESTES. end) 1 Link to comment
judeu Posted April 5 Author Share Posted April 5 No caso esses parametros que seriam o 4º e 5º (10, 20): ultiliza em DxImagem e o center ultilizado fora de aspas é para outras funcoes eu estava dando uma estudada aqui mais nao me atentei completamente, show obrigado @Lord Henry aqui funcionou perfeitamente e consegui entender a logica dos parametros do dxDrawText, muito obrigado meu amigo Link to comment
Other Languages Moderators Lord Henry Posted April 5 Other Languages Moderators Share Posted April 5 De nada. Link to comment
Recommended Posts