【问题标题】:Lua 2D array errorLua 2D 数组错误
【发布时间】:2014-03-27 01:38:03
【问题描述】:

所以我是 Lua 的新手,在其他语言中我已经能够创建一个 2D 变量数组并简单地通过数组索引以创建一个平铺地图。每当我在 lua 中尝试这个时,我都会收到一个错误(特别是一个错误,指出我正在索引一个 nil 值)。我该如何解决这个问题?

代码

function love.load()
love.graphics.setColor(255,255,0)
tile = love.graphics.newImage("lightGrass.png")
map = { {1,1,0,0,0,0,0,0,0,0},
        {0,1,0,0,0,0,0,0,0,0},
        {0,1,0,0,0,0,0,0,0,0},
        {1,1,0,0,0,0,0,0,0,0},
        {0,0,0,0,0,0,0,0,0,0},
        {0,0,0,0,0,0,0,0,0,0},
        {0,0,0,0,0,0,0,0,0,0},
        {0,0,0,0,0,0,0,0,0,0},
        {0,0,0,0,0,0,0,0,0,0},
        {0,0,0,0,0,0,0,0,0,0}
    }
end

function love.draw()
    for i = 0, 10 do
        for j = 0, 10 do
            newPos = map[i][j]
            if newPos == 0 then -- this is where the error is!!!!!!!!!!!!!!!
                love.graphics.draw(tile,j * 32, i * 32)
            end
        end
    end

end

function love.update(dt)

end

【问题讨论】:

    标签: for-loop lua indexing null love2d


    【解决方案1】:

    Lua 中的数组从 1 开始,而不是从 0。所以你的 for 循环必须从 1 开始。

    【讨论】:

      猜你喜欢
      • 2021-06-27
      • 2015-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-20
      • 2014-03-31
      • 2016-11-21
      • 1970-01-01
      相关资源
      最近更新 更多