Love2D菜单选择

时间:2012-03-24 17:24:18

标签: function menu lua love2d

由于某种原因,当我得到代码if love.keyboard.isDown("s")时,代码没有响应。也许我正在使用错误的函数,但它仍然很奇怪。

我尝试在love.keypressed和love.update中使用Menu()函数。仍然没有回应。

以下是完整代码:

main.lua

function love.load()
require "menu"
select = love.graphics.newImage("select.png")
Menu()
end
function love.draw()
   Menu()
end
function love.keypressed(key)
   Menu()
end

function love.update()
   Menu()
end

menu.lua

function Menu()
sly = 300
love.graphics.draw(select,sly,300)
if key == "w" then
    sly = sly + 50
end

if love.keyboard.isDown("s") then
    sly = sly - 50
end
end

1 个答案:

答案 0 :(得分:0)

不确定您在这里尝试做什么,但在Menu()功能中,您每次调用时都会重置sly变量,然后在有sly之后修改sly已经绘制了图像。这导致什么都没发生。

如果您更改它以便Menu()sly = 300 function Menu() love.graphics.draw(select,sly,300) if love.keyboard.isDown("w") then sly = sly + 50 end if love.keyboard.isDown("s") then sly = sly - 50 end end 之外初始化,那么当您按's'键时它至少会移动图像。另外,如果你想让's'以一种方式移动它而'w'以另一种方式移动它,那么代码应该是这样的:

key

或者,当您从Menu()调用love.keypressed并且不使用keyboard.isDown函数时,您可以将{{1}}变量传递到{{1}}。

同样,我不确定你在这里真正想要做什么,但它看起来像代码工作正常,你可能只是有一个逻辑错误。