EDIT: Resolvi o problema, era o stackpos que estava constando erroneamente, por isso, testem seu stackpos para ver se esta correto. MOD pode marcar como resolvido porfavor
Ola,
Montei um script para remover 15 portões em 15 posições diferentes, iterando atraves de um for, no entanto, ele apenas remove a primeira posição corretamente e acusa "Item Not Found" nos outros 14.
Ja chequei todas as posições e não há nenhum erro la, ja exauri todas as minhas opções
--Zzaion Raid System
--Script by Giorox
local gateID = 9485
local tam = 15
local gatePosTable = {
{x=33303,y=31491,z=7,stackpos=1},
{x=33304,y=31491,z=7,stackpos=1},
{x=33305,y=31491,z=7,stackpos=1},
{x=33306,y=31491,z=7,stackpos=1},
{x=33307,y=31491,z=7,stackpos=1},
{x=33308,y=31491,z=7,stackpos=1},
{x=33309,y=31491,z=7,stackpos=1},
{x=33303,y=31498,z=7,stackpos=1},
{x=33304,y=31498,z=7,stackpos=1},
{x=33305,y=31498,z=7,stackpos=1},
{x=33306,y=31498,z=7,stackpos=1},
{x=33307,y=31498,z=7,stackpos=1},
{x=33308,y=31498,z=7,stackpos=1},
{x=33309,y=31498,z=7,stackpos=1},
{x=33310,y=31498,z=7,stackpos=1},
}
local function checkGates() --Return true if gate is closed and false if the gate is open
for i = 1,15 do
local gate = getThingfromPos(gatePosTable[1])
if gate.itemid ~= gateID then
return false
end
end
return true
end
local function removeGate()
for i = 1,15 do
doRemoveItem(getThingfromPos(gatePosTable[1]).uid,1)
end
return true
end
function onThink(interval)
if(checkGates() == true) then --If gates are closed, run the sequence to open them
--executeRaid("ZzaionGate")
removeGate()
--addEvent(executeRaid,600000,"ZzaionBosses")
else --If gates are open, run sequence to close them
for i = 1,15 do
doCreateItem(gateID, 1, gatePosTable[1])
end
end
return true
end
Algumas operações estão comentadas para testar a parte de remoção da parede com a qual estou tendo problema.
Se alguem puder me ajudar agradeço.
Estou usando TFS 0.3.6 Edited by Cyko V8, Tibia versão 8.6