Hola, bien, estoy ahorrando DEMASIADO code con esto:
for i=1,10 do salto(smell[i]); dt(smell[i]); smell[i].img:blit(smell[i].x,smell[i].y); smell[i].x=smell[i].x-smell[i].Asb if smell[i].d==true and smell[i].Asb==0 and smell[i].x<=0 then smell[i].x=10 end if smell[i].d==true and smell[i].Asb==0 and controls.press("cross") then p="nada xD" end if controls.press("cross") and colision(smell[i],dardo) then smell[i].salt=false smell[i].d=true smell[i].estado="aire" smell[i].Asb=0 end end
Pero me marca error en la linea de salto(smell[i]); y es que segun es un valor nulo, bien, salto es está funcion:
function salto(object) if object.salt==true and object.estado=="suelo" then object.estado="aire" end if object.estado=="aire" then object.vel=object.vel-0.5 object.gravedad=object.gravedad-object.vel end if object.vel<0 then object.estado="cayendo" end if object.gravedad<219 and object.estado=="cayendo" then object.vel=object.vel+0.5 object.gravedad=object.gravedad+object.vel end if object.gravedad==219 then object.vel=14 object.estado="suelo" end if object.gravedad>219 then object.gravedad=219 end object.y=object.gravedad end
Y smell son 10 tablas, pero les dejo la primera:
smell1={img=smellimagen,x=math.random(600,800),y=0,h=50,w=50,gravedad=219,vel=14,estado="suelo",Asb=7,salt=true,d=false}
Que es lo que está mal, segun yo esta bien lo del uso de corchetes. he intentado concatenando pero me amrca error de concatenacion, no se como solucionarlo, ayuda t_T
Y al parecer todo el for está mal ya que si borro la linea esa marca en la siguiente t_t ayyudaaaaa, xDD
posibilidad
dentro del bucle la tabla que le pasas es "smell" y la tabla que nos dejas es "
smelll".
Por cierto las tablas estan asi:
???
No, estan así.. smell1,
No, estan así.. smell1, smell2, pero intentare como tu dices.
PD: La tabla que tengo es smell1 confundes el 1 con una l, probare con la forma que me dices.
EDITO: LO he echo como me dices, pero ahora me marca error en la primera tabla(smell[1]), que segun es nula, aqui el code:
Tablas:
PD: smellimagen es una variable que tiene la imagen del smell.
EDITO2: Ya esta solucionado, el error era poque jamas abria la tabla smell, solo fue cosa de poner smell={}
Gracias por la ayuda :)
Todas esas lineas las puedes
Todas esas lineas las puedes cambiar por eso(si no cambia nada de la tabla):
Luego te dije que no pusieras variables en cada funcíon, que se quedan en la memoria RAM (tenéis un mal concepto de dofile), luego te recomiendo usar 3 o 4 scrips (si el juego es muy complejo), al script le haces dofile a un que tenga las variables, luego a un que tenga las funciones y si quieres un que sea el juego (el while y eso)que quede algo así,( usar dofiles para lo considero como usar gotos en C si no es para cargar variables y funciones) :
Lo malo esque si cambian las
Lo malo esque si cambian las cordenadas de la tabla, y eso de los dofiles, pues ya vere, gracias xerpi.
solucionado
si lo has solucionado podrias editar el titulo y añadir "Solucionado" o algo por el estilo.
Salu2 :)
Si se me había olvivado, lo
Si se me había olvivado, lo siento, gracias por recordarmelo.
Saludos :).