怎样在LOVE2D中使用hump.timer实现重复循环?

怎样在LOVE2D中实现重复循环,以便让一个角色移动?

我尝试过

function love.keypressed(key)
if key=='left' then
repeat
imgx=imgx+1
timer.after(1,function() end)
until not love.keyboard.isDown('left')
end
end

但它没有起作用。请帮帮我!

点赞
用户7370273
用户7370273

看起来你正在试图在按下某个键时移动图像。使用第三方库计时器来处理这个问题过于复杂。

你需要将一些 X 和 Y 变量与图像关联起来,并使用这些变量绘制图像。你可以通过使用 love.keypressed 回调函数或者在 love.update 中检查按键来改变它们,如果你希望得到连续的运动。

示例:

function love.load()
    sprite = {x=0, y=0, image=love.graphics.newImage("test.jpg")}
    speed = 3
end

function love.update(dt)
    if love.keyboard.isDown("left")  then sprite.x = sprite.x - speed * dt end
    if love.keyboard.isDown("right") then sprite.x = sprite.x + speed * dt end
    if love.keyboard.isDown("up")    then sprite.y = sprite.y - speed * dt end
    if love.keyboard.isDown("down")  then sprite.y = sprite.y + speed * dt end
end

function love.draw()
    love.graphics.draw(sprite.image, sprite.x, sprite.y)
end
2017-01-04 04:35:45