Anuncios Google

[LUA] Revisen este código por favor

jugar = Image.load("menu/1.png")
creditos = Image.load("menu/2.png")
salir = Image.load("menu/3.png")
menu_actual = 1
while true do
pad = Controls.read()
oldpad = Controls.read() 
function menu()
if pad:up() and oldpad:up() ~= pad:up() then
menu_actual = menu_actual - 1
end
if pad:down() and oldpad:down() ~= pad:down() then 
menu_actual = menu_actual + 1
end
if menu_actual>3 then
menu_actual=1
elseif menu_actual<1 then
menu_actual=3
end
if pad:cross() and oldpad:cross() ~= pad:cross() and menu_actual == 1 then
        dofile("./juego.lua")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and menu_actual == 2 then
        dofile("./opciones.lua")
end
if pad:cross() and oldpad:cross() ~= pad:cross() and menu_actual == 3 then
        dofile("./creditos.lua")
end
if menu_actual == 1 then
        screen:blit(0,0,jugar)
elseif menu_actual == 2 then
        screen:blit(0,0,creditos)
elseif menu_actual == 3 then
        screen:blit(0,0,salir)
end
end
menu()
screen.waitVblankStart()
screen.flip()
oldpad = pad
end

Es mi primera experiencia en LUA, es un menú para un juego.

No consigo iniciarlo en LUAPlayer de PC.

Gracias y un saludo.



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 -Adolso-Gallardo-

MHm

El pad = Controls.read() va dentro del while true do y el menu() del fondo no es necesario ponerlo ahi

Imagen de bertoDLKai13

Gracias!

Hummm.. ya me preguntaba yo que por qué no se movía xD

Imagen de -Adolso-Gallardo-

perfecto ahora Si

Pero Un Detalle Generalmente se pone el nombre de la funcion en el while true do cuando la funcion no esta en el bucle.EJemplo.

--Codigo de ejemplo
 
letra = Image.load("letra.png")
letra2 = Image.load("letra2.png")
 
letras = 1
 
function MOV() -- Aqui la Funcion Fuera del bucle
 
if pad:up()  then 
letras = letras -1
end
if pad:down() then
letras = letras +1
end
 
end
 
while true do
 
if letras >= 2 then
letras = 1
elseif letras <= 1 then
letras = 3
end
 
if letras == 1 then
screen:blit(0,0,letras)
end
if letras2 == 2 then
screen:blit(0,0,letras2)
end
 
MOV()  -- Aqui la funcion dentro del bucle
pad = Controls.read()
screen.waitVblankStart()
screen.flip()
end

Salu2!!

Imagen de bertoDLKai13

Y falta el oldpad, con eso el menú ya me funciona ;)

Un saludo y gracias!

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.