Cara. O loop for está fazendo iteração na tabela posis e tu ests usando o segundo parametro do loop com index sendo que não existe tabela associada ao parametro array do loop.
Você pode retirar o index da chamada associado ao parametro array, mas pode ser que não seja o que tu queres.




info
Grupo: Artesão
Registrado: 21/09/13
Posts: 147
Reputação: +4
Estou com um problema de um script quado usa uma alavanca teletranporta 4 players de um determinado lugar para outro.
local posis = {
{x=766, y=864, z=6},
{x=768, y=864, z=6},
{x=766, y=866, z=6},
{x=768, y=866, z=6},
}
local toPosi = {x=767, y=868, z=7} --pos pra onde os players serao teleportados
function onUse(cid, item, frompos, item2, topos)
for _, array in ipairs(posis) do
local p = getRecorderPlayer(array[2])
if not isPlayer(p) ~= array[1] and getPlayerLevel(cid) <= 100 then
doPlayerSendTextMessage(cid, 27, "Nao tem 4 Players Necessarios ou alguem nao e lvl 100+")
return true
end
end
doTransformItem(item.uid, (item.itemid == 19390 and 19390 or 19390))
for _, array in ipairs(posis) do
local p = getRecorderPlayer(array[2])
if isPlayer(p) then
doTeleportThing(p, toPosi)
doSendMagicEffect(getThingPos(p), 21)
end
end
return true
end
Da o seguinte erro na distro