Ir para conteúdo

[Encerrado] [Pedido] Quest diferente


GuhPk

Posts Recomendados

Pessoal, estou hoje aqui para pedir um script para uma quest...

É assim, é uma quest que colocarei na outland, que é preciso 1 player de cada clã para faze-la...

 

Como funciona?

 

É necessário 8 players para está quest, um de cada clã... Cada um deles, terá que ir em um tal tile e fica em cima.

Quando todos os players ficarem em cima de seus tiles todos eles serão teleportados para um outro local.

 

 

Tem regras na quest... Tipo:

 

Para serem teleportados tem que ter todos os players corretos nos tiles...

 

Exemplos: Na outland de fogo, só funciona se você for Volcanic.

Na outland de planta, só funciona se você for Naturia.

 

Players só serão teleportados se tiver 1 em cada tile, se estiver faltando 1 tile se quer, ninguém é teleportado!! =]

 

 

Valendo 3 REP's!!!

Link para o comentário
Compartilhar em outros sites

Eu fiquei um pouco confuso.

Quando você disse "1 player de cada clã" eu imaginei que você estivesse falando de 'Guilds'.

Mas quando você disse "

só funciona se você for Volcanic." aí eu imaginei que fosse uma 'Vocação'.

 

Resolva essa Dúvida para mim.

Link para o comentário
Compartilhar em outros sites

para checar se tem a promotion é só checar um storage não é?

 

Na verdade não é não. Há uma função específica para checar a Promotion. Mas tendo a Annihilator como base, acho que não vai ser tão difícil fazê-la.

Link para o comentário
Compartilhar em outros sites

Tag da Action.xml :.

 

<action uniqueid="7200" event="script" value="NomeDoArquivo.lua" />

 

function onUse(cid, item, frompos, item2, topos)
--================ Vocation 1 =================--
PlayerPosF = {x=504, y=497, z=5, stackpos=253} --== Posição de onde a Vocação 1 Deve ficar.
PlayerTileF = getThingFromPos(PlayerPosF) --== Verifica o Jogador no Tile da Vocation 1.
PlayerTPF = {x=504, y=501, z=5} --== Posição final para onde o Jogador irá.
--================ Vocation 2 =================--
PlayerPosG = {x=506, y=497, z=5, stackpos=253} --== Posição de onde a Vocação 2 Deve ficar.
PlayerTileG = getThingFromPos(PlayerPosG) --== Verifica o Jogador no Tile da Vocation 2.
PlayerTPG = {x=506, y=501, z=5} --== Posição final para onde o Jogador irá.




if item.uid == 7200 and item.itemid == 1945 then --== Alavanca ID 1945 com UniqueID 7200.
if PlayerTileF.itemid > 0 and PlayerTileG.itemid > 0 then --== Verifica se Todos os Jogadores estão nos seus Devidos Tiles.
PlayerVocF = getPlayerVocation(getTopCreature(PlayerPosF).uid) --== Verifica a Vocation do Jogador no Tile da Vocation 1.
PlayerVocG = getPlayerVocation(getTopCreature(PlayerPosG).uid) --== Verifica a Vocation do Jogador no Tile da Vocation 2.

if PlayerVocF == 1 and PlayerVocG == 2 then --== Verifica se os Jogadores estão nos Tiles Corretos de sua Vocation.
doTeleportThing(PlayerTileF.uid, PlayerTPF) --== Teleporta o Jogador da Vocation 1.
doTeleportThing(PlayerTileG.uid, PlayerTPG) --== Teleporta o Jogador da Vocation 2.

doSendMagicEffect(PlayerTPF, 10) --== Efeito na Nova Posição da Vocation 1.
doSendMagicEffect(PlayerTPG, 10) --== Efeito na Nova Posição da Vocation 2.

doTransformItem(item.uid,item.itemid+1)
else
doSendMagicEffect(getPlayerPosition(cid), 2)
doPlayerSendCancel(cid, "Algum Jogador não está no Tile de sua Vocação.")
end
else
doPlayerSendCancel(cid, "Todos os Jogadores devem ficar nos Tiles.")
end

elseif item.uid == 7200 and item.itemid == 1946 then
doTransformItem(item.uid,item.itemid-1)
end
return TRUE
end

 

OBS [1] :. Só há duas Posições Configuradas. Basta colocar as Outras seguindo o Modelo do Script.

OBS [2] :. Testei em um Servidor 8.60. Não tenho nenhum Otserv PokeTibia no meu PC.

Editado por Frenesy
Link para o comentário
Compartilhar em outros sites

/\

isso n vai funcionar.. o sistema de clan n tem nd a ver com o sistema de vocaçao do tibia.. ;/

 

@topic

se ta usando meu serv..

 

local posis = {

{'Volcanic', {x=504, y=497, z=5}}, --nome de cada clan e a pos aonde o player desse clan tem q tar...

{'Seavell', {x=504, y=497, z=5}},

{'Orebound', {x=504, y=497, z=5}},

{'Wingeon', {x=504, y=497, z=5}},

{'Malefic', {x=504, y=497, z=5}},

{'Gardestrike', {x=504, y=497, z=5}},

{'Psycraft', {x=504, y=497, z=5}},

{'Naturia', {x=504, y=497, z=5}},

{'Raibolt', {x=504, y=497, z=5}},

}

 

local toPosi = {x=504, y=497, z=5} --pos pra onde os players serao teleportados

 

function onUse(cid, item, frompos, item2, topos)

 

 

for _, array in ipairs(posis) do

local p = getRecorderPlayer(array[2])

if not isPlayer(p) or getPlayerClanName(p) ~= array[1] then

doPlayerSendTextMessage(cid, 27, "One or more players aren't in the correct place!")

return true

end

end

doTransformItem(item.uid, (item.itemid == 1945 and 1946 or 1945))

for _, array in ipairs(posis) do

local p = getRecorderPlayer(array[2])

if isPlayer(p) then

doTeleportThing(p, getClosestFreeTile(p, toPosi))

doSendMagicEffect(getThingPos(p), 21)

end

end

 

return true

end

 

Link para o comentário
Compartilhar em outros sites

isso n vai funcionar.. o sistema de clan n tem nd a ver com o sistema de vocaçao do tibia.. ;/

 

Sendo assim, desculpe pelo meu ERRO FATAL. Não conheço muito bem OTservs PokeTibia. Queria ajudar mais fiquei um pouco perdido.

 

Abraços !! happy.png

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...