访问表内表格内的数据会得到nil值

时间:2014-08-13 14:20:50

标签: lua

截至目前,我正在尝试通过Tiled绘制分层世界地图,通过Tiled(非常有用,因为您可以直接在.lua文件中导出您可视化创建的地图)。

关于这一点,我遇到了一个问题:Tiled提供了这种类型的lua文件,我们称之为data.lua

return {
---data
tilesets = {
image = "path/to/image",
imagewidth = 2560,
imageheight = 1664,
--other data
},

layers = { 

layer1 = {}, --there's data in here
layer2 = {} --there's data in here

}

}

在另一个文件world_map.lua中,我有这个

local world_map = {}
local world_data = {}
world_data = require "data"

local last_tile = (world_data.tilesets.imagewidth *  world_data.tilesets.imageheight)/(world_data.tilewidth * world_data.tileheight)

--various functions which also use world_data

return world_map 

现在,当我运行此代码时,我发现在图像宽度上操作算术运算是不可能的,因为它没有价值,所以,我猜,它看起来没有初始化。我无法理解我做错了什么:require指令应该将该表(由data.lua返回的表)设置为局部变量,然后我只需访问该变量并对其字段进行操作。然后,嵌套表中的所有字段都使用它们自己的值进行初始化,但根据解释器它们是nil。我做错了什么?

0 个答案:

没有答案