键盘按键未激活
Posted
技术标签:
【中文标题】键盘按键未激活【英文标题】:keyboard keyisdown is not activating 【发布时间】:2021-08-29 09:07:59 【问题描述】:当我按下 d 和 a 按钮时,我试图让我的桨上下移动。 当我按下 d 和 a 按钮时,什么都没有发生……他们只是坐在那里…… 无论如何,如果您知道,请告诉我代码如下。谢谢 我知道缩进是错误的,如果这篇文章我必须更改:)
window_width = 580
window_height = 420
playerScore = 0
enemyScore = 0
pSpeed = 200
player1Y = 100
player2Y = -20
function love.load()
love.window.setMode(window_width, window_height)
end
function love.draw()
love.graphics.printf('hello pong', 0, window_height / 2 - 6, window_width, 'center')
love.graphics.rectangle("fill", 500, player1Y , 10, 50)
love.graphics.rectangle("fill", 40, 220, 10, 50)
love.graphics.rectangle("fill", 100, 230, 7, 5)
end
function update(dt)
if love.keyboard.isDown('d') then
player1Y = player1Y + pSpeed * dt
elseif love.keyboard.isDown('a') then
player1Y = player1Y + -pSpeed * dt
end
end
【问题讨论】:
【参考方案1】:尝试使用pSpeed = 10
而不是 200,这样您的矩形不会在 2 个步骤中超出 window_height。
每个矩形都有change colors,所以更容易看到发生了什么。
function love.draw()
love.graphics.setColor( 0, 0, 0 ) -- black
love.graphics.printf( 'hello pong', 0, window_height /2 -6, window_width, 'center' )
love.graphics.setColor( 1, 0, 0 ) -- red
love.graphics.rectangle( "fill", 500, player1Y, 10, 50 )
love.graphics.setColor( 0, 1, 0 ) -- green
love.graphics.rectangle( "fill", 40, 220, 10, 50 )
love.graphics.setColor( 0, 0, 1 ) -- blue
love.graphics.rectangle( "fill", 100, 230, 7, 5 )
end
【讨论】:
【参考方案2】:我认为你应该写“love.update(dt)”而不是只写“update(dt)”。我试着改变它,它奏效了!此外,缩进不会影响代码在 Lua 中的工作方式,但会大大提高可读性。
【讨论】:
以上是关于键盘按键未激活的主要内容,如果未能解决你的问题,请参考以下文章