AL

Crie Suas Quest´s De Uma Maneira Rapida E Facil.

Por alissonlinneker, 31 de dez. de 2008 em Actions e Talkactions

otserv
tibia
script
23
5.7k
alissonlinnekerA
31 de dezembro de 2008 às 20:30

Aqui está uma nova maneira de criar suas quests.

 

Vamos la.

 

Primeiramente, crie um arquivo com o nome quests.lua dentro da pasta data/actions/scripts

Em seguida, adicione o seguinte código à ela:

 

local quests =

{

 

 

[8165] = {

storageId = 12000,

rewardId = 2487,

count = 1

},

 

}

 

function useQuestChest(cid, quest)

local queststatus = getPlayerStorageValue(cid, quest.storageId)

if queststatus == -1 then

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have found a " .. getItemNameById(quest.rewardId) .. ".")

doPlayerAddItem(cid, quest.rewardId, quest.count)

setPlayerStorageValue(cid, quest.storageId, 1)

else

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.")

end

end

 

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

if quests[item.uid] ~= nil then

useQuestChest(cid, quests[item.uid])

end

return TRUE

end

 

-Mais como funciona?

Simples. Se você que adicionar uma nova quests ao seu servidor, basta editar os seguintes campos:

 

8165 = É o uniqueid da quest.

12000 = É o número de storage ID (o que indica se você fez ou não aquela ação).

2487 = É o ID do item que deseja ter na quest, que no caso uma crown armor.

1 = É a quantidade de itens que o jogador ira receber ao fazer a quest, no caso so 1.

 

Bem, feito a primeira parte, é so adicionar então a quest no arquivo actions.xml, dentro da pasta data/actions, ficaria assim:

 

<action uniqueid="8165" script="quest.lua" />

 

Agora, para adicionar mais quests no quest.lua, basta duplicar a seguinte parte (e assim por diante):

 

[8165] = {

storageId = 12000,

rewardId = 2487,

count = 1

},

 

Então ficaria assim no quest.lua:

 

local quests =

{

 

 

[8165] = {

storageId = 12000,

rewardId = 2487,

count = 1

},

 

 

[8166] = {

storageId = 12001,

rewardId = 2487,

count = 1

},

}

 

function useQuestChest(cid, quest)

local queststatus = getPlayerStorageValue(cid, quest.storageId)

if queststatus == -1 then

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have found a " .. getItemNameById(quest.rewardId) .. ".")

doPlayerAddItem(cid, quest.rewardId, quest.count)

setPlayerStorageValue(cid, quest.storageId, 1)

else

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "It is empty.")

end

end

 

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

if quests[item.uid] ~= nil then

useQuestChest(cid, quests[item.uid])

end

return TRUE

end

E assim no actions.xml:

<action uniqueid="8165" script="quest.lua" />

<action uniqueid="8166" script="quest.lua" />

 

Obs: Nuca se esqueça de trocar o campo uniqueid e storage do arquivo para cada item. Eu coloquei o storageid para iniciar em 12000, para não acontecer nenhum tipo de conflito de storages no servidor.

 

Qualquer dúvida, poste aqui. :smile_positivo:

 

Créditos: TFS team (script retirado da versão 0.3b2 e atualizado por min para versão beta3)

Editado Janeiro 29 por AlissonLinneker

BillyBolaB
01 de janeiro de 2009 às 01:20

Uma maneira bem boa mesmo.

 

Parabéns.

tibiaa4eT
01 de janeiro de 2009 às 06:45

@topic

 

Hm + da aquele bug de tipo

O chest abrir normal e dar o item (lembra ots 7.5)

 

Pq a função q eu fiz deu isso

 

E por isso nem postei

 

Msm assim mto boa a sua

 

+ vc pode adicionar um getplayerfreecap com o getitemweight xD

careca21C
02 de janeiro de 2009 às 04:52

Muito Bom,Quest Sempre Foi um Ploblema Para Min

Mas Agora vc ajudou bastante !!!

GRatz

 

:positive:

 

 

 

 

IcarooxDlollI
05 de janeiro de 2009 às 00:53
Aqui está uma nova maneira de criar suas quests.

 

Vamos la.

 

Primeiramente, crie um arquivo com o nome quests.lua dentro da pasta data/actions/scripts

Em seguida, adicione o seguinte código à ela:

 

 

 

-Mais como funciona?

Simples. Se você que adicionar uma nova quests ao seu servidor, basta editar os seguintes campos:

 

8165 = É o uniqueid da quest.

12000 = É o número de storage ID (o que indica se você fez ou não aquela ação).

2487 = É o ID do item que deseja ter na quest, que no caso uma crown armor.

1 = É a quantidade de itens que o jogador ira receber ao fazer a quest, no caso so 1.

 

Bem, feito a primeira parte, é so adicionar então a quest no arquivo actions.xml, dentro da pasta data/actions, ficaria assim:

 

 

 

Agora, para adicionar mais quests no quest.lua, basta duplicar a seguinte parte (e assim por diante):

 

 

 

Então ficaria assim no quest.lua:

 

 

E assim no quests.xml:

 

 

Obs: Nuca se esqueça de trocar o campo uniqueid e storage do arquivo para cada item. Eu coloquei o storageid para iniciar em 12000, para não acontecer nenhum tipo de conflito de storages no servidor.

 

Qualquer dúvida, poste aqui. :smile_positivo:

 

 

Mano n fis tudo certo mais aonde fica esse quests.xml ?

=/ me explica alguem aew .. agradeço .. vlws

alissonlinnekerA
05 de janeiro de 2009 às 21:51
Mano n fis tudo certo mais aonde fica esse quests.xml ?

=/ me explica alguem aew .. agradeço .. vlws

 

 

foi mal...

erro meu...

não era quest.xml

e sim actions.xml

 

desculpe

NottinghsterN
07 de janeiro de 2009 às 10:58

Cadê os créditos??

 

O autor deste código é o Gesior !!

cpsfuteC
09 de janeiro de 2009 às 12:21

Vlw Alisson xDD :smile_positivo:

Abraço

Andre26A
13 de janeiro de 2009 às 03:42

Opa, isso facilitará para iniciantes. Tutorial bem explicado, continue assim com a sua organização! Porque muitos tutoriais que eu vi por ai não explicavam de qual era versão do tfs que funcionava o script etc. Até +

2 semanas depois...
alissonlinnekerA
23 de janeiro de 2009 às 18:05
Opa, isso facilitará para iniciantes. Tutorial bem explicado, continue assim com a sua organização! Porque muitos tutoriais que eu vi por ai não explicavam de qual era versão do tfs que funcionava o script etc. Até +

 

 

Acabo de encontrar uma incompatibilidade de uma parte do script rodando na versão 0.3beta3.

 

Erro corrigido.

 

Att+

godbondeG
23 de janeiro de 2009 às 20:40

Muito bom cara me ajudou muito !!!

valeu !!!

 

Sem mais.

jpfds1J
28 de janeiro de 2009 às 16:38

Muito Bom Quests Sempre Foi Um Problema Eu Nunca Conseguia

 

Ajeita Elas Agora Com Esse "Tutorial"Será BeeM Mais Facíl

 

 

 

Obrigado

 

AlissonLinneker !!

 

 

 

 

Anteciosamente,

Jaum

FoxyF
28 de janeiro de 2009 às 21:20

Cara, eu to usando o TFS 0.3b3 e deu esse aviso de erro

 

Warning: [Event::loadScript] Can not load script. data/actions/scripts/quests/quests.lua data/actions/scripts/quests/quests.lua:11: '(' expected near 'useQuestChest'

 

 

Agradeço desde já,

Foxy

Editado Janeiro 28 por Foxy

alissonlinnekerA
28 de janeiro de 2009 às 23:57

é...aqui tb tava...mais eu ja arrumei..

o pessoal da TFS n arruma os trem quando vao divulgar n...

script do Gesior...

mais vo atualizar o topic agora mesmo

vlw pelo report

FoxyF
29 de janeiro de 2009 às 03:26

Eu que agradeço, ajudou bastante aqui :)

 

 

----edit----

Agora ta funcionando perfeitamente

 

Aprovadíssimo, pela funcionalidade e simplicidade :D

Editado Janeiro 29 por Foxy