所以,我在尝试将字符串分成表格(玩家加入团队)时遇到了问题。当只有两个玩家时,它就像一个魅力,但当有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
答案 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)
代替。