Ir para conteúdo

Quests.


maximusot

Posts Recomendados

PROIBIDO POSTAR EM OUTRO LUGAR TOPICO EXCLUSIVO AO XTIBIA

créditos: 100% meus

 

 

Bom vamos começar o tutorial, aqui explicarei como fazer algumas quests então vamos lá!

 

1° Abra seu map editor, faça um lugar onde vai ficar o baú ou se quiser use um lugar já existente.

2° Coloque o baú ou qualquer outra coisa que quando o player der use pegue o item.

3° Clique com o botão direito no baú ou qualquer outro item que você tenha colocado lá e vá em propriedades, depois coloque no unique id um numero que ainda não esteja sendo usado no ot. (dica: coloque um numero entre 8000 e 9999 por que geralmente ainda não estão sendo usados)

 

Algumas ss de como colocar unique id nos itens

ssol1.th.jpg

ss1ig3.th.jpg

 

 

agora vamos aos scripts e as explicações.

essa é como fazer uma quest que de mais de um item.

(CLIQUE NO SPOIL)

--By ADM Leo Leonardo Caetano

 

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

 

if item.uid == 8500 then

queststatus = getPlayerStorageValue(cid,8500)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Você achou um Blessed Shield!.")

doPlayerAddItem(cid,2523,1)

setPlayerStorageValue(cid,8500,1)

else

doPlayerSendTextMessage(cid,22,"Esta vazio.")

end

elseif item.uid == 8501 then

queststatus = getPlayerStorageValue(cid,8501)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Você achou um Horned Helmet")

doPlayerAddItem(cid,2496,1)

setPlayerStorageValue(cid,8501,1)

else

doPlayerSendTextMessage(cid,22,"Esta vazio.")

end

elseif item.uid == 8502 then

queststatus = getPlayerStorageValue(cid,8502)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Voce achou uma Warlod Sword.")

doPlayerAddItem(cid,2408,1)

setPlayerStorageValue(cid,8502,1)

else

doPlayerSendTextMessage(cid,22,"Esta vazio.")

end

elseif item.uid == 8503 then

queststatus = getPlayerStorageValue(cid,8503)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Voce achou uma Demon Armor.")

doPlayerAddItem(cid,2494,1)

setPlayerStorageValue(cid,8503,1)

else

doPlayerSendTextMessage(cid,22,"Esta Vazio.")

end

else

return 0

end

 

return 1

end

Depois salve com um nome qualquer vá em data/actions/actions.xml e abra-o como bloco de notas e adicione essas linhas

<action uniqueid="8500" script="NOME.lua" />

<action uniqueid="8501" script="NOME.lua" />

<action uniqueid="8002" script="NOME.lua" />

<action uniqueid="8503" script="NOME.lua" />

--Explicação

Vermelho - Unique id que você colocou nos baus.

Azul claro- Aqui tem que ser numeros diferentes do storage value do outro bau, se não, não da pra pegar todos items.

Laranja - A mensagem que aparecerá quando o player der use e pegar o item

Pink - ID do item que o player irá ganhar, e a quantidade de itens.

Roxo - A mensagem que vai aparecer no caso do player querer pegar o item novamente.

Azul escuro - Unique id que você colocou no script.

Verde claro - nome que você salvou o script

 

Agora aqui vou explicar como fazer uma quest que o player deve escolher um item e não poderá pegar nenhum outro.

1° abra seu map editor e fassa um lugar que de para ver os itens que o player vai pegar (algo parecido com POI ou a annihilator) mas pense em algum modo que o player não irá conseguir pegar o iten que tiver a mostra!

2° coloque uniqueid nos baus (unique ids que ainda não tem no seu OT).

Aqui vai o script...

(CLIQUE NO SPOIL)

--By ADM Leo Leonardo Caetano

 

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

 

if item.uid == 8500 then

queststatus = getPlayerStorageValue(cid,8500)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Voce achou um Blessed Shield!.")

doPlayerAddItem(cid,2523,1)

setPlayerStorageValue(cid,8500,1)

else

doPlayerSendTextMessage(cid,22,"Esta vazio.")

end

elseif item.uid == 8501 then

queststatus = getPlayerStorageValue(cid,8500)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Voce achou um Horned Helmet")

doPlayerAddItem(cid,2496,1)

setPlayerStorageValue(cid,8500,1)

else

doPlayerSendTextMessage(cid,22,"Esta vazio.")

end

elseif item.uid == 8502 then

queststatus = getPlayerStorageValue(cid,8500)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Voce achou uma Warlod Sword.")

doPlayerAddItem(cid,2408,1)

setPlayerStorageValue(cid,8500,1)

else

doPlayerSendTextMessage(cid,22,"Esta vazio.")

end

elseif item.uid == 8503 then

queststatus = getPlayerStorageValue(cid,8500)

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,"Voce achou uma Demon Armor.")

doPlayerAddItem(cid,2494,1)

setPlayerStorageValue(cid,8500,1)

else

doPlayerSendTextMessage(cid,22,"Esta Vazio.")

end

else

return 0

end

 

return 1

end

Depois abra data/actions/actions.xml como bloco de notas e adicione essas linhas...

<action uniqueid="8500" script="NOME.lua" />

<action uniqueid="8501" script="NOME.lua" />

<action uniqueid="8502" script="NOME.lua" />

<action uniqueid="8503" script="NOME.lua" />

--Explicando

Vermelho - Unique ID que você colocou nos baus (ou no item que o player vai dar use para receber seu item)

Azul claro - Aqui nesse script para o player pegar apenas 1 de todos os itens o storage value deve ser igual um aos outros.

Laranja - Mensagem que vai aparecer quando o player der use no bau e receber seu item

Pink - ID do item que o player vai receber, e a quantidade do mesmo item.

Roxo - O que vai falar quando o player tentar pegar o item novamente.

Azul escuro - Unique id que você colocou no script.

Verde claro- nome que você salvou o script

Como foi sugerido pelo Tprocheira aqui vou ensinar a fazer um tipo de "desafio" que use action id...

(CLIQUE NO SPOIL)

abra seu map editor, depois coloque um balcão (ID: 1645) em algum lugar, depois, abra a pasta data/actions/scripts.

depois copie e cole qualquer arquivo .lua (CTRL + C e CTRL + V)

abra-o e apague tudo que estiver e cole isso

--By ADM Leo Leonardo Caetano

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

 

itempos = {x=331,y=60,z=11,stackpos=255}

item = getThingfromPos(itempos)

 

telepos = {x=71,y=33,z=8,stackpos=1}

 

playerpos = getPlayerPosition(cid)

 

effect1pos = {x=878,y=788,z=7,stackpos=1}

 

if item.itemid == 2881 and playerpos.x == 332 and playerpos.y == 60 and playerpos.z == 11 then

doTeleportThing(cid,telepos)

doSendMagicEffect(effect1pos,6)

doSendMagicEffect(telepos,10)

doSendMagicEffect(itempos,2)

doRemoveItem(item.uid,1)

 

else

 

doPlayerSendCancel(cid,"Fique em cima em frente a pedra.")

 

end

if item.itemid == 1645 then

doPlayerSendCancel(cid,"coloque o item na pedra.")

 

end

return 1

end

 

Agora vá em data/actions/actions.xml e abra-o como bloco de notas, depois disso adicione essas 2 linhas

 

<action itemid="1645" script="demodras dead.lua" />

<action itemid="2122" script="demodras dead.lua" />

 

--Explicando

Vermelho: Posição de onde o item irá ficar.

Azul escuro: Posição para onde o player será teleportado.

Verde escuro: Posição de onde irá aparecer o efeito.

Pink: ID do item que tem que colocar na pedra

Laranja: Posição de onde o player ficará para dar use no balcão

Roxo: ID do balcão

Marrom: mensagem que aparecerá se o player não ficar na posição certa, e mensagem que aparecerá se o player não colocar o item.

Cinza: ID do item

Azul claro: ID do balcão.

Verde claro: nome que você salvou o arquivo.

 

Quando eu for lembrando mais eu vou postando aqui!

se quiser podem dar uma ajuda a lembrar falando alguns tipos de quests, que eu edito e posto aqui....

(demorei pra fazer então pelomenos comentem)

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

LoL, como eu vou colocar ss de um script !?

só se for pra eu colocar a ss de 4 baus. colocando unique id, coisa que todo mundo sabe fazer, mas mesmo assim vou colocar.

vlw as dicas

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Maximus se eh meu amigo

 

mas eu num gostei mto nao

 

sei la

 

ta mto simples os exemplos de quests

 

claro q sao os mais comuns,

mas sei la

 

vc poderia por quests mais complexas

 

abraços

 

//skulls

Link para o comentário
Compartilhar em outros sites

Da uns exemplo do que pra você é uma quest complexa, que ai eu coloco umas aqui.

Os exemplos tão simples por que as quests é simples e não tem mais o que explica alem daquilo.

mas valeu a critica. :D

 

 

Atenciosamente,

Maximus.

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
×
×
  • Criar Novo...