在lua中访问表的正确方法是什么?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在lua中访问表的正确方法是什么?相关的知识,希望对你有一定的参考价值。
我决定和我的空闲时间进行一些有趣的活动,为Garry的Mod角色扮演做一些有趣的插件。
我试图制作的插件是允许特定的门可以出租,然后当有人租用那扇门时,主人将收到定期付款!
我有一些问题,表不能访问。
- 门是一个元函数,是所有实体的属性。 - 在这种情况下,它属于门。
cRentableDoors = cRentableDoors or {} -- Global table
function door:makeRentableSub( doorParent )
-- GetNWBool() is a function used to network information
-- on entities from server to client. ( so we can draw HUDs etc )
if self:GetNWBool( "IsRentable" ) == false or nil then
self:SetNWBool( "IsRentable", true )
self:SetNWBool( "IsSub", true )
cRentableDoors[doorParent:MapCreationID()] = {
MainDoor = doorParent,
SubDoors = {{ent = self, key = self:MapCreationID()}}
}
end
end
只有一个问题。当我想添加几个子门时,'SubDoors'表只打印1个索引。我在这里压倒一些东西吗?
随意问任何你不确定的问题!
谢谢!
答案
问题就在于此
SubDoors = {{ent = self, key = self:MapCreationID()}}
你有两个级别的大括号,使这个表达式相当于
SubDoors = { [1] = { ent = self, key = self:MapCreationID() } }
这是一个包含一个条目的表格表。只是去除外面的括号,你应该没事,即
SubDoors = {ent = self, key = self:MapCreationID()}
以上是关于在lua中访问表的正确方法是什么?的主要内容,如果未能解决你的问题,请参考以下文章