Lua创建类出错

Jaz*_*guy 5 lua class love2d

我正在尝试为我的游戏创建一个类,但出现此错误(如 love2d 中所示):尝试索引 upvalue 'World'(布尔值)

这是我制作的世界文件:

local World = {}
World.__index = World

function World:new(meter, gravity)
    setmetatable({}, World)

    -- Set physics parameters
    love.physics.setMeter(meter)
    self.world = love.physics.newWorld(0, gravity*meter, true)

    -- Load background
    self.background = love.graphics.newImage("imgs/background.png")

    return self
end

function World:update(dt)

end

function World:draw()
    love.graphics.draw(self.background)
end

function World:destroy()
    -- Destroy the world
    self.world:destroy()
end
Run Code Online (Sandbox Code Playgroud)

在这里我称这个世界为:

local World = require("world")

function love.load()
    -- Build the world
    world = World:new(32, 9.81)
end
Run Code Online (Sandbox Code Playgroud)

怎么了?不管怎样,用 Lua 上课的最好方法是什么?

hjp*_*r92 5

在文件中,在末尾world.lua添加一个:return World

.
.
.
function World:destroy()
    -- Destroy the world
    self.world:destroy()
end

-- Add line below
return World
Run Code Online (Sandbox Code Playgroud)