Lua:表预计,没有

时间:2013-10-10 14:51:55

标签: lua lua-table

所以,我在尝试将字符串分成表格(玩家加入团队)时遇到了问题。当只有两个玩家时,它就像一个魅力,但当有3个以上的玩家时,会弹出:“ Init错误:transformice.lua:7:错误的参数:表预期,得到零 ”。一切似乎都没问题,我真的不知道什么是错的。你能帮我吗?谢谢!这是我的代码:

ps = {"Player1","Player2","Player3","Player4"}
local teams={{},{},{}}

--[[for name,player in pairs(tfm.get.room.playerList) do
 table.insert(ps,name)
 end]]

table.sort(ps,function() return math.random()>0.5 end)
for i,player in ipairs(ps) do
  table.insert(teams[i%#teams],player)
  end

1 个答案:

答案 0 :(得分:9)

Lua数组从索引1开始,而不是0。在你有3名球员的情况下:

table.insert(teams[i%#teams],player)

评估为:

table.insert(teams[3%3],player)

然后最终会成为:

table.insert(teams[0],player)

teams[0]将是nil。你应该能够把它写成:

table.insert(teams[i%#teams+1],player)

代替。