动态地分配对象到2D数组Lua中。

以下是我正在尝试编写的代码。我试图在Lua中动态为二维数组分配对象。它返回一个错误,说在grid [i] [j] = diceclass.new(((i + 2)/ 10),((j + 2)/ 10))处尝试索引全局空值。有没有办法修复这个问题,或者我正在尝试实现的是可能的,即将对象动态分配到数组的每个元素?

local diceClass = require( “dice” )
grid = {}
for i = 1,5 do
    grid [i] = {}
    for j = 1,5 do
        grid [i] [j] = diceclass.new(((i + 2)/ 10),((j + 2)/ 10))
    end
end

--dice class
local dice = {}
local dice_mt = {__ index = dice}

function dice.new (posx,posy)
    a = math.random(1,6)
    local newdice = display.newText(a,display.contentWidth * posx,
                                    display.contentHeight * posy,nil,60)
    return setmetatable(newdice,dice_mt)
end

return dice
点赞
用户107090
用户107090

diceClassdiceclass 不是同一个变量。

2012-07-18 14:41:47