Narutimmy Posted September 29, 2013 Share Posted September 29, 2013 Hola bueno tengo est scrip que me dibuja el nivel y todo pero el problema es que cambia de posicion dependiendo la resolucion de la pantalla de cada quien y se ve mal... como lo arreglo? function dxsetText ( ) local text = "" local UP = tonumber ( getElementData ( localPlayer, "level" ) ) or 0 if ( UP == 1 ) then text = " /100" elseif ( UP == 2 ) then text = " /300" elseif ( UP == 3 ) then text = " /600" elseif ( UP == 4 ) then text = " /1000" elseif ( UP == 5 ) then text = " /1500" elseif ( UP == 6 ) then text = " /2000" elseif ( UP == 7 ) then text = " /2500" elseif ( UP == 8 ) then text = " /3000" elseif ( UP == 9 ) then text = " /3500" elseif ( UP == 10 ) then text = " /4500" elseif ( UP == 11 ) then text = " /5000" elseif ( UP == 12 ) then text = " /6500" elseif ( UP == 13 ) then text = " /7000" elseif ( UP == 14 ) then text = " /7500" elseif ( UP == 15 ) then text = " /8000" elseif ( UP == 16 ) then text = " /8500" elseif ( UP == 17 ) then text = " /9000" elseif ( UP == 18 ) then text = " /9500" elseif ( UP == 19 ) then text = " /10000" elseif ( UP == 20 ) then text = " /15000" end GUIEditor_Label[5] = guiCreateLabel(706,359,80,13,text,false) guiSetFont ( GUIEditor_Label[5], "default-bold-small" ) end addEventHandler ( "onClientResourceStart", resourceRoot, dxsetText ) addEventHandler ( "onClientElementDataChange", localPlayer, function ( dataName ) if ( dataName == "level" ) then dxsetText ( ) end end ) ---2 addEventHandler ( "onClientResourceStart", resourceRoot, function ( ) GUIEditor_Label = { } GUIEditor_Label[1] = guiCreateLabel(624,335,66,14,"Level:",false) guiSetFont(GUIEditor_Label[1],"default-bold-small") GUIEditor_Label[3] = guiCreateLabel(691,338,83,15,"Exp:",false) guiSetFont(GUIEditor_Label[3],"default-bold-small") GUIEditor_Label[2] = guiCreateLabel(625,353,53,43, tostring ( getElementData ( localPlayer, "level" ) ),false) guiSetFont ( GUIEditor_Label[2], "sa-header" ) GUIEditor_Label[4] = guiCreateLabel(679,359,49,14, tostring ( getElementData ( localPlayer, "exp" ) ),false) guiSetFont ( GUIEditor_Label[4], "default-bold-small" ) end ) addEventHandler ( "onClientElementDataChange", localPlayer, function ( dataName ) if ( dataName == "level" ) then guiSetText ( GUIEditor_Label[2], tostring ( getElementData ( localPlayer, "level" ) ) ) elseif ( dataName == "exp" ) then guiSetText ( GUIEditor_Label[4], tostring ( getElementData ( localPlayer, "exp" ) ) ) end end ) setTimer(dataName,60000,0,source, true) Link to comment
Atouk Posted September 29, 2013 Share Posted September 29, 2013 Para ajustar lo que quieres para que se acomode en todas las resoluciones debes usar lo siguiente: guiGetScreenSize Link to comment
Narutimmy Posted September 29, 2013 Author Share Posted September 29, 2013 Para ajustar lo que quieres para que se acomode en todas las resoluciones debes usar lo siguiente: guiGetScreenSize algunos ejemplos por favor ? Link to comment
Atouk Posted September 29, 2013 Share Posted September 29, 2013 Mira por ejemplo si tengo un elemento que sea de 132, 321, 400, 380 y mi resolución es de 1024 x 768. Lo que se debe hacer es esto: 132/1024, 321/768, 400/1024 y 380/768. El resultado de eso lo pegas en ese argumento pero definido con sX*NUMEROS Lo definirías de esta forma sX, sY = guiGetScreenSize() sX*Numeros, sY*Numeros, sX*Numeros, sY*Numeros Si no entiendes decime que te lo explico mejor. Link to comment
Narutimmy Posted September 29, 2013 Author Share Posted September 29, 2013 Mira por ejemplo si tengo un elemento que sea de 132, 321, 400, 380 y mi resolución es de 1024 x 768.Lo que se debe hacer es esto: 132/1024, 321/768, 400/1024 y 380/768. El resultado de eso lo pegas en ese argumento pero definido con sX*NUMEROS Lo definirías de esta forma sX, sY = guiGetScreenSize() sX*Numeros, sY*Numeros, sX*Numeros, sY*Numeros Si no entiendes decime que te lo explico mejor. Muchas Gracias solo que lo ise de otra forma y funciono perfecto ... Link to comment
Narutimmy Posted November 1, 2013 Author Share Posted November 1, 2013 Hola algo masmm.... lo intente asi pero no funciona , en cada resolucion se ve de diferente manera... sX, sY = guiGetScreenSize() function showClientImage() guiCreateStaticImage( sX*0.37/1024, sY*.85/768, sX*0.32/1024, sY*0.08333/768, "logo1.png", true, nil) end addEventHandler( "onClientResourceStart", getResourceRootElement( getThisResource() ), showClientImage ) Link to comment
Alexs Posted November 2, 2013 Share Posted November 2, 2013 (edited) Prueba así: sX, sY = guiGetScreenSize() function showClientImage() guiCreateStaticImage( sX*0.37, sY*.85, sX*0.32, sY*0.08333, "logo1.png", false, nil) end addEventHandler( "onClientResourceStart", getResourceRootElement( getThisResource() ), showClientImage ) Edited November 2, 2013 by Guest Link to comment
AlvareZ_ Posted November 2, 2013 Share Posted November 2, 2013 sX, sY = guiGetScreenSize() function showClientImage() guiCreateStaticImage( sX*0.37, sY*0.85, sX*0.32, sY*0.08333, "logo1.png", true, nil) end addEventHandler( "onClientResourceStart", getResourceRootElement( getThisResource() ), showClientImage ) Link to comment
Alexs Posted November 2, 2013 Share Posted November 2, 2013 sX, sY = guiGetScreenSize() function showClientImage() guiCreateStaticImage( sX*0.37, sY*0.85, sX*0.32, sY*0.08333, "logo1.png", true, nil) end addEventHandler( "onClientResourceStart", getResourceRootElement( getThisResource() ), showClientImage ) No hace falta el 0, '0.5' es lo mismo que '.5'. Deberías comprobar esta clase de cosas antes de escribir. También, por si no lo notas, el resultado de tus cálculos es un numero mayor a 1, pero en 'guiCreateStaticImage' cuando el sexto argumento es true los primeros cuatro argumentos deben ser números mayores o iguales a cero y menores o iguales a uno. Link to comment
Recommended Posts