Love2D Lua error: attempt to call field 'isDown' (a nil value)
Love2D Lua error: attempt to call field 'isDown' (a nil value)
这是我在 Love2D 中的代码:
function love.load()
ninja = love.graphics.newImage("Ninja.png")
x = 0
y = 0
speed = 256
end
function love.update(dt)
if love.keyboard.isDown("right") then
ninja = love.graphics.newImage("NinjaRight.png")
x = x + (speed * dt)
end
if love.keyboard.isDown("left") then
ninja = love.graphics.newImage("NinjaLeft.png")
x = x - (speed * dt)
end
if love.keyboard.isDown("down") then
y = y + (speed * dt)
end
if love.keyboard.isDown("up") then
y = y - (speed * dt)
end
if love.joystick.isDown(joystick, 1, 2, 3, 4) then
a = 5
end
end
function love.draw()
love.graphics.draw(ninja, x, y)
end
我想让游戏在连接时识别控制器。
但是当我 运行 游戏时,我收到错误消息:
attempt to call field 'isDown'(a nil value)
问题出在哪里?
由于 LÖVE 0.9.0
与操纵杆相关的 isDown()
功能已移至另一个 namespace
/table
/您命名为 ir 或更多 "object" 类结构。 [1]
所以,在你的代码中你应该像这样使用它:
--Get table of all connected Joysticks:
local joysticks = love.joystick.getJoysticks()
--Pick first one:
local joystick = joysticks[1]
if joystick:isDown(1, 2, 3, 4) then
a = 5
end
其中 joystick
是您的 Joystick
对象。 [2]
请注意,love.keyboard.isDown() 用法尚未更改。但是,我想,它也即将到来。早晚会。
这是我在 Love2D 中的代码:
function love.load()
ninja = love.graphics.newImage("Ninja.png")
x = 0
y = 0
speed = 256
end
function love.update(dt)
if love.keyboard.isDown("right") then
ninja = love.graphics.newImage("NinjaRight.png")
x = x + (speed * dt)
end
if love.keyboard.isDown("left") then
ninja = love.graphics.newImage("NinjaLeft.png")
x = x - (speed * dt)
end
if love.keyboard.isDown("down") then
y = y + (speed * dt)
end
if love.keyboard.isDown("up") then
y = y - (speed * dt)
end
if love.joystick.isDown(joystick, 1, 2, 3, 4) then
a = 5
end
end
function love.draw()
love.graphics.draw(ninja, x, y)
end
我想让游戏在连接时识别控制器。 但是当我 运行 游戏时,我收到错误消息:
attempt to call field 'isDown'(a nil value)
问题出在哪里?
由于 LÖVE 0.9.0
与操纵杆相关的 isDown()
功能已移至另一个 namespace
/table
/您命名为 ir 或更多 "object" 类结构。 [1]
所以,在你的代码中你应该像这样使用它:
--Get table of all connected Joysticks:
local joysticks = love.joystick.getJoysticks()
--Pick first one:
local joystick = joysticks[1]
if joystick:isDown(1, 2, 3, 4) then
a = 5
end
其中 joystick
是您的 Joystick
对象。 [2]
请注意,love.keyboard.isDown() 用法尚未更改。但是,我想,它也即将到来。早晚会。