Narutimmy Posted September 29, 2013 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)
Atouk Posted September 29, 2013 Posted September 29, 2013 Para ajustar lo que quieres para que se acomode en todas las resoluciones debes usar lo siguiente: guiGetScreenSize
Narutimmy Posted September 29, 2013 Author 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 ?
Atouk Posted September 29, 2013 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.
Narutimmy Posted September 29, 2013 Author 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 ...
Narutimmy Posted November 1, 2013 Author 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 )
Alexs Posted November 2, 2013 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
AlvareZ_ Posted November 2, 2013 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 )
Alexs Posted November 2, 2013 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.
Recommended Posts