Plate Posted August 28, 2012 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) Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Castillo Posted August 28, 2012 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. San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Plate Posted August 28, 2012 Author 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) Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Castillo Posted August 28, 2012 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. San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Plate Posted August 28, 2012 Author Posted August 28, 2012 SIgue sin funciona me dan bad argument en guiSetText Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Castillo Posted August 28, 2012 Posted August 28, 2012 Eso es porque las labels ni se crearon, copia el codigo de nuevo. San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Plate Posted August 28, 2012 Author 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) Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Castillo Posted August 28, 2012 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. San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Plate Posted August 28, 2012 Author Posted August 28, 2012 Ah ok muchas gracias solid PD: pero todabia no entiendo como cambiar jaja Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Castillo Posted August 28, 2012 Posted August 28, 2012 De nada. San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Plate Posted August 28, 2012 Author Posted August 28, 2012 Jaja per todabia no entiendo como es para lo del script que recien pase eso del dxsetText Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Castillo Posted August 28, 2012 Posted August 28, 2012 El script que contine: dxsetText ( ) es el mismo que tiene el que muestra el nivel y experiencia? San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Plate Posted August 28, 2012 Author 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 Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Castillo Posted August 29, 2012 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 ) San Andreas Utopia RPG (SAUR) Owner & Developer. Education is the most powerful weapon which you can use to change the world.
Plate Posted August 29, 2012 Author Posted August 29, 2012 Gracias solid PD:hay un problema por que el jugador sube level y queda el texto anterior abajo Visita Full GameZ DayZ Mod Server IP: mtasa://158.69.125.144:29015
Recommended Posts