desert_reformulada.lua
local lvl = 20
local t = {
{vocations = {1, 5},Pos = {{x=182, y=56, z=7},{x=187, y=55, z=7}},item= {2175,{x=183, y=56, z=7}}},
{vocations = {2, 6},Pos = {{x=188, y=59, z=7},{x=188, y=55, z=7}},item= {2674,{x=189, y=59, z=7}}},
{vocations = {3, 7},Pos = {{x=172, y=52, z=7},{x=189, y=54, z=7}},item= {2455,{x=183, y=52, z=7}}},
{vocations = {4, 8},Pos = {{x=190, y=48, z=7},{x=190, y=54, z=7}},item= {2376,{x=191, y=48, z=7}}}
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
local check = {}
local items = {}
for _, k in ipairs(t) do
local x = getTopCreature(k.Pos[1]).uid
local v = getTileItemById(k.item[2], k.item[1])
if(x == 0 or not isPlayer(x) or getPlayerLevel(x) < lvl or isInArray(k.vocations, getPlayerVocation(x)) == FALSE) then
doPlayerSendCancel(cid, 'Está faltando player ou alguém não possui level '..lvl..' ou mais ou não tem a vocação.') return true
elseif v.uid == 0 then
doPlayerSendCancel(cid, "Todos os itens precisão estar na posição.") return true end
table.insert(check, x)
table.insert(items, v)
end
for k, tid in ipairs(check) do
doSendMagicEffect(getCreaturePosition(tid), CONST_ME_POFF)
doTeleportThing(tid, t[k].Pos[2])
doSendMagicEffect(getCreaturePosition(tid), CONST_ME_TELEPORT)
end
for _, remove in ipairs(items) do
doRemoveItem(remove.uid)
end
doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945)
return true
end
Como configurar
vocations = {1, 5} -- id das vocations que precisam ser
Pos = {{x=182, y=56, z=7},{x=187, y=55, z=7}} -- tem 2 pos, primeira pos é onde o jogador tem que estar e a segunda para onde ele vai ser teleportado
item= {2175,{x=181, y=56, z=7}} -- id do item, e a pos onde o item precisa estar
TAG
<action actionid="7779" script="desert_reformulada.lua"/>