Anuncios Google

Un nuevo tutorial de Lua, desde lo básico a lo concreto [7º Entrega][Preparando lo necesario y Hola Mundo]

Buenas gente!! hace tiempo que había dejado esto pausado, pero he regresado para continuar este tutorial, no crean que lo iba a dejar así ;)
Como dije en la anterior entrega, a partir de este tutorial todo será práctico, es decir, que ya pueden ir sacando sus psp's y alistando sus dedos para codear!

Para poder programar necesitaremos varias cosas, las listo a continuación:

  • Un editor de texto, si usas windows, recomiendo usar Notepad++ ya que será el que usaré a lo largo del tutorial
  • Un intérprete Lua, como ya dije antes, usaremos LuaDev!, Descargas: Eboot (31/10/10 - No se si será el último, pero sirve) y Documentación (No está completa, pero también sirve)
  • Un script.lua, este lo crearemos nosotros con el Notepad++ o su editor de preferencia

Una vez descargado el eboot, lo colocaremos en la ruta "ms0:/PSP/GAME/<nombre>" <nombre> será el nombre de la aplicación que desarrollen, en nuestro caso le pondremos "Tutorial".

Abrimos Notepad++ y en Lenguaje escogemos "Lua", luego, vamos a Archivo, Guardar como... y lo guardamos como "script.lua" en la ruta donde está el eboot, en nuestro caso, en "ms0:/PSP/GAME/Tutorial", y ya estamos listos para programar!

 

Creando nuestro primer programa, un Hola Mundo

Como necesitaremos que nuestro texto "Hola mundo" se muestre SIEMPRE en pantalla, vamos a necesitar un bucle que repita la funcion que imprime nuestro texto, como habrán visto en muchos lugares se usa el "while true do", así que nuestra primera línea en el script (desde ahora me referiré con script al script.lua) será esa:

while true do

Sintaxis: while true do, es un bucle que se repite siempre y cuando la condición que pongamos entre las palabras "while" y "do" sea verdadera, como queremos que se muestre siempre, forzamos una condición verdadera, escribiendo "true"

 

Lo siguiente será imprimir el texto en pantalla, para eso usaremos esta línea:

screen.print(10,10,"Hola Mundo")

Sintaxis: screen.print en este caso toma tres argumentos:

  1. La coordenada en X de la pantalla de la PSP
  2. La coordenada en Y
  3. El texto a imprimir

Las coordenadas en X van de 0 a 480, y en Y de 0 a 272, por lo tanto, en esta línea le decimos que en la esquina superior izquierda imprima el texto "Hola Mundo"

Nota: screen.print puede tener más argumentos que esos, en otras entregas haremos uso de ellos, pueden verlos en la documentación.

y por último cerraremos el lazo repetitivo while con "end", con lo que el código final nos quedaría así:

while true do
	screen.print(10,10,"Hola Mundo")
end

Listo!, guarden el script y ejecuten el eboot en la psp...

 

eh? ¿qué ha pasado? ¿por qué no ha salido nada?... presionen home y salgan al XMB...

En Lua se trabaja con dos "pantallas", una en la que se dibuja todo el contenido y otra que es la que vemos, ¿por qué?

Pues simple, imaginemos que tenemos una sola pantalla en la que vamos a dibujar, por decir algo, el escritorio de windows, Colocamos el wallpaper, los íconos, la barra de tareas, alguna que otra ventana abierta, el cursor... en fin, varias cosas, pero ahora tenemos que actualizar por si se ha movido algo, borramos todo y la pantalla se queda vacía, mientras comenzamos a colocar todo de nuevo, ¿feo verdad?

En cambio, si usamos dos pantallas, una será la que mostraremos mientras en la otra colocaremos wallpaper, íconos, barra de tareas, etc... al terminar las cambiamos, ahora, cuando toca actualizar, en lugar de borrar la que se está mostrando, nos vamos a la otra pantalla, la borramos y actualizamos wallpaper, íconos, barra de tareas, etc... y al terminar la cambiamos de nuevo con la otra, si repetimos el proceso varias veces nunca nos quedamos sin imagen en pantalla!!

 

Entonces, para poder intercambiar las "pantallas" en Lua, tenemos una función llamada flip, que pertenece al módulo screen, por lo tanto, al terminar de dibujar todo lo que queremos mostrar, en nuestro caso, el "Hola Mundo", pondremos screen.flip() quedando nuestro código así:

while true do
	screen.print(10,10,"Hola Mundo")
	screen.flip()
end

Ahora sí, guardemos, y ejecutemos el eboot, deberán tener algo como esto en pantalla:

Hola Mundo

Felicidades!! ya saben imprimir texto en pantalla, los espero en la próxima entrega, tratará sobre el uso de los controles, es decir... el button tester xD

 

Cualquier duda que tengan, hágamenla saber por comentarios, así si alguien tiene la misma duda, ya la habré respondido :)

Saludos!



PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]

07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD

Recuerda: Sé el intérprete -_-


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de -chus-

Excelente

Gran tutorial chime ahora ya tienen el tuto de hola mundo en lua dev que muchos pedian XD por cierto ya me eh pasado a dev como me sugeriste los estoy probando XD saludos


                                          Mis Homebrew´s

 http://psp.scenebeta.com/noticia/memorama-games#comment-803033


Imagen de NauTiluS1

Respondan!

que tutorial recomiendan mas, la forma alternativa o este?!?

Imagen de Tsukiumi

Este es

De LuaDEV, el otro es de LuaHM.

Imagen de NauTiluS1

y cual es mejor para hacer

y cual es mejor para hacer juegos!?

Imagen de barney77

Te recomiendo

Te recomiendo aprendas las 3 de LUA(PAGE, DEV Y HVM )

Imagen de Chimecho

eh?

Querrás decir PGE, Dev, y HM xD

Saludos

Imagen de NauTiluS1

gracias ya estoy haciendo el

gracias ya estoy haciendo el de hm

Imagen de barney77

Jajajaja

Jajaja si, lo siento ! error de dedoo xD

Imagen de Chimecho

Cualquiera...

Cualquier intérprete sirve, depende del programador...

Ahora, si te refieres a los tutoriales, este, no creo, recién lo estoy escribiendo xD

Saludos!



PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]

07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD

Recuerda: Sé el intérprete -_-

Imagen de barney77

Ambos

Ambos, tambien busca en otras webs, en psppain.com hay unso de DAGOTTH, esos de verdad que sirven.

Imagen de barney77

Tpu me inspiras a seguri programando, :)

Imagen de friz97

Que buen tuto

Esta excelente, muy bien explicado.

Saludos

P.D:Chequen mis posts en aportes usuarios, estan buenosRisa

Imagen de Tsukiumi

¡Que bien!

Que bien que sigues con esto, que yo del testeador de botones no salgo xD

Imagen de NauTiluS1

ya somos 2 O.O

ya somos 2 O.O

Ejem...

Quizás quisiste decir: Buttons Tester que insulta al usuario... xD

Imagen de Tsukiumi

Bueno

Que te diga si tus botones están bien o que te insulte es lo mismo, quien notará la diferencia xD

Imagen de ESBAAC

Gracias

Gracias Chime, la verdad nunca le he jalado mucho a lua, pero le daré con este tutorial.

¡Gracias de nuevo! ;)

Imagen de Rider7

jaja todavia no te quitas lo

jaja todavia no te quitas lo navideño ESBAAC
Saludoss

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.