Últimos assuntos
Doação
Donation
Aprenda A Fazer Novas Quests
iGames V2.0 :: Tibia
Página 1 de 1
Aprenda A Fazer Novas Quests
Primeiro, vc vai na pasta de seu ot, C:\Documents and Settings\Fulano\Desktop\ots\data\actions\scripts, nesse lugar ai, data, actions,scripts, e vai no chest.lua, manda editar e vai aparecer isso:
function onUse(cid, item, frompos, item2, topos)
[SIZE=7]-- bright sword quest
if item.uid == 5001 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
if getPlayerLevel(cid) >= 20 then
doPlayerSendTextMessage(cid,22,"You have found Bright Sword.")
doPlayerAddItem(cid,3233,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"You need level 20 to get prize.")
end
else
doPlayerSendTextMessage(cid,22,"It is empty.")
end
Isso eh uma quest, a da bright sword, tem muitas quests lah, vc vai na ultima e copia, da enter e cola, ai vai aparece lah uns negocio q vc tem q mudar,eh muito importante!
Exemplo: -- 10k quest
elseif item.uid == 5026 then(5026=numero da quest,tipo se a ultima foi 5024, a proxima eh 5025, lembrando q eh ateh 5999)
queststatus = getPlayerStorageValue(cid,5026)(5026=numero da quest,tipo se a ultima foi 5024, a proxima eh 5025, lembrando q eh ateh 5999, muda isso tbm
if queststatus == -1 then(Dexa assim)
if getPlayerLevel(cid) >= 15 then(Level requerido para pegar o prêmio) doPlayerSendTextMessage(cid,22,"You have found 10k.")(Mensagem que aparece na tela quando o player completa a quest) doPlayerAddItem(cid,2981,1)(2981, id do item que vai ganhar na questsoh ir no itens.xmle editar e procurar com ctrl+f) setPlayerStorageValue(cid,5026,1) (5026,novamente o numero da quest) else
doPlayerSendTextMessage(cid,22,"You need level 15 to get prize.") (Mensagem que aparece quando o player naum tem o level necessário para completar a quest) end
else
doPlayerSendTextMessage(cid,22,"Its empty.") (Mensagem que aparece quando o player ja completou a quest) end
end
return 1
end (O Primeiro End,eh o final da quest, mas kada vez q vc criar uma nova quest tem q deletar os proximos end e o return 1 e colocar na ordem no final dessa quest)
Bom, depois disso, abra o mapeditor, colokeos respawms dos bixos desejados pra quest, e o bau, clike com o botao direito no baú, e vai em poperties, coloca lah:
Action id: 5025 (ou o numero da quest)
Unique id: 5025 (ou o numero da quest)
Entao feche, e salve, abra seu server e va no baú e pegue o item, depois de matar os bixos eh claro ,
Bom, espero ter ajudado
Atenciosamente, Rafix
Qualquer duvida posta ae!
----------------------Edit---------------------
Como fazer quest de escolha (OPCIONAL)
Agora para quem quier aprender como faz baus estilo o da annihilator, 2 baus ou mais, e vc só pode pegar um item, irei ensinar agora. (a pedidos)
é bem simples, vou tentar explicar como funfa e vou postar exemplo.
nao tem o script inicial postado aqui? pronto, se for 2 baus vc junta 2 scripts em um só, se for 4, 4 scripts em um só, sendo que quando se faz isso se adiciona else antes dos outros if.
vou fazer um exemplo com 3 baus ok?
vamos lá.
-- Tutorial de Quest by Neto =] --
function onUse(cid, item, frompos, item2, topos)
if item.uid == X¹ then --primeiro bau--
queststatus = getPlayerStorageValue(cid,Y)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Z¹")
item_uid = doPlayerAddItem(cid,ID¹,Q)
setPlayerStorageValue(cid,Y,1)
else
doPlayerSendTextMessage(cid,22,"O baú está vazio.")
end
elseif item.uid == X² then --segundo bau--
queststatus = getPlayerStorageValue(cid,Y)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Z²")
item_uid = doPlayerAddItem(cid,ID²,Q)
setPlayerStorageValue(cid,Y,1)
else
doPlayerSendTextMessage(cid,22,"O baú está vazio.")
end
elseif item.uid == X³ then --terceiro bau--
queststatus = getPlayerStorageValue(cid,Y)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Z³")
item_uid = doPlayerAddItem(cid,ID³,Q)
setPlayerStorageValue(cid,Y,1)
else
doPlayerSendTextMessage(cid,22,"O baú está vazio.")
end
else
return 0
end
return 1
end
Para configurar é bem simples, é igual a um script normal, vc tem que preencher as variaves normalmente.
nota: vc vai notar uma diferença neste script, alem do elseif, vc pode ver que tem variaves diferentes assim: X¹, X² e X³.
vou ensinar como vc vai configurar.
o X é unique id, vc vai configurar como em um script normal, só que x¹ é diferente de x² que é diferente de x³.
O mesmo se aplica aos Z's, aos ID's, note que nao tem varios "Y", ou seja, o Y do primeiro bau é = ao do segundo e = ao do terceiro.
--Partindo para o exemplo pratico--
eu aconselho vc a fazer os UNIQUEIDS seguidos como no exemplo pratico.
X¹ = 3000
X² = 3001
X³ = 3002
Y = 3000.
Z¹ e ID¹ = Magic Sword (2400)
Z² e ID² = SCA (2431)
Z³ e ID³ = TH (2421)
PS: todos estes ids sao para 7.4, nao sei os de 7.5 decorados.
--Substituindo as variaveis--
-- Tutorial de Quest by Kinho =] --
function onUse(cid, item, frompos, item2, topos)
if item.uid == 3000 then --primeiro bau--
queststatus = getPlayerStorageValue(cid,3000)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Magic Sword")
item_uid = doPlayerAddItem(cid,2400,1)
setPlayerStorageValue(cid,3000,1)
else
doPlayerSendTextMessage(cid,22,"Vc ja pegou um dos 3 items.")
end
elseif item.uid == 3001 then --segundo bau--
queststatus = getPlayerStorageValue(cid,3000)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Stonecutter Axe")
item_uid = doPlayerAddItem(cid,2431,1)
setPlayerStorageValue(cid,3000,1)
else
doPlayerSendTextMessage(cid,22,"Vc ja pegou um dos 3 items.")
end
elseif item.uid == 3002 then --terceiro bau--
queststatus = getPlayerStorageValue(cid,3000)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Thunder Hammer")
item_uid = doPlayerAddItem(cid,2421,1)
setPlayerStorageValue(cid,3000,1)
else
doPlayerSendTextMessage(cid,22,"Vc ja pegou um dos 3 items.")
end
else
return 0
end
return 1
end
function onUse(cid, item, frompos, item2, topos)
[SIZE=7]-- bright sword quest
if item.uid == 5001 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
if getPlayerLevel(cid) >= 20 then
doPlayerSendTextMessage(cid,22,"You have found Bright Sword.")
doPlayerAddItem(cid,3233,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"You need level 20 to get prize.")
end
else
doPlayerSendTextMessage(cid,22,"It is empty.")
end
Isso eh uma quest, a da bright sword, tem muitas quests lah, vc vai na ultima e copia, da enter e cola, ai vai aparece lah uns negocio q vc tem q mudar,eh muito importante!
Exemplo: -- 10k quest
elseif item.uid == 5026 then(5026=numero da quest,tipo se a ultima foi 5024, a proxima eh 5025, lembrando q eh ateh 5999)
queststatus = getPlayerStorageValue(cid,5026)(5026=numero da quest,tipo se a ultima foi 5024, a proxima eh 5025, lembrando q eh ateh 5999, muda isso tbm
if queststatus == -1 then(Dexa assim)
if getPlayerLevel(cid) >= 15 then(Level requerido para pegar o prêmio) doPlayerSendTextMessage(cid,22,"You have found 10k.")(Mensagem que aparece na tela quando o player completa a quest) doPlayerAddItem(cid,2981,1)(2981, id do item que vai ganhar na questsoh ir no itens.xmle editar e procurar com ctrl+f) setPlayerStorageValue(cid,5026,1) (5026,novamente o numero da quest) else
doPlayerSendTextMessage(cid,22,"You need level 15 to get prize.") (Mensagem que aparece quando o player naum tem o level necessário para completar a quest) end
else
doPlayerSendTextMessage(cid,22,"Its empty.") (Mensagem que aparece quando o player ja completou a quest) end
end
return 1
end (O Primeiro End,eh o final da quest, mas kada vez q vc criar uma nova quest tem q deletar os proximos end e o return 1 e colocar na ordem no final dessa quest)
Bom, depois disso, abra o mapeditor, colokeos respawms dos bixos desejados pra quest, e o bau, clike com o botao direito no baú, e vai em poperties, coloca lah:
Action id: 5025 (ou o numero da quest)
Unique id: 5025 (ou o numero da quest)
Entao feche, e salve, abra seu server e va no baú e pegue o item, depois de matar os bixos eh claro ,
Bom, espero ter ajudado
Atenciosamente, Rafix
Qualquer duvida posta ae!
----------------------Edit---------------------
Como fazer quest de escolha (OPCIONAL)
Agora para quem quier aprender como faz baus estilo o da annihilator, 2 baus ou mais, e vc só pode pegar um item, irei ensinar agora. (a pedidos)
é bem simples, vou tentar explicar como funfa e vou postar exemplo.
nao tem o script inicial postado aqui? pronto, se for 2 baus vc junta 2 scripts em um só, se for 4, 4 scripts em um só, sendo que quando se faz isso se adiciona else antes dos outros if.
vou fazer um exemplo com 3 baus ok?
vamos lá.
-- Tutorial de Quest by Neto =] --
function onUse(cid, item, frompos, item2, topos)
if item.uid == X¹ then --primeiro bau--
queststatus = getPlayerStorageValue(cid,Y)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Z¹")
item_uid = doPlayerAddItem(cid,ID¹,Q)
setPlayerStorageValue(cid,Y,1)
else
doPlayerSendTextMessage(cid,22,"O baú está vazio.")
end
elseif item.uid == X² then --segundo bau--
queststatus = getPlayerStorageValue(cid,Y)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Z²")
item_uid = doPlayerAddItem(cid,ID²,Q)
setPlayerStorageValue(cid,Y,1)
else
doPlayerSendTextMessage(cid,22,"O baú está vazio.")
end
elseif item.uid == X³ then --terceiro bau--
queststatus = getPlayerStorageValue(cid,Y)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Z³")
item_uid = doPlayerAddItem(cid,ID³,Q)
setPlayerStorageValue(cid,Y,1)
else
doPlayerSendTextMessage(cid,22,"O baú está vazio.")
end
else
return 0
end
return 1
end
Para configurar é bem simples, é igual a um script normal, vc tem que preencher as variaves normalmente.
nota: vc vai notar uma diferença neste script, alem do elseif, vc pode ver que tem variaves diferentes assim: X¹, X² e X³.
vou ensinar como vc vai configurar.
o X é unique id, vc vai configurar como em um script normal, só que x¹ é diferente de x² que é diferente de x³.
O mesmo se aplica aos Z's, aos ID's, note que nao tem varios "Y", ou seja, o Y do primeiro bau é = ao do segundo e = ao do terceiro.
--Partindo para o exemplo pratico--
eu aconselho vc a fazer os UNIQUEIDS seguidos como no exemplo pratico.
X¹ = 3000
X² = 3001
X³ = 3002
Y = 3000.
Z¹ e ID¹ = Magic Sword (2400)
Z² e ID² = SCA (2431)
Z³ e ID³ = TH (2421)
PS: todos estes ids sao para 7.4, nao sei os de 7.5 decorados.
--Substituindo as variaveis--
-- Tutorial de Quest by Kinho =] --
function onUse(cid, item, frompos, item2, topos)
if item.uid == 3000 then --primeiro bau--
queststatus = getPlayerStorageValue(cid,3000)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Magic Sword")
item_uid = doPlayerAddItem(cid,2400,1)
setPlayerStorageValue(cid,3000,1)
else
doPlayerSendTextMessage(cid,22,"Vc ja pegou um dos 3 items.")
end
elseif item.uid == 3001 then --segundo bau--
queststatus = getPlayerStorageValue(cid,3000)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Stonecutter Axe")
item_uid = doPlayerAddItem(cid,2431,1)
setPlayerStorageValue(cid,3000,1)
else
doPlayerSendTextMessage(cid,22,"Vc ja pegou um dos 3 items.")
end
elseif item.uid == 3002 then --terceiro bau--
queststatus = getPlayerStorageValue(cid,3000)
if queststatus == -1 or queststatus == 0 then
doPlayerSendTextMessage(cid,22,"Você achou um(a) Thunder Hammer")
item_uid = doPlayerAddItem(cid,2421,1)
setPlayerStorageValue(cid,3000,1)
else
doPlayerSendTextMessage(cid,22,"Vc ja pegou um dos 3 items.")
end
else
return 0
end
return 1
end
Tópicos semelhantes
» tutorial Quests
» Novas Regras da Área. Atualizada
» [Dica] - Conquer Online - PC - Quests Itens Free
» Como fazer um isolamento de cor no Photoshop
» Como fazer chamadas telefônicas diretamente do Gmail
» Novas Regras da Área. Atualizada
» [Dica] - Conquer Online - PC - Quests Itens Free
» Como fazer um isolamento de cor no Photoshop
» Como fazer chamadas telefônicas diretamente do Gmail
iGames V2.0 :: Tibia
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|
Qua Out 19 2016, 22:04 por teilor
» MUDANÇAS iGAMES V2.0 Free & Vip
Qua Jun 10 2015, 18:11 por marcela
» Lançamento Lineage 2 Empire
Qua Dez 17 2014, 14:35 por teilor
» Reativação Staff
Dom Dez 14 2014, 18:42 por Viking
» Lineage 2 Empire
Sáb Dez 13 2014, 17:39 por Viking
» GAME - Ultra Street Fighter IV ganha detalhes de lançamento
Sex Dez 06 2013, 02:59 por teilor
» GAME - Ajude a Konami a fazer o PES da próxima geração
Sex Dez 06 2013, 02:58 por teilor
» GAME - Abertura de Gran Turismo 6 é homenagem a Senna
Sex Dez 06 2013, 02:55 por teilor
» CINEMA - Equipe de Velozes faz vídeo para Paul Walker
Sex Dez 06 2013, 02:51 por teilor
» CINEMA - Eva Green em destaque no novo trailer de 300
Sex Dez 06 2013, 02:48 por teilor
» MUSICA - Ben Foster será o protagonista do filme Warcraft
Sex Dez 06 2013, 02:45 por teilor
» CINEMA - Diane Keaton receberá prêmio em nome de Woody Allen
Sex Dez 06 2013, 02:44 por teilor
» MUSICA - Daft Punk divulgou a prévia de seu novo clipe
Sex Dez 06 2013, 02:41 por teilor
» MUSICA - DJ Cassidy lança música com Jessie J e Robin Thicke
Sex Dez 06 2013, 02:40 por teilor
» Samsung inicia produção em massa de memórias DDR4
Dom Set 01 2013, 10:09 por teilor
» Archos cita dispositivos que deverão ser apresentados nesta IFA
Dom Set 01 2013, 10:07 por teilor
» CityNext: Microsoft lança programa para cidades inteligentes
Dom Set 01 2013, 10:05 por teilor
» Unity anuncia programa para desenvolvimento de jogos próprios
Dom Set 01 2013, 10:04 por teilor
» Como instalar addons em World of Warcraf
Sáb Ago 31 2013, 06:29 por marcela
» Como criar macros em World of Warcraft
Sáb Ago 31 2013, 06:25 por marcela
» [ Dicas ] de como jogar Real Racing 3 sem gastar nenhum dinheiro real
Sáb Ago 31 2013, 06:13 por joaopaulo
» [dica] Como assistir arquivos de vídeo do computador na sua Apple TV
Sáb Ago 31 2013, 06:10 por joaopaulo
» Steam Greenlight oferece promoção em seu aniversário
Sáb Ago 31 2013, 06:05 por Leonardo
» Microsoft e Google juntam forças para processar governo dos EUA
Sáb Ago 31 2013, 05:55 por Leonardo
» Pesquisadores do MIT desenvolvem processador com 110 núcleos
Sáb Ago 31 2013, 05:53 por Leonardo
» Vai ao cinema? Apps para iPhone ajudam a escolher filme e comprar ingresso
Qui Ago 29 2013, 22:58 por
» Serviço de videoclipes Vevo terá aplicativo para Apple TV, diz WSJ
Qui Ago 29 2013, 22:31 por
» Como a Apple está transformando seu computador em um smartphone
Qui Ago 29 2013, 22:17 por
» Os 11 melhores apps para iPhone, iPad e Mac, segundo a Apple
Qui Ago 29 2013, 13:56 por teilor
» iPhone 5S pode ter botão Home curvado para fora e leitor de digitais
Qui Ago 29 2013, 13:48 por teilor
» iPhone 5S e iPhone 5C serão lançados no dia 20 de setembro
Qui Ago 29 2013, 13:45 por teilor
» Crytek dedica esforços na melhoria da IA de Ryse: Son of Rome
Qui Ago 29 2013, 04:20 por teilor
» Atualização gratuita de The Last of Us traz novo modo ao multiplayer
Qui Ago 29 2013, 04:15 por teilor
» Novo trailer de GTA V amanhã ao meio-dia
Qui Ago 29 2013, 04:14 por teilor
» Killzone: Mercenary
Qui Ago 29 2013, 04:13 por teilor