antiblock
https://i.imgur.com/aJ17bf7.gif
  • Chatbox

    You don't have permission to chat.
    Load More
  • 0
Sign in to follow this  
Old M2

Problema Quest De Pets Propria

Question

Bom, fiz uma quest própria para dar uma missão à quem atingir nível 95, para dropar itens e trocar por um pet depois. Porém, ela está bugando para adicionar, diz "must start with 'quest'". Conheço o erro, e já tentei inserir/remover end da quest e não funciona mesmo assim.

Além disso, minha idéia era isso aparecer como uma quest normal quando o player pegar nível 95, mas procurei na cyber e não achei como se faz isso, então tentei colocar em um npc. Se alguem souber fazer isso, e adaptá-la para mim, agradeço. Se não souberem, peço só que tentem desbugar.

 

quest pet begin

state start begin
when 20094.chat."Quest: Adquirir seu Pet" begin
say_title("Quest do Pet")
say("Olá "..pc.name..", veio pegar seu pet?)
say("Os Pets são algo raro, mas como tenho um bom")
say("coração, posso lhe dar um Pet Leopardo de graça!")
say("Bom, não é? ")
say("Porém, quero algo em troca. Não será difícil de conseguir, ")
say("mas você precisa ser nível 95 para receber a missão.")
say("")
say("Você tem nível 95? ")
local nivel = select("Sim" , "Não")
if nivel == 2 then
say_title("Quest do Pet")
say("")
say("Oh, é uma pena que não tenha o nível necessário")
say("")
say("Vá upar, e volte quando atingir nível 95")
say("Estarei lhe esperando.")
return
end
elseif nivel == 1 then
if pc.level < 95 then
say_title("Quest do Pet")
say("")
say("Achas que pode me enganar, cavalheiro? ")
say("Você precisa ter nível 95 para receber o pet.")
say("Sem o nível mínimo, os braceletes não irão dropar.")
say("Volte quando tiver nível 95.")
return
end
elseif pc.level > 94 then
say_title("Quest do Pet")
say("Bom, verifiquei e você realmente tem nível 95.")
say("Agora vou lhe dar a missão, será assim:")
say("Na Gruta Chun 2, há um monstro chamado General Huashin.")
say("Este maldito, roubou algo que me pertence, meus lindos")
say("braceletes.")
local proximo = select ("Proximo" )
if proximo == 1 then
say_title("Quest do Pet")
say("")
say("Se você tem nível 95, vá lá e me traga-os")
say("de volta. É um Bracelete de Cobre, e um Bracelete de Ouro.")
say("Cuidado, ele pode estar em qualquer sala.")
say("Vá lá, mate o General e me traga os braceletes. Entendido? ")
local bracelete = select("Sim, entendi" , "Não quero o Pet")
if bracelete == 1 then
say_title("Quest do Pet")
say("")
say("")
say("Bom saber que terei meus braceletes de volta.")
say("Obrigado pela sua ajuda, irei estar aguardando com o seu")
say("lindo Leopardo.")
return
end
elseif bracelete == 2 then
say_title("Quest do Pet")
say("")
say("")
say("Oh, que pena, terei que esperar alguem mais corajoso")
say("para recuperar minhas jóias.")
say("Se mudar de idéia, volte aqui, irei estar lhe esperando.")
return
end
end
end
end

 

Share this post


Link to post
Share on other sites

3 answers to this question

  • 0

revi a quest parece estar direita.

Share this post


Link to post
Share on other sites
antiblock
https://arwen2.global/
  • 0

revi a quest parece estar direita.

Erro esta na linha 5, e a quest esta totalmente mal programada btw

Share this post


Link to post
Share on other sites
  • 0

Aconselho a usares [TAB] para ser legível e facilmente identificável as condições e o que faz o quê.

 

 

A quest não está a fazer nada, apenas a mostrar texto, é intencional ou devia fazer algo?

 

 

O erro que tens é aqui:

say("Olá "..pc.name..", veio pegar seu pet?)

 

Deveria ser:

say("Olá "..pc.name..", veio pegar seu pet?")

 

Exemplo quest lvl 95+ sem npc:

quest level_95 begin
	state start begin
		when login or levelup with pc.level >= 95  begin
			say_title("Titulo")
			say("Texto")
			say_reward("Recompensa")
		end	
	end
end

(Irá aparecer cada vez que pessoa faz login, não recomendado)

 

Se quiseres que apareça a missão só uma vez adiciona algo como:

pc.getqf("missao_95")==0

 

E no final da missão muda esse valor para 1.

 

Caso não queiras que o texto incomode o jogador e queiras sim que apareça no ecrã lado esquerdo, simplesmente:

send_letter("Missao 95") .

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this