Publicidad

Anuncios Google

corrección de código[tablas]

he estado creando un juego, lo básico funciona, ahora le añadí la función de dispara, asignada a la x, pero no funciona de ninguna manera, el error esta con las tablas, porque el luafps3 me dice: " Error: attempt to call a table value"-"Error: al intentar llamar al valor de la tabla"

he mira do y vuelto a mirar y vuelto a mirar el código y no veo ningún fallo, así que publico el código a ver si alguien ve algo que se me haya escapado, no hace falta que lo revisen todo, solo lo de las tablas, porque el resto del código esta perfectamente, porque primero hice lo básico de movimiento de la nave y funcionaba a la perfección

aquí el código:http://pastebin.com/kBBLRM5B


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 Dioni0396

llamas 50 argumentos

todos con valor nil, para que luego solo uses 1.

y luego usas la funcion actualizar para rellenar un valor que al pulsar X lo cambias. Es todo inexistente!

Nunca va a ir en la forma que tienes el codigo!

Imagen de Daklon

no , la idea es definir los

no , la idea es definir los 50 argumentos como nil(vacios)

luego cuando se pulsa la x empieza a comprobar desde el 1 hasta el 50 si hay alguno vacio(nil) y ese se convierte en una de las coocrdenadas de la bala, si se pulsa la x una sola vez solo se usa uno, pero si s epulsa 50 veces se usan los 50, no se si me explico

y luego empieza a mirar que argumentos tienen algo en su interior, que no estan vacios(que no sean nil) y los usa para establecer las coordenadas de la bala y para actualizarlas(moverla hacia arriba)

o al menos esa era mi idea, y pienso que con este código se cumple

Imagen de NEKERAFA

XD

Pero esque en un principio ya es nil, es decir, vacio, ya que el valor no existe.

Prueba a imprimir la variable Hola_A_Todos. Te va a decir que es un valor nulo ya que no existe, por lo que eso que haces es para retardar más el programa

if not balasx[i] == nil and balasy[i] == nil then ¿Qué querias hacer aquí? Puedes sustituirlo por esto:

if balasx[i] ~= nil and balasy[i] == nil then 

~= significa distinto, como != en C


NekeOS, el nuevo shell para PSP

PS4 500GB OFW, PS3 320GB OFW, PS3 500GB OFW, PSP 6.39 PRO-C Fix4.

Sony Xperia Z1 Compact con Android 5.1.1

Portatil Lenovo z50-70 Intel® Core™ i7-4510U y NVIDIA GeForce 840M con Elementary OS 0.3.2 Freya (64 bits) y Windows 10 (64 bits).

Imagen de Daklon

entonces borro el bucle,

entonces borro el bucle, ok...

si, primero pensé en ponerlo como tu dices, pero no recordaba si era ~= o =~ así que para no complicarme la vida con esos detalles lo puse así, lo que tu has puesto es mas corto, pero como lo hice yo sigue estando bien no?

algún otro fallo?

EDIT: nekerafa eres mi salvador.... ya funciona a la perfeccion(mas o menos xD)

lo que no me explico es porque eso daba error... simplemente decia que tal variable era = a nil, aunque ya sea nil deberia hacerlo, no dar error....

EDIT2: ahora el juego va bien, y los disparos tambien, pero si sigo saliendo pulsando start(hace un break) me sigue saliendo el error.. aunque el juego funcione bien....

Imagen de NEKERAFA

Mmm...

Primero compruebas que uno no sea nulo y otro si para mostrarlo en pantalla (Cosa que no ira al ser uno nulo) y sino los pones como nulos... nose, creo que no lo entiendo muy bien.

Mira, aquí tienes una orden del nivel de los operadores de Lua:

Rango:      Expresiones y Operadores:
   1º            or
   2º            and
   3º            <  >  <=  =>  ~=  ==
   4º            ..
   5º            +  -
   6º            *  /  %
   7º            not  #  -(unario)
   8º            ^


NekeOS, el nuevo shell para PSP

PS4 500GB OFW, PS3 320GB OFW, PS3 500GB OFW, PSP 6.39 PRO-C Fix4.

Sony Xperia Z1 Compact con Android 5.1.1

Portatil Lenovo z50-70 Intel® Core™ i7-4510U y NVIDIA GeForce 840M con Elementary OS 0.3.2 Freya (64 bits) y Windows 10 (64 bits).

Imagen de Daklon

si, me di cuenta hace un

si, me di cuenta hace un momento de ese fallo, quería comprobar que los dos fueran nulos, pero eso ya lo solucioné lo puse como tu decias, con el operador "~=" y ya va bien

PD: mira el edit que hice arriba xD

Imagen de NEKERAFA

Mmm...

Ok, actualiza el script cuando puedas

Imagen de Daklon

listo, actualizado.

listo, actualizado.

Imagen de NEKERAFA

Mmm...

Después de lo de mates lo reviso...

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.