Plate Posted August 28, 2012 Share Posted August 28, 2012 Hola tengo un re problema con el label es que cuando el jugador reconnecta o se va y vuelve a entrar el label con el texto no aparece probe con onClientRender pero me anda terriblemente lag el server y aparte se ve mal el label addEventHandler("onClientResourceStart",root, function() GUIEditor_Label = {} GUIEditor_Label[2] = guiCreateLabel(625,153,53,43, tonumber ( getElementData ( localPlayer, "level" ) ),false) guiSetFont(GUIEditor_Label[2],"sa-header") GUIEditor_Label[4] = guiCreateLabel(679,159,49,14, tonumber ( getElementData ( localPlayer, "exp" ) ),false) guiSetFont(GUIEditor_Label[4],"default-bold-small") end) Link to comment
Castillo Posted August 28, 2012 Share Posted August 28, 2012 addEventHandler ( "onClientResourceStart", resourceRoot, function ( ) GUIEditor_Label = { } GUIEditor_Label[2] = guiCreateLabel(625,153,53,43, tostring ( getElementData ( localPlayer, "level" ) ),false) guiSetFont ( GUIEditor_Label[2], "sa-header" ) GUIEditor_Label[4] = guiCreateLabel(679,159,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 ) Proba con eso. Link to comment
Plate Posted August 28, 2012 Author Share Posted August 28, 2012 No me funcioa solid D: haci no serviria? addEventHandler("OnClientPlayerSpawn",root, function() GUIEditor_Label = {} GUIEditor_Label[2] = guiCreateLabel(625,153,53,43, tonumber ( getElementData ( localPlayer, "level" ) ),false) guiSetFont(GUIEditor_Label[2],"sa-header") GUIEditor_Label[4] = guiCreateLabel(679,159,49,14, tonumber ( getElementData ( localPlayer, "exp" ) ),false) guiSetFont(GUIEditor_Label[4],"default-bold-small") end) Link to comment
Castillo Posted August 28, 2012 Share Posted August 28, 2012 Ah, es que me olvide de definir 'dataName', copialo de nuevo. P.D: Mi script va a cambiar las labels al cambiar el valor. Link to comment
Plate Posted August 28, 2012 Author Share Posted August 28, 2012 SIgue sin funciona me dan bad argument en guiSetText Link to comment
Castillo Posted August 28, 2012 Share Posted August 28, 2012 Eso es porque las labels ni se crearon, copia el codigo de nuevo. Link to comment
Plate Posted August 28, 2012 Author Share Posted August 28, 2012 Wow gracias y con esto? function dxsetText ( ) local text = "" local UP = tonumber ( getElementData ( localPlayer, "level" ) ) or 0 if ( UP == 1 ) then text = "/60" elseif ( UP == 2 ) then text = "/110" elseif ( UP == 3 ) then text = "/160" elseif ( UP == 4 ) then text = "/250" elseif ( UP == 5 ) then text = "/500" elseif ( UP == 6 ) then text = "/2000" elseif ( UP == 7 ) then text = "/4000" elseif ( UP == 8 ) then text = "/8000" end GUIEditor_Label[5] = guiCreateLabel(706,159,63,13, text,false) guiSetFont(GUIEditor_Label[5],"default-bold-small") end addEventHandler("onClientResourceStart",root,dxsetText) Link to comment
Castillo Posted August 28, 2012 Share Posted August 28, 2012 addEventHandler ( "onClientResourceStart", resourceRoot, function ( ) GUIEditor_Label = { } GUIEditor_Label[2] = guiCreateLabel(625,153,53,43, tostring ( getElementData ( localPlayer, "level" ) ),false) guiSetFont ( GUIEditor_Label[2], "sa-header" ) GUIEditor_Label[4] = guiCreateLabel(679,159,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" ) ) ) dxsetText ( ) elseif ( dataName == "exp" ) then guiSetText ( GUIEditor_Label[4], tostring ( getElementData ( localPlayer, "exp" ) ) ) end end ) Supongo que estan en el mismo archivo ambos scripts, ya que este ejecutara la funcion: dxsetText ( ) al cambiar el nivel. Link to comment
Plate Posted August 28, 2012 Author Share Posted August 28, 2012 Ah ok muchas gracias solid PD: pero todabia no entiendo como cambiar jaja Link to comment
Plate Posted August 28, 2012 Author Share Posted August 28, 2012 Jaja per todabia no entiendo como es para lo del script que recien pase eso del dxsetText Link to comment
Castillo Posted August 28, 2012 Share Posted August 28, 2012 El script que contine: dxsetText ( ) es el mismo que tiene el que muestra el nivel y experiencia? Link to comment
Plate Posted August 28, 2012 Author Share Posted August 28, 2012 No no ese script pone la exp que te falt apara subir de level cuando vos subis de level dxsetText se lo puse haci nada mas el nombre de la funcion Link to comment
Castillo Posted August 29, 2012 Share Posted August 29, 2012 Ok, entonces olvidate del post anterior mio y usa esto: function dxsetText ( ) local text = "" local UP = tonumber ( getElementData ( localPlayer, "level" ) ) or 0 if ( UP == 1 ) then text = "/60" elseif ( UP == 2 ) then text = "/110" elseif ( UP == 3 ) then text = "/160" elseif ( UP == 4 ) then text = "/250" elseif ( UP == 5 ) then text = "/500" elseif ( UP == 6 ) then text = "/2000" elseif ( UP == 7 ) then text = "/4000" elseif ( UP == 8 ) then text = "/8000" end GUIEditor_Label[5] = guiCreateLabel(706,159,63,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 ) Link to comment
Plate Posted August 29, 2012 Author Share Posted August 29, 2012 Gracias solid PD:hay un problema por que el jugador sube level y queda el texto anterior abajo Link to comment
Recommended Posts