我正在尝试在多维表中获得一些0和1,但我无法让它工作。我搜索了很多帖子,但我找不到解决方法。这是代码:
generatedTerrain={
{0,0,0,0,0},
{0,0,0,0,0}
}
x=0
y=0
function mapGen()
for y=1,67 do
generatedTerrain[y]={}
for x=1,89 do
generatedTerrain[x][y] = math.random(0,1) --This doesn't work
end
end
end
mapGen()
end
答案 0 :(得分:7)
您已经反转了表格中的x和y索引,因此您在其中创建了67个空表,但在下一个循环中,您尝试从1到89进行访问
答案 1 :(得分:2)
正如Daniel所说,您需要在存储/访问元素时更改x
和y
索引的顺序。这应该有效:
local generatedTerrain={}
function mapGen()
for y=1,67 do
generatedTerrain[y]={}
for x=1,89 do
generatedTerrain[y][x] = math.random(0,1) --<-- changed order or x,y
end
end
end
mapGen()