Aprendiendo a programar videojuegos con Lua

Anuncios

Aprendiendo a programar videojuegos con Lua

Hola hermanos Taringueros, como les habia prometido aquí estoy compartiéndoles mas informacion y recursos para que aprendamos a crear videojuegos con Corona SDK y el lenguaje de programacion Lua.
No se olviden de visitar mi Blog porque alli encontrarás mas recursos. Bueno aqui les dejo esta Info:


Según Wikipedia Lua es un lenguaje de programación estructurado y bastante ligero que fue diseñado como un lenguaje interpretado con una semántica extendible. El nombre significa "Luna" en portugués y gallego.

Corona utiliza el lenguaje de programación Lua para crear las aplicaciones.

Lo sé, algunos de ustedes le tendrán un poco de rechazo a los códigos y preferirían un programa tipo word o photoshop, te entiendo, a mi hermano tampoco le gusta la programación pero Lua es tan sencillo de aprender, que hasta un niño podría hacer sus propios juegos. Claro esta que si deseamos que nuestros juegos tengan mas calidad, es necesario un poco mas de trabajo.

Lua tiene una buena cantidad de adeptos en la comunidad de desarrolladores del mundo y esto se debe a que su sintáxis es parecida a JavaScript o ActionScript.

Se te hará tan fácil de aprender que empezarás a crear tus aplicaciones en menos de lo que canta un gallo

Para empezar a programar vas a necesitar:
Notepad++ que es un editor de codigo open source (ideal por ser gratuito)

Un cerebro normal y corriente

Buena música

Unas galletas y chocolate caliente o frió según el clima desde luego

Ganas de aprender


COMO EMPEZAR

Antes que nada tendrás que descargarte Lua interpreter, para ello lo descargas de AQUI

¿Que es un Intérprete?, es un programa que compila nuestro codigo, ¿Que es compilar? es la traduccion del lenguaje de la maquina (ceros y unos) a un lenguaje entendible.

Luego de haber instalado Lua Interpreter y Notepad++ comenzaremos con el clásico y tradicional "HOLA MUNDO"

En lua Interpreter escribimos

print("Hola Mundo!!"

solo presionan Enter y saldra esto

aprende


LAS VARIABLES

Bien como bien sabemos, un programa, un videojuego, y demás programas necesitan guardar cosas en nuestra memoria RAM, tales como las balas que nos quedan en el cargador, el tiempo que le queda para que una bomba explote... etc.

Hay más tipos de variables pero, un poco más complejas que estas, pero tranquilos, en el siguiente tutorial voy a explicaros lo que son arrays y demás cosas Suerte a todos



--Este es mi primer programa en Lua!!
Hay muchos tipos de variables en Lua:
Hay muchos tipos de variables en Lua:



number (numero)
string (cadena de texto)
boolean (booleanas[0 y 1])
nil (nulo)

Es muy importante organizar las variables, así ya que le estamos mostrando al ordenador como queremos guardar nuestros datos, por ejemplo:

No es lo mismo sumar 2 variables de tipo number que valen 1 cada uno, ya que el resultado sería 1+1 = 2
Que sumar 2 variables de tipo string que vale 1 cada una ya que el resultado sería: "1" + "1" = 11. Lo que ha hecho es sumar las "palabras"



Palabras reservadas

Las palabras reservadas son palabras que como el nombre indica están reservadas y no se pueden utilizar para declarar variables, las palabras reservadas son las siguientes:
and
break
do
else
elseif
end
false
for
function
if
in
local
nil
not
or
repeat
return
then
true
until
while
Por ejemplo no podemos crear una variable de tipo number con el nombre “local” ya que local es una palabra reservada

local = 100

Además no se podrán escribir caracteres raros en las variables tales como, ñ, #, %, =, ^ … etc. Si lo haces tu ordenador se volverá loco y explotará... nah era coña.

Este tipo de variable se utilizará para almacenar contenido de tipo numérico, se puede almacenar en cualquier base, sea en binario, en hexadecimal o en base 10 [Los de toda la vida ]
edad = 18
vida = 100
municion = 30
rojo = 0xFF0000

Las 3 primeras variables son en base 10 y la última de todas es en hexadecimal.

String (cadena de texto)
Este tipo de variable se utiliza para almacenar texto:

nombre = "Zelios Ariex"
teclaDelante = "W"
teclaAtras = "S"
anio = "2011"
Podéis utilizar el string para poner números también, pero debéis daros cuenta de que hay que poner las comillas “ ” para las variables string, aparte de las comillas también podéis utilizar los: ''

Boolean (booleanas)
Estas variables solo pueden tener 2 valores, que son true y false (verdadero y falso), esto como resultado de operaciones lógicascon variables booleanas o por asignación como se muestra a continuación:
puedeSaltar = false
matar = true
estaRoto = false
Esto es muy útil en programación para hacer que las cosas sean de una manera u otra, luego esos valores booleanos se cojen luego para hacer comandos de decisión, si es true se hará tal cosa, y si es false se hará tal cosa, todo eso lo veremos más adelante

Nil (nulo)
Estas variables son divertidas por que no tienen nada!, no tienen valor alguno, las variables que se creen y no se les asigne un valor, tendrán este tipo de valor, el valor null.


A continuacion les voy a dejar varias webs donde encontrarán muchos tutoriales.

En español:

http://www.lua.org/manual/5.1/es/

http://lua.gts-stolberg.de/es/



En inglés

http://wiki.roblox.com/index.php/Lua_Help

http://www.lua.org/pil/

Bueno eso es todo por hoy, los invito nuevamente a mi red donde podras encontrar mas recursos
Cuidense, nos estaremos viendo.

Comentarios Destacados

15 comentarios - Aprendiendo a programar videojuegos con Lua

@bodyboard2 +1
no lei todo, pero es muy similar a pascal o me parece a mi?
@dragonfable
es mas parecido al c++, de echo es casi lo mismo
@yo_rmn +3
Copy paste, está mal pegado
@lucc1111 -5
blanco = Color.new(255,255,255)
rojo = Color.new(255,0,0)
x = 0;
y = 0;
i = 1;
r = 1;
tabla = {a = 0,b = 0}
--Bucle Principal
while true do
screen:clear()
screen:print(150,150,"Codigo en LUA",rojo)
screen.waitVblankStart()
pad = Controls.read()
if pad:start() then
break
end
if pad:up() then
y = y - 1
end
if pad:down() then
y = y + 1
end
if pad:left() then
x = x-1
end
if pad:right() then
x = x+1
end
if pad:cross() then
tabla = {a = x,b = y}
i = i+1
end
if pad:square() then
if i > 1 then
i = i - 1
end
end

while r < i do

screen:print(tabla[r].a,tabla[r].b,".",blanco)
r = r+1
end
r = 1
screen:print(x,y,"X",blanco)
screen.flip()
end

q te parece ¿esta bueno? xD es una broma te dejo 10, me los cuidas?
@lucasss0137
A Asuntos internos le tendieron una trampa ... jaja buena info!
@Chuleita +1
Uh loco no tengo galletas ! No vo y a poder programar... Y yo que tenia tantas ganas
@masterp48 +4
buena info, la sintaxis es parecida (un toque) a VB.net tambien

PD: me parece que deberias avisar que necesitas un minimo de conocimiento previo, soltale todo eso de las variables a alguien que nunca programo y diciendole encima que es facil y va a ir derecho al psicologo xS
@Arleprince +4
Creo q tienes razon, con razon me sentia tan boba leyendo esto y queriendo aprender realmente de ceros n///n
@valtier999 +1
De seguro me sirve al programar en "Love 2D"

-+10-
@yish0_0
genial! me va a servir mucho!! se agradece mucho la info!!!