Ir para conteúdo
  • Cadastre-se

Posts Recomendados

  • Administrador

É chato entrar num ot e ver a quest:

Mata o dragon e abra o baú.

então resolvi fazer um tutorial para vocês.

lembrando que:

Você não deve fazer uma quest assim exatamente como a minha, com o baú do lado da alavanca e etc..., fiz o mapa em menos de um minuto.

Isso serve como exemplo de actions, e realmente, da para fazer muita coisa com esse exemplo.

Resumindo:

Você puxa uma alavanca, então é atribuido um storage ID à você, quando vc pisa no tile especial, ele checa se vc ja puxou a alavanca, se não, ele move você 1 sqm para o lado oposto.

Vou por um esquema para vocês verem:

esquemaquestjc1.jpg

Fiz o script da alavanca o mais facil possivel de configurar:

salve como questcomplexa.lua



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

local summonpos = {x=578, y=432, z=7, stackpos=1} -- posição de onde vai sumonar

local iditem = 1945, 1946 -- ids das alavancas

local itemuid = 12345 -- uid da alavanca

local creaturename = "Demon" -- monstro a ser sumonado

local storageid = 12345

local storagestatus = getPlayerStorageValue(cid, storageid)[/b]

[b]if item.itemid == iditem and item.uid == itemuid and storagestatus == -1 then

				doSummonCreature(creaturename, summonpos)

						   setPlayerStorageValue(cid,storageid,1)

				doPlayerSendTextMessage(cid,22,"You summoned a monster!")

				else

										   doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"You already summoned the monster, go to the reward room.")

end

return 1

end

Única coisa que vc deve configurar são as primeiras linhas, onde tem 'local = blablabla' No actions.xml

<action uniqueid="12345" script="questcomplexa.lua"/>

Agora o tile, que ve se puxou a alavanca, se não ele te empurra para traz. Salve como quest_tile.lua


local position = getCreaturePosition(cid)[/b]

[b]function onStepIn(cid, item, position, fromPosition)[/b]

[b]if getPlayerLookDir(cid) == 0 then

newdir = 2

elseif getPlayerLookDir(cid) == 1 then

newdir = 3

elseif getPlayerLookDir(cid) == 2 then

newdir = 0

else

newdir = 1

end[/b]

[b]if item.uid == 12344 and getPlayerStorageValue(cid, 12345) == 1 then

doPlayerSendTextMessage(cid,22,"You can get your reward!")

else

doMoveCreature(cid, newdir)

doSendMagicEffect(position, 10)

doPlayerSendTextMessage(cid,22,"You must pull the lever!")

end

end

No movements.xml:

<movevent event="StepIn" uniqueid="12344" script="quest_tile.lua"/>

Nele vc só edita a mensagem que manda, e botar o UID no mapa.

Sem fazer a quest vc não pode abrir o baú:

questcompelxa2fm1.jpg

Sumonando o demon:

questcomplexa3iw9.jpg

Você não pode puxar a alavanca novamente

questcomplexa4qo0.jpg

Espero que tenha ajudado, dúvidas é só postar.

Creditos:

Tuco

Underewarr(eu)

TibiaKing Team- KingTópicos
www.tibiaking.com

Link para o post
Compartilhar em outros sites

Interessante.

Dá para complementar ainda mais esse tipo de quest com creaturescripts e um script de baú especial, ou seja, que só dá o item se o jogador matou o monstro. Para evitar os espertinhos que puxam a alavanca, pegam o item e... run to the hills!

Link para o post
Compartilhar em outros sites
  • Administrador

ok vo fazer um com o creaturescript jaja faço to fazendo uns scripts pro meo projeto

na verdade comescei a "aprender"scripts e umas 5~6 semanas

entao nao sei muito mais vo tentar :D

Editado por Erimyth (veja o histórico de edições)

TibiaKing Team- KingTópicos
www.tibiaking.com

Link para o post
Compartilhar em outros sites

Ou então :hum:

Poderia colocar em um mapa:

Um
NPC
que daria uma storage para o player

depois, ele iria à um local informado pelo npc

e la teria um teleporte que o player só entraria se tivesse a storage do NPC

depois, la dentro da sala, teria somente a alavanca,

assim que o monstro fosse sumonado, o player teria que matar

e o teleporte para sair da sala iria aparecer em cima do loot do monstro morto

e por fim, ele voltaria para o npc, depois do npc checar a storage da alavanca

ele diria o local da recompensa, ou poderia teleporta-lo direto pra la

;D

Essa ideia é muito válida!

AUHhahahuauhuah

se alguém pudesse fazer esse script ia ser f#da hein? =|

sou bom em ideias, mas (ainda) não manjo muito de scripts =/

Quem se sensibilizar e puder fazer o script pra gente vai receber muitos rep XD

edit

vish :mellow:

essa ideia que eu tive agora

é bem semelhante ao sistema de task num é?

ahuahuhuahu

+ de qualquer forma, quem puder fazer o script eu agradeço :wow:

Editado por BoneFox (veja o histórico de edições)

tk-melhor.png

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo