Custei entender o que você queria meu chapa! kk Mas entao, você quer que o player só use ele se NÃO estiver em protection zone né? Então ta ai o que pediu!
Se ajudei Rep++!
function onUse(cid, item, frompos, item2, topos)
level = getPlayerLevel(cid)
spos = nil
manamax = 0
manaatual = 0
vidamax = 0
vidaatual = 0
if getTilePzInfo(getCreaturePosition(cid)) then
doPlayerSendCancel(cid, "Voce nao pode estar em area de proteção para teleportar.")
return 0
end
if item.itemid == 8981 then
testplayer = isCreature(cid, item2.uid)
if testplayer ~= 0 then
savpos = {x=getThingPos(item2.uid).x, y=getThingPos(item2.uid).y, z=getThingPos(item2.uid).z, stackpos=253}
setPlayerStorageValue(cid, 111, savpos.x)
setPlayerStorageValue(cid, 222, savpos.y)
setPlayerStorageValue(cid, 333, savpos.z)
doSendMagicEffect(topos, 62)
doPlayerSendTextMessage(cid, 22, 'Suas cordenadas foram salva com sucesso.')
doTransformItem(item.uid,9004)
else
doPlayerSendTextMessage(cid, 18, 'Você deve selecionar uma criatura viva.')
doSendMagicEffect(frompos, 2)
end
elseif item.itemid == 9004 then
-- atribuição dos valores salvos anteriormente (savpos) --
xpos = getPlayerStorageValue(cid, 111)
ypos = getPlayerStorageValue(cid, 222)
zpos = getPlayerStorageValue(cid, 333)
spos = {x=xpos, y=ypos, z=zpos}
voc = getPlayerVocation(cid) -- obtendo a vocação do player --
-- dependendo a vacação a formula de dano muda --
if voc == 9 or voc == 10 or voc == 11 or voc == 12 or voc == 13 or voc == 14 or voc == 15 or voc == 16 then
if xpos == 0 then
doPlayerSendTextMessage(cid, 18, 'Posição vazia, selecione uma posição para teleportar.')
doSendMagicEffect(frompos, 2)
doTransformItem(item.uid, 8981)
-- se posição (X) for diferente de 0 e a mana estiver cheia, então vai teleportar o char para a posição salva, adicionar o dano na vida e mana. --
elseif (manaatual >= manamax) and (vidaatual >= vidamax)then
doTeleportThing(cid, spos)
doRemoveItem(item.uid,9004)
doSendMagicEffect(spos, 37)
doPlayerSendTextMessage(cid, 22, 'Você foi teleportado com sucesso.')
xpos = setPlayerStorageValue(cid, 111, nil)
-- se a vida ou a mana não estiverem cheias, então vai ser enviada uma mensagem alertando que ambas precisam estar cheias. --
elseif manaatual < manamax then
if vidaatual < vidamax then
doPlayerSendTextMessage(cid, 18, 'Você precisa de ' .. vidamax ..' de vida e de ' .. manamax ..' de mana para usar este recurso.')
else
doPlayerSendTextMessage(cid, 18, 'Você precisa de ' .. manamax ..' de mana para usar este recurso.')
end
doSendMagicEffect(frompos, 2)
elseif vidaatual < vidamax then
if manaatual < manamax then
doPlayerSendTextMessage(cid, 18, 'Você precisa de ' .. vidamax ..' de vida e de ' .. manamax .. ' de mana para usar este recurso.')
else
doPlayerSendTextMessage(cid, 18, 'Você precisa de ' .. vidamax ..' de vida para usar este recurso.')
end
doSendMagicEffect(frompos, 2)
end
else
doPlayerSendTextMessage(cid, 18, 'Só valan\'s e Deuse\'s podem usar esse teleport.')
doSendMagicEffect(frompos, 2)
end
else
doPlayerSendCancel(cid, 'Erro! Item incorreto.')
doPlayerSendTextMessage(cid, 18, 'Erro! Item incorreto. Altere seu arquivo "actions.xml" corretamente! Se você for um player alerte seu GOD ou GM.')
doSendMagicEffect(frompos, 2)
end
return 0
end








info
Grupo: Campones
Registrado: 21/02/08
Posts: 57
Reputação: 0
Char no Tibia: The Rev