Bass Posted August 18, 2011 Share Posted August 18, 2011 Buenas gente estoy iniciandome en esto del LUA, ya se que me van a decir empeza por algo sencillo... pero no se bien que es sencillo.. Porque ej: cambiar el cielo de color ya esta el agua ya esta y no se bien que otras opciones hay en LUA... ya pase por la wiki pero los scripts que entiendo masomenos estan medios PRO para empezar.. Que me recomiendan.. Link to comment
diegofkda Posted August 18, 2011 Share Posted August 18, 2011 Podrías empezar con agregar eventos para cada script si eres demaciado novato. Si ya sabes eso, entonses te recomiendo hacer comandos como este: (esto hace un comando llamado "godmode" para tener un auto invulnerable y vida infinita) estaMiGodModeActivado == falso function agregarGodmode() miActualVehiculo = getPedOccupiedVehicle ( getLocalPlayer() ) if estaMiGodModeActivado == verdadero then removeEventHandler ( "onClientPlayerDamage", getLocalPlayer(), cancelarEvento ) outputChatBox ( "Has apagado el Godmode.", 255, 0, 0 ) if miActualVehiculo then setVehicleDamageProof ( miActualVehiculo, false ) end elseif estaMiGodModeActivado == falso then outputChatBox ( "Has ensendido el Godmode.", 0, 255, 0 ) addEVentHandler ( "onClientPlayerDamage", getLocalPlayer(), cancelarEvento ) if miActualVehiculo then setVehicleDamageProof ( miActualVehiculo, true ) end end end addCommandHandler ( "godmode", agregarGodmode ) function cancelarEvento() cancelEvent() end Link to comment
Serginix Posted August 18, 2011 Share Posted August 18, 2011 Yo empeze haciendo pendejadas, como comandos sencillos, y los ejemplos de la wiki, no son "PRO", antes me pare q algunos son muy sensillos, pero utiles. Link to comment
Castillo Posted August 18, 2011 Share Posted August 18, 2011 estaMiGodModeActivado = false function agregarGodmode() miActualVehiculo = getPedOccupiedVehicle ( getLocalPlayer() ) if estaMiGodModeActivado then removeEventHandler ( "onClientPlayerDamage", getLocalPlayer(), cancelEvent ) outputChatBox ( "Has apagado el Godmode.", 255, 0, 0 ) if miActualVehiculo then setVehicleDamageProof ( miActualVehiculo, false ) end else outputChatBox ( "Has ensendido el Godmode.", 0, 255, 0 ) addEventHandler ( "onClientPlayerDamage", getLocalPlayer(), cancelEvent ) if miActualVehiculo then setVehicleDamageProof ( miActualVehiculo, true ) end end end addCommandHandler ( "godmode", agregarGodmode ) Tenias un par de errores, y cambie algunas cositas. Link to comment
Serginix Posted August 19, 2011 Share Posted August 19, 2011 No se les olvide, q es un Client Side, y uno al principio no tiene idea de esto, . Link to comment
diegofkda Posted August 19, 2011 Share Posted August 19, 2011 estaMiGodModeActivado = false function agregarGodmode() miActualVehiculo = getPedOccupiedVehicle ( getLocalPlayer() ) if estaMiGodModeActivado then removeEventHandler ( "onClientPlayerDamage", getLocalPlayer(), cancelEvent ) outputChatBox ( "Has apagado el Godmode.", 255, 0, 0 ) if miActualVehiculo then setVehicleDamageProof ( miActualVehiculo, false ) end else outputChatBox ( "Has ensendido el Godmode.", 0, 255, 0 ) addEventHandler ( "onClientPlayerDamage", getLocalPlayer(), cancelEvent ) if miActualVehiculo then setVehicleDamageProof ( miActualVehiculo, true ) end end end addCommandHandler ( "godmode", agregarGodmode ) Tenias un par de errores, y cambie algunas cositas. Ah bueh, no pruebo scripts antes de recomendarlos , bueno, lo del cancelEvent no lo sabía... ven que hasta los maestros deben aprender cosas simples . Link to comment
Serginix Posted August 20, 2011 Share Posted August 20, 2011 Vamos a resultar haciendo Off... pero bueee por lo tanto no responde... Pero... tampoco me fije en lo del cancelEvent xDDDDD Diego, vi tu server de la 1.1, pero tenia pass, estabas haciendo Test? Link to comment
diegofkda Posted August 20, 2011 Share Posted August 20, 2011 Si, mi servidor Real Cars está realmente apestando, asi que decidí hacer una update completa para cuando salga la 1.1 Volviendo al tema, ¿con que empezaste a trabajar, Bass?. Link to comment
Bass Posted August 20, 2011 Author Share Posted August 20, 2011 *Bueno gracias por las respuestas.. *Los scripts se pueden hacer en español? Pregunto capas que ustedes que andan mas en el tema saben... *Me gustaria que el GodMode ese me lo pasaran en ingles, ya que a pesar que hablo español en el tema Lua me gusta mas el ingles *Bueno ahora lo mas que he hecho por mi cuenta es un Teleport que al tocarlo te Activa todos los Mods o Scripts.. Entre ellos: Cielo, Texturas, Te cambia el auto, Agua y cosas que le ire agregando... Gracias por todoo... Link to comment
diegofkda Posted August 20, 2011 Share Posted August 20, 2011 De nada , puedes postear tus problemas en este post . Link to comment
Serginix Posted August 20, 2011 Share Posted August 20, 2011 Lol, yo tambien me siento mejor haciendo los scripts en ingles, exepto por todo lo que sea texto visible al jugador, como comandos, Gui, cosas en el chat, mamadas asi, pero en la estructura del script, loa go en ingles Link to comment
Bass Posted August 23, 2011 Author Share Posted August 23, 2011 Ok pero mi pregunta es.. Los scripts andan en español?¿ osea la estructura(creo que se dice asi) En vez de WaterColor.... cOLOR DEL AGUA Es un ejemplo.. Gracias por la ayuda Link to comment
Edikosh9998 Posted August 23, 2011 Share Posted August 23, 2011 A ver si entendi, hay cosas que SI las podes poner en español, chino, lo que se te encante... por Ejemplo, el nombre de la funcion : function hola() Y bueno algo tambien hay variables que no importa lo que le pongas siempre va ser igual , por ejemplo : addCommandHandler tiene 2 variables en la funcion que son function (1= el jugador que usa el comando, 2 = el nombre del comando) --Esto en server-side. --Ahi por ejemplo podes poner si queres : function (hola, cmd) Link to comment
Serginix Posted August 23, 2011 Share Posted August 23, 2011 Asi Es Edikosh9998, Pero: La Lua tiene q estar en INGLES (menos lo q dijiste), Explico lo de español y doy 1 ejemplo: Las cosas q podes poner en Español, son como por ejemplo, el nombre de las funciones, los nombres de los eventos agregados con addEvent y cosas asi, por Ejmplo: function ejemploParaEstaGente() local miJugador = getElementModel(source) -- nombramos miJugador, como el Skin del Jugador if miJugador == 0 then -- si es miJugador (el skin 0 osea CJ) apacerlo spawnPlayer (source, 0, 0, 10) else outputChatBox ("Nesesitas ser CJ para Aparecer", source, 255, 0, 0) -- de lo contrario, abrir el chat con la info. end end addEventHandler ("onPlayerWasted", root, ejemploParaEstaGente) -- el evento q al morir lo aga addCommandHandler ("matame", ejemploParaEstaGente) -- por si quereis aparecerte en la coordenada 0 manualmente Notese q el nombre de la funcion, los chat, y mis argumentos son en español, podeis ahcer lo mismo con tablas, comandos, etc etc. espero q les alla quedado claro a los q no entienden Link to comment
RottenFlesh Posted August 23, 2011 Share Posted August 23, 2011 hay esta malo por que en la variable miJugador = getElementModel(source), los comandos no tienen source (o sino el source de addCommandHandler es el comando en si, pero no estoy seguro) por eso se usa el parametro del jugador despues de tu funcion ej: function miComando (elJugador) jugador = getElementModel(elJugador) -- crap... end addCommandHandler("abc", miComando, true) --[[el true es para que sea accesible solo por los que esten el el acl, lo acabo de descubrir ]] y asi con todos los que pusiste source , o si me equivoco pss me corrigen Link to comment
Edikosh9998 Posted August 24, 2011 Share Posted August 24, 2011 hay esta malo por que en la variable miJugador = getElementModel(source), los comandos no tienen source (o sino el source de addCommandHandler es el comando en si, pero no estoy seguro) por eso se usa el parametro del jugador despues de tu funcion ej: function miComando (elJugador) jugador = getElementModel(elJugador) -- crap... end addCommandHandler("abc", miComando, true) --[[el true es para que sea accesible solo por los que esten el el acl, lo acabo de descubrir ]] y asi con todos los que pusiste source , o si me equivoco pss me corrigen Si tienes razon, le da "bar argument" en getElementModel No deberia ser asi? function pongoLoQueSeMeDaLaGana(Jugador,cmd) local usuario = getElementModel(Jugador) --A ver el local, podes poner cualquier cosa, solamente que su equivalente tiene que ser una funcion sino --Te tira "bad argument" if (usuario == 0) then killPed(Jugador) else outputChatBox("Necesitas ser CJ para aparecer",Jugador,255,0,0) end end addCommandHandler("matame",pongoLoQueSeMeDaLaGana) function otraVezLoMismo() setTimer(spawn,1000,1,source) end addEventHandler("onPlayerWasted",getRootElement(),otraVezLoMismo) function spawn(thePlayer) spawnPlayer(thePlayer,0,0,10) end Si esta mal diganme PD : Cambiando de tema Te voy a aconsejar para empezar.. 1) Lee las guias de la wiki, por mas bodrio que sea. Si sabes ingles MEJOR, porque se te va a hacer mas facil entender. Ademas te vas a dar cuenta de porque la gente aunque hable en español escribe el nombre de las funciones, eventos en ingles ya que te acostumbras solo. 2) Tambien en la wiki de MTA, mas abajo pone la de LUA, y te recomiendo que la veas. Se que tiene muchas cosas que no vas a ver, pero hay conceptos MUY IMPORTANTES que si no sabes, puede que no entiendas lo del MTA. Por ejemplo : los "math", o el "if ... then", "return" y todo eso. 3) Intenta hacer un script (sin importar lo mas "bobo" que sea) de algo . Puede ser un comando para hacer que respawnee un auto, lo que sea. Para eso, lee las funciones que muestran la wiki. ESO puede llegar a ser lo mas bodrio ya que son miles las funciones que te brinda, y capaz te puede llegar a ser dificil encontrar o identificar la que buscas. Para eso, igual esta el foro que podes consultar. 4) No EMPIEZES con cosas dificiles, como por ejemplo, no se : quiero hacer un server RPG, y ya me quiero poner a hacer trabajos, facciones, una base de datos, etc... porque te vas a terminar aburriendo y capaz CALENTANDO (me paso jaja). 5) Paciencia... Toma bastante tiempo aprender, no te creas que los moderadores o esos que publicaron las scripts en la community hayan estado tan solo un mes aprendiendo a scriptear. Tomate tu tiempo. 6) Siempre que tengas alguna duda de alguna funcion, definicion, etc.. PREGUNTA. Mira yo creo que debo ser uno de los mas preguntones ( es mas a veces me da que estoy jodiendo un poco al otro), pero siempre intento preguntar cosas basicas. No digo HACEME UN SCRIPT QUE APAREZCA UN BOT QUE CONDUZCA UN HELICOPTERO sin haberle tirado una base, sin embargo capaz algo que hayas escrito y que por alguna cosa no ande. Bueno, espero que te sirva lo que te dije. Aunque bueno, yo en esto hace 1 mes y bueno no puedo hablar demasiado . Link to comment
Serginix Posted August 24, 2011 Share Posted August 24, 2011 hay esta malo por que en la variable miJugador = getElementModel(source), los comandos no tienen source (o sino el source de addCommandHandler es el comando en si, pero no estoy seguro) por eso se usa el parametro del jugador despues de tu funcion ej: function miComando (elJugador) jugador = getElementModel(elJugador) -- crap... end addCommandHandler("abc", miComando, true) --[[el true es para que sea accesible solo por los que esten el el acl, lo acabo de descubrir ]] y asi con todos los que pusiste source , o si me equivoco pss me corrigen Men, q yo sepa la funcion "onPlayerWasted" no nesesita el "source" en su funcion, ya q es OBVIO q si se refieren a el Juegado Muerto, sea el Jugador, no ? Y si te marco el badArgument en "getElementModel" pzzz no los pobre , y bueno, nadie se pone por poner un "source" y lo del True en el addCommandHandler, a que ACL Espeficicamente? (tampoco sabia xDDDDDDDDDDDDD) Al Admin, al Mod,? y q pasa si tengo muchas grupos mas? Link to comment
Krujitoz Posted August 24, 2011 Share Posted August 24, 2011 no se porque pero si se ocupa, sin ese no podría spawnear el GoSToWn mi "GameMode" Link to comment
Serginix Posted August 24, 2011 Share Posted August 24, 2011 Bueno, ahcer un resource asi, solo tardia 1 minuto, 30 segundos si copias rapido, 3 si usas Copy Paste, ya lo q tu maquina demore en arrancar el server y el mta Link to comment
Krujitoz Posted August 24, 2011 Share Posted August 24, 2011 mmm, mentira mi PC tarda 5minutos para habrir MTA y 10 para un Server Link to comment
Serginix Posted August 24, 2011 Share Posted August 24, 2011 lol yo en 4 minutos prendo mi pc ponho mi server y me meto ahora ls super pc de diego +.+ Link to comment
diegofkda Posted August 25, 2011 Share Posted August 25, 2011 Cosa de darle al botón de ensendido y ya tengo el MTA abierto conectado a mi server, jeje. Link to comment
Recommended Posts