以下是我想写的代码。我试图在lua中动态地将对象分配给2d数组。它返回一个错误,说在线格[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
答案 0 :(得分:3)
diceClass
与diceclass
不是同一个变量。