A ver, estuve mirando lo de metodología(gracias gorrister ;-P), y tengo una parte de mi código reestructurada:
--Inicializamos una array. r = {} r[1] = { y = n1 } r[2] = { y = n2 } --creamos una variable como un contador. i = 0 --Aquí va código que no biene a cuento. while true do screen:clear() --PROBLEMA: while i < 2 do i = i + 1 r[i].y = r[i].y + 3 end if i > 2 then i = 0 end ...
El problema consiste en que ese bucle while funcionaría bien en C, pero en lua no se como hacer para sustituir el valor del indice por el valor de una array, alguna ayuda?
Saludos
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
Solucionado
Ese es el código.
Muchas gracias, pspgorrister.
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
No entiendo a qué te
No entiendo a qué te refieres con "sustituir el valor del indice por el valor de una array"
PD: El bucle lo harías mejor (sólo 3 lineas) con un for y getn().
Un saludo
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
Donde array es variable, con
Donde array es variable, con lo que me refiero a usar como índice de la array r el valor de i.
Saludos
Sigo sin entenderte xDDD
Ya estás usando el valor de i como índice del array r.
De todas formas a ver si puedes poner un ejemplo con pseudocódigo aunque sea
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
Pero esque el código es ese
Pero esque el código es ese pero no funciona, me lanza un error, ese es mi problema.
Os dejo el código original (Que lanza un error de que no existe el índice ir )
Saludos
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
No tienes declarado r[2] por
No tienes declarado r[2] por eso te da el error porque está fuera de índice. No obstante, cambia
por
El segundo código está mas optimizado y es más versátil ya que no tienes que saber el tamaño del vector.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
Me lanza este error: Error:
Me lanza este error:
Error: System/canciones/1.lua:25: '=' or 'in' expected near '1''
Press start to restart
PD: La sonrisita si que me viene.
Saludos
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
Re: Error
Igual es porque le falta un "do" al final de la linea del for, o que no he puesto bien la sintaxis (aparte de lo del "do"), pero creo que es así en Lua.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
--Antes for ir 1,r:getn()
Supongo que sería así, pero no funciona.
Saludos
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
Me faltaba un "=", es: for
Me faltaba un "=", es:
for ir=1,r:getn()
te falta poner el do, y si
te falta poner el do, y si pongo do me dice que getn es una variable nil
Pues eso sí que no lo sé,
Pues eso sí que no lo sé, porque la variable r la inicializas correctamente como una tabla. Yo el código lo veo bien.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
Cito al megatutorial de
Cito al megatutorial de pipagerardo:
#table Devuelve
número total de elementos de una tabla, que no tiene por que ser el número
del último índice.
table = {}; table[1]
= "uno"; table[2] = "dos"; table[9]
= "nueve"
n = #table -->
n = 3
--------------------------------------------------------------------------------------------------------------------------------
table.getn( table ) --
Devuelve el número total de elementos de una tabla igual que "#".
Supongo que el getn se podría meter dentro de una variable, como viene ahí bien explicado.
Saludos
PD: Lo pruebo y te cuento.
EDITO:Como me esperaba, no funciona y me da este error:
Error: blabalbla.. :26: for' limit must be a number.
blablabla
eso me dice si pongo do, y si no lo pongo me dice que lo ponga.
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G