Ola galera do Xtibia Venho mais uma vez pedir ajuda.
Outro dia nosso amigo Slincer Ajudou-me a corrigir um erro em um script, mas agora notei que ele apresentou outro problema espero que alguém consiga me ajudar.
Segue o Script:
local a1 = {x=390, y=618, z=6} --canto de cima do lado direito
local a2 = {x=398, y=627, z=6} --canto de baixo do lado esquerdo
local players = {}
local id = 1543
local config = {
a3 = {x = 399, y = 622, z = 6, stackpos=1},
a4 = {x = 399, y = 623, z = 6, stackpos=1},
a5 = {x = 399, y = 624, z = 6, stackpos=1},
a6 = {x = 524, y = 626, z = 6, stackpos=1},
a7 = {x = 524, y = 627, z = 6, stackpos=1},
a8 = {x = 524, y = 628, z = 6, stackpos=1},
a9 = {x = 529, y = 626, z = 6, stackpos=1}
}
function onStepIn(cid, item, frompos, item2, topos)
for x = a1.x, a2.x do
for y = a1.y, a2.y do
local sid = getThingFromPos({x=x, y=y, z=a1.z, stackpos=253}).uid
if isPlayer(sid) and not isInArray(players, sid) then
table.insert(players, sid)
end
end
end
if #players >= 5 then
for e, f in pairs(config) do
doRemoveItem(getThingFromPos(f).uid, 1)
end
doPlayerSendTextMessage(cid, 22, 'LIBERADO.')
else
players = {}
end
return true
end
O problema apresentado é o seguinte, depois da primeira vez que remove as grades a segunda vez que um player entra no tile com a uniqueid mesmo com um único player na área ele remove as grades.
Acho que não ta resetando a informação da quantidade de players que tinha na área
Obs: criei um evento para repor as grades assim que todos saírem da área
Grato se alguem puder me ajudar.