我正在尝试编写一个执行视差滚动的代码。“pieces”表中的所有精灵都需要射向空中,然后将它们的位置重置为 y=200 和 x=randomnumber。稍后,我将根据它们移动的速度使它们变小或变大以获得真正的 3D 效果。
这是一个天真的尝试:
local speed = math.random(250,1000)
pieces = { "sprite", "sprite1", "sprite2", "sprite3", "sprite4",
"sprite5", "sprite6", "sprite7", "sprite8", "sprite9", "sprite10",
"sprite11", "sprite12", "sprite13", "sprite14", "sprite15" }
function update(self, dt)
for i, v in ipairs(pieces) do
p = go.get_position(v)
p.y = p.y + speed * dt
print(v)
if p.y > 800 then
p.y = -200
p.x = math.random(1,25) * math.random(10,35)*2
local speed = math.random(250,1000)
end
go.set_position(v)
end
end
如果我在 ipairs 中打印“v”,我会得到所需的输出(sprite、sprite1、sprite 等),所以我认为我上面的内容会起作用。它没有。有什么帮助吗?