antiblock
Rodnia | Alpha & Omega
  • Chatbox

    You don't have permission to chat.
    Load More
  • 0
DarkMaster

Pedido (Quest teletransporta para um determinado mapa, pedindo um item)

Question

Alguém tem Quest para entra em um determinado mapa, pedindo um determinado item ? 

Share this post


Link to post
Share on other sites

14 answers to this question

  • 0

if pc.count_item("id do item") > (quantidade de item que tem de ter, para poder entrar no mapa, neste caso vou usar o 0) then

      pc.warp(coordenadas x e y)   para teleportar

      pc.remove_item("id do item", quantidade a remover)   para remover o item do jogador quando se teleporta

 

Ficaria assim um exemplo: (para ir para um mapa criado por mim, tem de ter 5 ostras)

if pc.count_item("27987") >= 5 then
	pc.warp(x, y)
  	pc.remove("27987", 5)
end

 

 

 

Cumprimentos

Share this post


Link to post
Share on other sites
antiblock
Cyphriun
  • 0
Em 09/10/2018 at 14:12, TabLegend disse:

if pc.count_item("id do item") > (quantidade de item que tem de ter, para poder entrar no mapa, neste caso vou usar o 0) then

      pc.warp(coordenadas x e y)   para teleportar

      pc.remove_item("id do item", quantidade a remover)   para remover o item do jogador quando se teleporta

 

Ficaria assim um exemplo: (para ir para um mapa criado por mim, tem de ter 5 ostras)


if pc.count_item("27987") >= 5 then
	pc.warp(x, y)
  	pc.remove("27987", 5)
end

 

 

 

Cumprimentos

Não funcionou, 

Share this post


Link to post
Share on other sites
  • 0
21 minutos atrás, DarkMaster disse:

Não funcionou, 

Não funcionou?

O que aconteceu?

Desenvolve a tua resposta.. :FailFish:

Share this post


Link to post
Share on other sites
  • 0
2 horas atrás, Moisés. disse:

Não funcionou?

O que aconteceu?

Desenvolve a tua resposta.. :FailFish:

quest teleporte_mapavip begin
state start begin
if pc.count_item("30129") >= 1 then
    pc.warp(83200, 0)
      pc.remove("30129", 1)
end
 

 

coloquei assim ! falta algo ?

Share this post


Link to post
Share on other sites
  • 0

Yeah, nem metes uma ação nem nada...

 

Isso vai checkar quando acontece o que?

Share this post


Link to post
Share on other sites
  • 0
quest teleporte begin
	state start begin
		when 70007.use begin
			if pc.count_item("30129") >= 1 then
				pc.warp(83200, 0)
				pc.remove("30129", 1)
			else
				syschat("Não tens o item necessário..")
			end
		end
	end
end

Um exemplo que ao usares o item 70007 ou te teleporta ou diz que não tens o item necessário. Não testei mas deve funcionar ou pelo menos para perceberes a ideia.

Share this post


Link to post
Share on other sites
  • 0
57 minutos atrás, TabLegend disse:

quest teleporte begin
	state start begin
		when 70007.use begin
			if pc.count_item("30129") >= 1 then
				pc.warp(83200, 0)
				pc.remove("30129", 1)
			else
				syschat("Não tens o item necessário..")
			end
		end
	end
end

Um exemplo que ao usares o item 70007 ou te teleporta ou diz que não tens o item necessário. Não testei mas deve funcionar ou pelo menos para perceberes a ideia.

quest teleporte_ilha begin
state start begin
      when 20093.chat."Mapa Vip?" begin
       say_title("Teleportador")
       say("Oh...Olá "..pc.name.." ...")
       say("Deseja ir ao Mapa Vip?")
       say("")
       say("É nescessario ter nivel acima de 75.")
       say("")
       say_gold("Seu level: "..pc.get_level".")
       say("")
       say("Vejamos... Deseja ir até lá?")
       local dev =select ("Sim", "Não")
       if dev==2 then
       return
       end
       if pc.get_level() <75 then 
       say("Você não pode ir até lá ainda...")
       say("Volte quanto estiver pronto!")
       end
       if dev==1 then
       if pc.get_level() >=75 then
       say_title("Mapa Vip")
       say("Você está nos conformes.")
       say("Irei lava-lo até lá!")
       say_gold("Mapa Vip")
       wait()
       pc . remove_item ( 30129, 1) 
       pc.warp (83200, 0)--COORDENADAS
       else
       end
      end
     end
    end
   end

 

 

essa ta errada ?

Share this post


Link to post
Share on other sites
  • 0
5 horas atrás, DarkMaster disse:

quest teleporte_ilha begin
state start begin
      when 20093.chat."Mapa Vip?" begin
       say_title("Teleportador")
       say("Oh...Olá "..pc.name.." ...")
       say("Deseja ir ao Mapa Vip?")
       say("")
       say("É nescessario ter nivel acima de 75.")
       say("")
       say_gold("Seu level: "..pc.get_level".")
       say("")
       say("Vejamos... Deseja ir até lá?")
       local dev =select ("Sim", "Não")
       if dev==2 then
       return
       end
       if pc.get_level() <75 then 
       say("Você não pode ir até lá ainda...")
       say("Volte quanto estiver pronto!")
       end
       if dev==1 then
       if pc.get_level() >=75 then
       say_title("Mapa Vip")
       say("Você está nos conformes.")
       say("Irei lava-lo até lá!")
       say_gold("Mapa Vip")
       wait()
       pc . remove_item ( 30129, 1) 
       pc.warp (83200, 0)--COORDENADAS
       else
       end
      end
     end
    end
   end

 

 

essa ta errada ?

Descobre o erro e vê se faz algum sentido o que escreves-te...

 

quest teleporte_ilha begin
	state start begin
		when 20093.chat."Mapa Vip?" begin
			say_title("Teleportador")
			say("Oh...Olá "..pc.name.." ...")
			say("Deseja ir ao Mapa Vip?")
			say("")
			say("É nescessario ter nivel acima de 75.")
			say("")
			say_gold("Seu level: "..pc.get_level".")
			say("")
			say("Vejamos... Deseja ir até lá?")
			local dev =select ("Sim", "Não")
			if dev==2 then
				return
			end
			if pc.get_level() <75 then 
				say("Você não pode ir até lá ainda...")
				say("Volte quanto estiver pronto!")
			end
			if dev==1 then
				if pc.get_level() >=75 then
					say_title("Mapa Vip")
					say("Você está nos conformes.")
					say("Irei lava-lo até lá!")
					say_gold("Mapa Vip")
					wait()
					pc . remove_item ( 30129, 1) 
					pc.warp (83200, 0)--COORDENADAS
				else
				end
			end
		end
	end
end
Spoiler

quest teleporte_ilha begin
	state start begin
		when 20093.chat."Mapa Vip" begin
			say_title("Teleportador")
			say("Oh...Olá "..pc.get_name().." ...")
			say("Deseja ir ao Mapa Vip?")
			say("")
			say("É nescessario ter nivel acima de 75.")
			say("")
			say_gold("Seu level: "..pc.get_level())
			say("")
			say("Vejamos... Deseja ir até lá?")
			local dev = select("Sim", "Não")
			if dev == 1 then
				if pc.get_level() >=75 then
					if pc.count_item("30129") >= 1 then
						say_title("Mapa Vip")
						say("Você está nos conformes.")
						say("Irei lava-lo até lá!")
						say_gold("Mapa Vip")
						wait()
						pc.remove_item(30129, 1) 
						pc.warp(83200, 0)--COORDENADAS
					else
						say("Não possuis o item necessário.")
					end
				else
					say("Você não pode ir até lá ainda...")
					say("Volte quanto estiver pronto!")
				end
			else if dev == 2 then
				return
			end
		end
	end
end

 

 

Share this post


Link to post
Share on other sites
  • 0
8 horas atrás, Karbust™ # PT disse:

Descobre o erro e vê se faz algum sentido o que escreves-te...

 


quest teleporte_ilha begin
	state start begin
		when 20093.chat."Mapa Vip?" begin
			say_title("Teleportador")
			say("Oh...Olá "..pc.name.." ...")
			say("Deseja ir ao Mapa Vip?")
			say("")
			say("É nescessario ter nivel acima de 75.")
			say("")
			say_gold("Seu level: "..pc.get_level".")
			say("")
			say("Vejamos... Deseja ir até lá?")
			local dev =select ("Sim", "Não")
			if dev==2 then
				return
			end
			if pc.get_level() <75 then 
				say("Você não pode ir até lá ainda...")
				say("Volte quanto estiver pronto!")
			end
			if dev==1 then
				if pc.get_level() >=75 then
					say_title("Mapa Vip")
					say("Você está nos conformes.")
					say("Irei lava-lo até lá!")
					say_gold("Mapa Vip")
					wait()
					pc . remove_item ( 30129, 1) 
					pc.warp (83200, 0)--COORDENADAS
				else
				end
			end
		end
	end
end
  Esconder conteúdo


quest teleporte_ilha begin
	state start begin
		when 20093.chat."Mapa Vip" begin
			say_title("Teleportador")
			say("Oh...Olá "..pc.get_name().." ...")
			say("Deseja ir ao Mapa Vip?")
			say("")
			say("É nescessario ter nivel acima de 75.")
			say("")
			say_gold("Seu level: "..pc.get_level())
			say("")
			say("Vejamos... Deseja ir até lá?")
			local dev = select("Sim", "Não")
			if dev == 1 then
				if pc.get_level() >=75 then
					if pc.count_item("30129") >= 1 then
						say_title("Mapa Vip")
						say("Você está nos conformes.")
						say("Irei lava-lo até lá!")
						say_gold("Mapa Vip")
						wait()
						pc.remove_item(30129, 1) 
						pc.warp(83200, 0)--COORDENADAS
					else
						say("Não possuis o item necessário.")
					end
				else
					say("Você não pode ir até lá ainda...")
					say("Volte quanto estiver pronto!")
				end
			else if dev == 2 then
				return
			end
		end
	end
end

Quests/Sistemas/teleporte_mapavip.lua:2:state doesn't have begin-end clause.
Abort trap (core dumped)
Segmentation fault (core dumped)
 

 

 

Share this post


Link to post
Share on other sites
  • 0

Tu nem viste o meu spoiler (e o meu spoiler não tinha esse erro, eu não corrigi a parte de cima, corrigi a do spoiler)...

 

(o meu spoiler só tinha 1 erro, fiz confusão com o elseif e com o else if, pelos vistos LUA interpreta de maneira diferente do C)

 

Spoiler

quest teleporte_ilha begin
	state start begin
		when 20093.chat."Mapa Vip" begin
			say_title("Teleportador")
			say("Oh...Olá "..pc.get_name().." ...")
			say("Deseja ir ao Mapa Vip?")
			say("")
			say("É nescessario ter nivel acima de 75.")
			say("")
			say_gold("Seu level: "..pc.get_level())
			say("")
			say("Vejamos... Deseja ir até lá?")
			local dev = select("Sim", "Não")
			if dev == 1 then
				if pc.get_level() >=75 then
					if pc.count_item("30129") >= 1 then
						say_title("Mapa Vip")
						say("Você está nos conformes.")
						say("Irei lava-lo até lá!")
						say_gold("Mapa Vip")
						wait()
						pc.remove_item(30129, 1) 
						pc.warp(83200, 0)--COORDENADAS
					else
						say("Não possuis o item necessário.")
					end
				else
					say("Você não pode ir até lá ainda...")
					say("Volte quanto estiver pronto!")
				end
			elseif dev == 2 then
				return
			end
		end
	end
end

 

 

Share this post


Link to post
Share on other sites
  • 0
3 minutes ago, Karbust™ # PT said:

Tu nem viste o meu spoiler (e o meu spoiler não tinha esse erro, eu não corrigi a parte de cima, corrigi a do spoiler)...

 

(o meu spoiler só tinha 1 erro, fiz confusão com o elseif e com o else if, pelos vistos LUA interpreta de maneira diferente do C)

 

  Hide contents


quest teleporte_ilha begin
	state start begin
		when 20093.chat."Mapa Vip" begin
			say_title("Teleportador")
			say("Oh...Olá "..pc.get_name().." ...")
			say("Deseja ir ao Mapa Vip?")
			say("")
			say("É nescessario ter nivel acima de 75.")
			say("")
			say_gold("Seu level: "..pc.get_level())
			say("")
			say("Vejamos... Deseja ir até lá?")
			local dev = select("Sim", "Não")
			if dev == 1 then
				if pc.get_level() >=75 then
					if pc.count_item("30129") >= 1 then
						say_title("Mapa Vip")
						say("Você está nos conformes.")
						say("Irei lava-lo até lá!")
						say_gold("Mapa Vip")
						wait()
						pc.remove_item(30129, 1) 
						pc.warp(83200, 0)--COORDENADAS
					else
						say("Não possuis o item necessário.")
					end
				else
					say("Você não pode ir até lá ainda...")
					say("Volte quanto estiver pronto!")
				end
			elseif dev == 2 then
				return
			end
		end
	end
end

 

 

 

Isso a compilares a quest se não me engano diz-te o erro no terminal, por isso, mesmo tendo esse "erro" está óptimo para compilar e ver esse erro e corrigir :b

Share this post


Link to post
Share on other sites
  • 0
3 horas atrás, TabLegend disse:

 

Isso a compilares a quest se não me engano diz-te o erro no terminal, por isso, mesmo tendo esse "erro" está óptimo para compilar e ver esse erro e corrigir :b

 

A que meti primeiro no spoiler tinha um erro no "else if", mas em lua tem de se juntar, "elseif", foi essa a confusão e dava outro erro diferente do que ele aí meteu...

Share this post


Link to post
Share on other sites
  • 0

Relembrando que é preciso uma acção para verificar se o jogador tem esse item e o nível necessário. Caso contrário se ele não tiver nível, vai remover o item e não o vai teleportar e para evitar erros coloca tipo assim. 


               

 when xxxx.chat."Teleporte vip" elseif pc.get_level()==75 and pc.countitem("xxxx")>=1 begin



                        elseif pc.countitem("50050")<10 then -- Verifica se tem os itens necessários

                        say("")

                        say("")

                        say("")

                        say("")

                        elseif pc.level<=49 then -- Verificar se tem o nível necessário 

                        say("")

                        say("")

                        say("")

                        say("")



                                elseif pc.get_level()==11 and pc.countitem("xxxx")>=1 and pc.level>=75 then -- Caso tenha será dita esta mensagem
                                say_title("xxxxx:")
                                say("")
                                say("xxxxxxx")
                                say("xxxxxx ")
                                say("x ")
                                say("mx")
                                say("x")
                                say("x.")
                                say("")
                                say_green("Desejas mesmo teleportar")
                                say("")
                                local b=select("Sim, desejo!", "Não! Obrigado!") - O jogador pode decidir se quer ou não se teleportar

 

 

Exemplo. Abraço

Edited by M2Kingdoms (see edit history)

Share this post


Link to post
Share on other sites
  • 0
Spoiler

quest teleport begin
state start begin
when iditem.use begin
say_title(" "..item.get_name().." ")
say("texto")
local teleport = select("Si","No")
if teleport == 1 then
  if pc.count_item(iditem) < 1 then
    say_title(" "..item.get_name().." ")
    say("error")
    return end
    if pc.get_level() < lvl then
      say_title(" "..item.get_name().." ")
      say("error2")
    return end
  pc.warp(coord_x,coord_y)
  pc.remove_item(iditem,1)
  return
  end
end
end

 

 

Edited by Dilong (see edit history)

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