(Creio que está na área correta) Galera, estou usando esse script para uma annihilation e está funcionando perfeitamente (uso tfs 04, 8.6). Porém quando os players são teleportados para a quest, os bixos são sumonados normalmente mas ao invés dos bixos sumirem após o time terminar a quest, eles continuam lá. Assim da erro na distro quando o próximo time tenta realizar a quest, porque não consegue sumonar os bixos uma vez que os bixos da quest anterior já estão vivos lá. Suspeito que seja essa parte do starting/ending, e se for mesmo ela, qual posição eu pego para por nisso ? Se não for também preciso de ajuda. Só falta isso para o script ficar bom !
Código >
function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
if item.itemid == 1946 then
player1pos = {x=164, y=117, z=8, stackpos=253}
player1 = getThingfromPos(player1pos)
player2pos = {x=163, y=117, z=8, stackpos=253}
player2 = getThingfromPos(player2pos)
player3pos = {x=162, y=117, z=8, stackpos=253}
player3 = getThingfromPos(player3pos)
player4pos = {x=161, y=117, z=8, stackpos=253}
player4 = getThingfromPos(player4pos)
if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then
player1level = getPlayerLevel(player1.uid)
player2level = getPlayerLevel(player2.uid)
player3level = getPlayerLevel(player3.uid)
player4level = getPlayerLevel(player4.uid)
questlevel = 500
if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and player4level >= questlevel then
queststatus1 = getPlayerStorageValue(player1.uid,5000)
queststatus2 = getPlayerStorageValue(player2.uid,5000)
queststatus3 = getPlayerStorageValue(player3.uid,5000)
queststatus4 = getPlayerStorageValue(player4.uid,5000)
if queststatus1 == -1 and queststatus2 == -1 and queststatus3 == -1 and queststatus4 == -1 then
--if 1==1 then
demon1pos = {x =12356, y =23455, z =6}
demon2pos = {x =12357, y =23455, z =6}
demon3pos = {x =12358, y =23455, z =6}
demon4pos = {x =12359, y =23455, z =6}
demon5pos = {x =12360, y =23455, z =6}
demon6pos = {x =12356, y =23460, z =6}
demon7pos = {x =12354, y =23460, z =6}
demon8pos = {x =12352, y =23460, z =6}
demon9pos = {x =12347, y =23457, z =6}
demon10pos = {x =12347, y =23455, z =6}
demon11pos = {x =12347, y =23453, z =6}
demon12pos = {x =12352, y =23450, z =6}
demon13pos = {x =12354, y =23450, z =6}
demon14pos = {x =12356, y =23450, z =6}
doSummonCreature("Harpia", demon1pos)
doSummonCreature("Harpia", demon2pos)
doSummonCreature("Harpia", demon3pos)
doSummonCreature("Harpia", demon4pos)
doSummonCreature("Harpia", demon5pos)
doSummonCreature("Harpia", demon6pos)
doSummonCreature("Harpia", demon7pos)
doSummonCreature("Harpia", demon8pos)
doSummonCreature("Harpia", demon9pos)
doSummonCreature("Harpia", demon10pos)
doSummonCreature("Harpia", demon11pos)
doSummonCreature("Harpia", demon12pos)
doSummonCreature("Harpia", demon13pos)
doSummonCreature("Harpia", demon14pos)
nplayer1pos = {x=12353, y=23455, z=6}
nplayer2pos = {x=12352, y=23455, z=6}
nplayer3pos = {x=12355, y=23455, z=6}
nplayer4pos = {x=12354, y=23455, z=6}
doSendMagicEffect(player1pos,2)
doSendMagicEffect(player2pos,2)
doSendMagicEffect(player3pos,2)
doSendMagicEffect(player4pos,2)
doTeleportThing(player1.uid,nplayer1pos)
doTeleportThing(player2.uid,nplayer2pos)
doTeleportThing(player3.uid,nplayer3pos)
doTeleportThing(player4.uid,nplayer4pos)
doSendMagicEffect(nplayer1pos,10)
doSendMagicEffect(nplayer2pos,10)
doSendMagicEffect(nplayer3pos,10)
doSendMagicEffect(nplayer4pos,10)
doTransformItem(item.uid,1945)
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
end
if item.itemid == 1945 then
-- Here is the code start:
starting={x = 12352, y = 23455, z = 6, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x = 12361, y = 23455, z = 6, stackpos=253}
players=0
totalmonsters=0
monster = {}
repeat
creature= getThingfromPos(checking)
if creature.itemid > 0 then
if getPlayerAccess(creature.uid) == 0 then
players=players+1
end
if getPlayerAccess(creature.uid) ~= 0 and getPlayerAccess(creature.uid) ~= 3 then
totalmonsters=totalmonsters+1
monster[totalmonsters]=creature.uid
end
end
checking.x=checking.x+1
if checking.x>ending.x then
checking.x=starting.x
checking.y=checking.y+1
end
until checking.y>ending.y
if players==0 then
trash= {x=12353, y=23458, z=7}
current=0
repeat
current=current+1
doTeleportThing(monster[current],trash)
until current>=totalmonsters
doTransformItem(item.uid,1946)
end
-- Here is the end of it
end
end
return 1
end