Ir para conteúdo

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


alissonlinneker

Posts Recomendados

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 por AlissonLinneker
Link para o comentário
Compartilhar em outros sites

@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

Link para o comentário
Compartilhar em outros sites

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

Link para o comentário
Compartilhar em outros sites

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é +

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
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+

Link para o comentário
Compartilhar em outros sites

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 por Foxy
Link para o comentário
Compartilhar em outros sites

Eu que agradeço, ajudou bastante aqui :)

 

 

----edit----

Agora ta funcionando perfeitamente

 

Aprovadíssimo, pela funcionalidade e simplicidade :D

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

×
×
  • Criar Novo...