MO

Teleporta 1 Player, 4 Itens Necessários

Por Mormai, 10 de jul. de 2011 em Scripts

otserv
tibia
script
3
965
MormaiM
10 de julho de 2011 às 22:51

Olá espero estar postando na página certo do contrário minhas desculpas . . .

 

Meu problema é o seguinte, eu "desenvolvi" uma questisinha que para você chegar na sala do bau precisa colocar 4 itens para sacrifício.

 

Link da imagem >> http://www.image-share.com/ijpg-768-253.html

 

O tópico mais parecido que achei foi esse >>> http://www.xtibia.com/forum/topic/159717-alavanca-que-teleporta-colocando-itens/

Tentei usar o script desse tópico editando o id dos itens as posições mas mesmo assim continua com problemas.

 

Queria também que quando puxasse a alavanca o player fosse teleportado, os itens de sacrifício sumissem,

e alavanca voltasse a posição de "não acionado" em 3 segundos mais ou menos.

 

Desde já grato.

11 de julho de 2011 às 00:21

Dúvida sanada por msn, script usado:

 

function onUse(cid, item)

local pos1 = {x=90, y=111, z=8}
local pos2 = {x=91, y=111, z=8}
local pos3 = {x=95, y=111, z=8}
local pos4 = {x=96, y=111, z=8}
local id1 = 8300
local id2 = 8298
local id3 = 8306
local id4 = 8304

local playerpos = {x=785, y=188, z=8}

if getItemStack(pos1, id1) and getItemStack(pos2, id2) and getItemStack(pos3, id3) and getItemStack(pos4, id4) then
doRemoveItem(getItemStack(pos1, id1).uid, 1)
doRemoveItem(getItemStack(pos2, id2).uid, 1)
doRemoveItem(getItemStack(pos3, id3).uid, 1)
doRemoveItem(getItemStack(pos4, id4).uid, 1)
doTeleportThing(cid, playerpos)
else
doPlayerSendCancel(cid, "Algum item está faltando.")
end

return TRUE
end

function getItemStack(pos, iid)

for i = 1, 255 do
posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i})
if posa.itemid == iid then
return posa
end
end

return nil
end

 

Tópico movido.

MormaiM
11 de julho de 2011 às 00:33

Dúvida sanada por msn, script usado:

 

function onUse(cid, item)

local pos1 = {x=90, y=111, z=8}
local pos2 = {x=91, y=111, z=8}
local pos3 = {x=95, y=111, z=8}
local pos4 = {x=96, y=111, z=8}
local id1 = 8300
local id2 = 8298
local id3 = 8306
local id4 = 8304

local playerpos = {x=785, y=188, z=8}

if getItemStack(pos1, id1) and getItemStack(pos2, id2) and getItemStack(pos3, id3) and getItemStack(pos4, id4) then
doRemoveItem(getItemStack(pos1, id1).uid, 1)
doRemoveItem(getItemStack(pos2, id2).uid, 1)
doRemoveItem(getItemStack(pos3, id3).uid, 1)
doRemoveItem(getItemStack(pos4, id4).uid, 1)
doTeleportThing(cid, playerpos)
else
doPlayerSendCancel(cid, "Algum item está faltando.")
end

return TRUE
end

function getItemStack(pos, iid)

for i = 1, 255 do
posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i})
if posa.itemid == iid then
return posa
end
end

return nil
end

 

Tópico movido.

 

 

Obrigado pela paciência ,testado e aprovado 100% fico muito grato.