Bom pessoal esse aqui eh meu primeiro tutorial
Eu vi por ai poucos tutoriais sobre quests, e os que eu vi estão com erros, ja tem um tutorial ensinando a fazer esse tipo de quest q vo ensinar a vcs, so q ta muito basicão, e estão faltando alguns comando, inton decidi fazer um script da quest, esta bem legal com efeitos e tudo mais
A queste eh o seguinte: O player vai estar em cima de um piso q afunda (igual aqueles do dp)em frente a uma mesa e do lado da mesa vai haver uma alavanca que quando o char colocar um item qualquer encima da mesa e puxar a alavanca ele vai ser teleportado pra outro lugar ou seja o lugar q vc definir e o item q ele pos ira sumir. Se o player nao colocar o item correto encima da mesa ira aparcer uma menssagem dizendo para ele colocar o item correto.
Vo parti do presupor q vc ja tenha preparado o mapa de acordo com a quest e esta usando como alavanca o item 1946.
1° Passo
Vah em propriedade da sua alavanca, e onde estiver escrito Uniqueid ou Quests ID Ponha 8000 ou um numero q o Actions não esteja usando.(Use 8000 como exemplo)
2° Passo
Va na pasta do seu ot abra a pasta data depois procure a pasta Actions clique com botão direito do mause sobre o arquivo Actions.xml e depois em editar.
Agora vamos adicionar o script q o action vai obedecer.
Citação: <action uniqueid="8000" script="Quest2.lua" />
Cole esse comando em qualquer lugar do arquivo
O que esta em azul eh o numero que vc decidio q vai usar na alavanca, vamus usar 8000 como exemplo.
O que esta de roxo eh o nome do arquivo.lua q vamus usar usaremos Quest2.lua como exemplo
Salve e fexe o arquivo
OBS : O nome do arquivo .lua nao deve conter espaços c nao o action nao reconhece .
3° Passo
Agora va na pasta scripts copie qualquer arquivo, e modifique o nome do arquivo copiado para Quest2 (lembrando q c vc for criar um nome diferente para seu script, ele nao deve conter espaços). Agora abra e pague tudo q tiver dentro do arquivo dexando o bloco de notas branquinho
4° Passo
Agora cole esse texto :
Citação:
function onUse(cid, item, frompos, item2, topos)
positem = {x=21, y=32, z=10, stackpos=2}
magicitem = getThingfromPos(positem)
if magicitem.itemid == 2141 then
doRemoveItem(magicitem.uid,1)
doSendMagicEffect(positem,6)
if item.itemid == 1946 then
playerpos = {x=22, y=32, z=10, stackpos=253}
player = getThingfromPos(playerpos)
nplayerpos = {x=28, y=45, z=10}
doSendMagicEffect(playerpos,2)
doTeleportThing(player.uid, nplayerpos)
doSendMagicEffect(nplayerpos,10)
doTransformItem(item.uid,1945)
doSendAnimatedText(getPlayerPosition(cid), "Consegui!.!.!", TEXTCOLOR_ORANGE)
end
if item.itemid == 1945 then
playerpos = {x=22, y=32, z=10, stackpos=253}
player = getThingfromPos(playerpos)
nplayerpos = {x=28, y=45, z=10}
doSendMagicEffect(playerpos,2)
doTeleportThing(player.uid, nplayerpos)
doSendMagicEffect(nplayerpos,10)
doTransformItem(item.uid,1946)
doSendAnimatedText(getPlayerPosition(cid), "Consegui!.!.!", TEXTCOLOR_ORANGE)
end
else
doPlayerSendCancel(cid,"Ponha o item certo em cima da mesa para completar a quest.")
end
return 1
end
De verde vai ser a posição da mesa, ou seja a posição q o item vai ficar.
De azul escuro vai ser o id do objeto q o player deve por para teleporta.
De rosa eh a posição q o player deve ficar ou seja a posição do piso q afunda (igual do dp), logico q o piso tem q fica em frente da mesa e perto da alavanca neh.
De azul claro eh posição para onde o player vai ser teleportado
5° Passo
Salve e pronto
Se tiverem alguma duvida pergutem q eu ajudarei
agradeço pela visita desde ja
Creditos : 100% meus