我想要的是图像从屏幕顶部落下并开始下降加速,它们只会垂直向下,在屏幕宽度周围交替位置,意味着一个在右边,然后是另一个在中间,然后另一个在左侧,依此类推,在不同的位置,直到它们消失在屏幕的底部。
我试过这个
function moveMeteors()
for i = 1, math.random(1, 2) do
meteors = display.newImage("meteor.png")
screenGroup:insert(meteors)
meteors.x = (math.random(display.contentWidth))
meteors.y = centerY - 340
transition.to(meteors, {time = math.random(3500 - speedMeteor, 4500 - speedMeteor),
y = 1000 + speedMeteor, onComplete = clear })
speedMeteor = speedMeteor + 10
end
end
但是,有时候图像会出现在另一个上面,我不希望这样,我的意思是,每个图像都出现在屏幕的顶部到底部。我希望我能很好地解释这一点。
答案 0 :(得分:1)
你应该考虑利用Coronasdk的内置物理学。 CoronaDocs:Physics.
作为示例,此代码应该可以轻松模拟您尝试获得的效果,您必须添加函数以在离开屏幕时删除对象等。
local physics = require("physics")
physics.start()
function SpawnMeteor()
local meteor = display.newImage( "meteor.png", math.random(display.contentWidth), centerY - 340)
physics.addBody( meteor)
end
timer.performWithDelay( 2000, SpawnMeteor)