Hola, lo que quiero hacer es que cada 5 segundos que pasen el objeto se mueva cada vez más rapido..
He echo esto:
fondo=image.load("Imagenes/fondo.png") Asb=3 Asb2=5 AsbC=2 Obj={} Obj[1]={bola=image.load("Imagenes/bola.png"),x=15,y=116,h=46,w=46} Obj[2]={bola2=image.load("Imagenes/bola2.png"),x=445,y=111,h=8,w=8} Obj[4]={enemigo=image.create(50,50,color.new(27,139,25)),x=80,y=250,h=50,w=50} Obj[5]={enemigo2=image.create(40,75,color.new(255,76,98)),x=200,y=250,h=40,w=55} c=timer.new() c:start() function control(object) if controls.down() then object.x=object.x+5 elseif controls.left() then object.x=object.x-4 elseif controls.up() then object.y=object.y+6 elseif controls.right() then object.y=object.y-7 end end function colision(ob1,ob2) if ob1.x+ob1.w>=ob2.x and ob1.y+ob1.h>=ob2.y and ob1.y<=ob2.y+ob2.h and ob1.x<=ob2.x+ob2.w then return true else return false end end while true do controls.read() fondo:blit(0,0) screen.print(0,10,"Nivel4",color.new(255,45,0)) Obj[1].bola:blit(Obj[1].x,Obj[1].y) Obj[2].bola2:blit(Obj[2].x,Obj[2].y) Obj[4].enemigo:blit(Obj[4].x,Obj[4].y) Obj[5].enemigo2:blit(Obj[5].x,Obj[5].y) Obj[4].y=Obj[4].y+Asb Obj[5].y=Obj[5].y+Asb2 if Obj[4].y>=272-50 then Asb=-3 elseif Obj[4].y<=0 then Asb=3 end if Obj[5].y>=272-55 then Asb2=-5 elseif Obj[5].y<=0 then Asb2=5 end control(Obj[1]) if c:time()>=5000 then if Obj[4].y>=272-50 then Asb=-5 elseif Obj[4].y<=0 then Asb=5 end end if colision(Obj[1],Obj[2]) then dofile("Dfl/gnvl4.lua") elseif colision(Obj[1],Obj[4]) then dofile("Dfl/pnvl4.lua") elseif colision(Obj[1],Obj[5]) then dofile("Dfl/pnvl4.lua") end Obj[1].x=math.min(math.max(0,Obj[1].x), 480-Obj[1].w/2) Obj[1].y=math.min(math.max(0,Obj[1].y), 272-Obj[1].h/2) screen.flip() end
EN sí quiero mover el Obj[4], pero despues de que pasen los milisegundos, en vez de que avanse la velocidad, retrocede..
Agradeceria su ayuda de mucho si me explicaran mas o menos como ahcer lo que quiero.
Un Saludo.
vale
ya que tienes timers, supongo que sabes como usarlos, mira este code:
Con eso te vas haciendo una idea de como hacerlo ;)
Saludos!
PSP FAT [5.00 M33-6] [6.60 ME] [Hard Moded] / Nintendo Wii [4.1U] [cIOS Hermes] [D2X cIOS] / iPhone 3G [4.2.1] [BB 05.13.04] [redsn0w] / iPod Touch 4 [6.1] [evasi0n]
07/05/10: Tuve el placer de llamarle con todo derecho "N00B" a molotovi xDDD
Recuerda: Sé el intérprete -_-
Sale, gracias MasterChime, ya
Sale, gracias MasterChime, ya lo probaré mañana o en un rato ;).
Contesto aca, he echo
Contesto aca, he echo esto
Pero no me sale el print :(-
if
Algo así es lo que qiero,
Algo así es lo que qiero, probaré con ello.
EDITO Una pregunta, con eso entonces cada 5 segundos hará la condicion, o solo cuando el crono este en 5 segundos?..
Cuando el crono llegue a los
Cuando el crono llegue a los 5 segundos se reseteara y ara que valla mas rapido, osea infinito...
Por eso, osea que cada 5
Por eso, osea que cada 5 segundos ira más rapido?
O sea, se repetirá la condicion cada 5 segundos?
Cada 5 segundo ira mas rapido
Cada 5 segundo ira mas rapido
Mmm ok, lo malo es que NO, lo
Mmm ok, lo malo es que NO, lo que pasa es que solo la primera vez que pasan los primeros 5 segundos aumenta, despues de esto no aumenta nah!.
Mira:
La condicion que pongo cada que pasen segundos es: si c es igual a 5 segundos entonces Asb es igual a Asb+AsbC, daría un valor de 8,(5AsbC+3Asb)...
Pro solo los primeros 5 egundos cumple con dicha condicion..
Prueba a hacer un
Prueba a hacer un screen.print con el tiempo del crono y me dices lo que pone
Ok, ahora voy.
Ok, ahora voy.
O tan solo pon la codicion
O tan solo pon la codicion dentro de una función.