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
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!
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
Neotecos.com
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).
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....
Neotecos.com
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:
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).
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
Neotecos.com
Mmm...
Ok, actualiza el script cuando puedas
listo, actualizado.
listo, actualizado.
Mmm...
Después de lo de mates lo reviso...