Problema quest

Înainte de a posta o problemă, caută în acest forum și poate găsești rezolvare.
Închis
Avatar utilizator
d4ny
Nivel 1

Nivel 1
Mesaje: 127
Membru din: 10 Apr 2017, 11:43
Aprecieri: 21  
Mulţumiri: 1  
Medalii

Am urmatorul quest
quest lvl45 begin
state start begin
when login or levelup with pc.level > 44 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("(Lv.45) Yeti al ghetii")
end

when info or button begin
say_title("Ucide 20x Yeti")
say("Salut razboinicule!")
say("Satul are nevoie de tine !")
say("Trebuie sa ucizi 20 de yeti ai ghetii")
say("pentru a scapa satenii de pericol.")
say("")
pc.setqf("state", 20)
q.set_counter("Ucide Yeti", 20)
end
when 1106.kill begin
local count = pc.getqf("state") - 1
if count <= 20 then
pc.setqf("state", count)
q.set_counter("Yeti", count)
end
if count == 0 then
say_title("Omoara yeti - Succes!")
say("")
say("Ai terminat misiunea cu succes!")
say("Drept multumire vei primi")
say("o recompensa frumoasa.")
say("")
say_reward("2x Marmura Binecuvantata")
say_reward("6x Schimba bonus")
say_reward("6x Adauga bonus")
pc.give_item2(70024, 2)
pc.give_item2(71084, 6)
pc.give_item2(71085, 6)
clear_letter()
set_state(__COMPLETE__)
end
end
end

state __COMPLETE__ begin
end
end
Problema e urmatoarea
daca ies de pe server, misiunea se reseteaza. Cum pot sa rezolv asta?
Avatar utilizator
-DND-
Utilizatorul Lunii Ianuarie

Utilizatorul Lunii Ianuarie
Mesaje: 1464
Membru din: 22 Ian 2017, 16:40
Server: Serverfiles By DnD
Regat: Jinno
Aprecieri: 116  
Mulţumiri: 2249  
Discord: Copiază ID
 Contact:
Medalii

sterge

Cod: Selectaţi tot

state __COMPLETE__ begin
end
end
de la final
Avatar utilizator
LikePc
Nivel 10

Nivel 10
Mesaje: 2240
Membru din: 11 Aug 2015, 00:01
Server: M3
Regat: Chunjo
Aprecieri: 9  
Mulţumiri: 270  
 Contact:
Medalii

quest lvl45 begin
state start begin
when login or levelup with pc.level > 44 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("(Lv.45) Yeti al ghetii")
end

when info or button begin
say_title("Ucide 20x Yeti")
say("Salut razboinicule!")
say("Satul are nevoie de tine !")
say("Trebuie sa ucizi 20 de yeti ai ghetii")
say("pentru a scapa satenii de pericol.")
say("")
pc.setqf("state", 20)
q.set_counter("Ucide Yeti", 20)
end
when 1106.kill begin
local count = pc.getqf("state") - 1
if count <= 20 then
pc.setqf("state", count)
q.set_counter("Yeti", count)
end
if count == 0 then
say_title("Omoara yeti - Succes!")
say("")
say("Ai terminat misiunea cu succes!")
say("Drept multumire vei primi")
say("o recompensa frumoasa.")
say("")
say_reward("2x Marmura Binecuvantata")
say_reward("6x Schimba bonus")
say_reward("6x Adauga bonus")
pc.give_item2(70024, 2)
pc.give_item2(71084, 6)
pc.give_item2(71085, 6)
clear_letter()
set_state(__COMPLETE__)
end
end
end
end
end
Incearca acuma.
Pentru acest mesaj, LikePc for the post:
d4ny
https:/horus-maps.com
Afișează semnătura
Avatar utilizator
d4ny
Nivel 1

Nivel 1
Mesaje: 127
Membru din: 10 Apr 2017, 11:43
Aprecieri: 21  
Mulţumiri: 1  
Medalii

LikePc scrie:
quest lvl45 begin
state start begin
when login or levelup with pc.level > 44 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("(Lv.45) Yeti al ghetii")
end

when info or button begin
say_title("Ucide 20x Yeti")
say("Salut razboinicule!")
say("Satul are nevoie de tine !")
say("Trebuie sa ucizi 20 de yeti ai ghetii")
say("pentru a scapa satenii de pericol.")
say("")
pc.setqf("state", 20)
q.set_counter("Ucide Yeti", 20)
end
when 1106.kill begin
local count = pc.getqf("state") - 1
if count <= 20 then
pc.setqf("state", count)
q.set_counter("Yeti", count)
end
if count == 0 then
say_title("Omoara yeti - Succes!")
say("")
say("Ai terminat misiunea cu succes!")
say("Drept multumire vei primi")
say("o recompensa frumoasa.")
say("")
say_reward("2x Marmura Binecuvantata")
say_reward("6x Schimba bonus")
say_reward("6x Adauga bonus")
pc.give_item2(70024, 2)
pc.give_item2(71084, 6)
pc.give_item2(71085, 6)
clear_letter()
set_state(__COMPLETE__)
end
end
end
end
end
Incearca acuma.
Imi da urmatoare eroare atunci cand ii dau qc

lvl45.quest:47:must start with 'quest'
Abort (core dumped)


Daca sterg ultimul end imi da eroarea:

lvl45.quest:42:state name not found : __COMPLETE__
Abort (core dumped)
Avatar utilizator
-DND-
Utilizatorul Lunii Ianuarie

Utilizatorul Lunii Ianuarie
Mesaje: 1464
Membru din: 22 Ian 2017, 16:40
Server: Serverfiles By DnD
Regat: Jinno
Aprecieri: 116  
Mulţumiri: 2249  
Discord: Copiază ID
 Contact:
Medalii

Cod: Selectaţi tot

quest lvl45 begin
   state start begin
   when login or levelup with pc.level > 44 begin
   set_state(dnd)
   end
   end
   state dnd begin
   when letter begin
   send_letter("(Lv.45) Yeti al ghetii")
   end
   when info or button begin
      say_title("Ucide 20x Yeti")
      say("Salut razboinicule!")
      say("Satul are nevoie de tine !")
      say("Trebuie sa ucizi 20 de yeti ai ghetii")
      say("pentru a scapa satenii de pericol.")
      say("")
      pc.setqf("state", 20)
      q.set_counter("Ucide Yeti", 20)
      end
      when 1106.kill begin
      local count = pc.getqf("state") - 1
      if count <= 20 then
      pc.setqf("state", count)
      q.set_counter("Yeti", count)
      end
      if count == 0 then
      say_title("Omoara yeti - Succes!")
      say("")
      say("Ai terminat misiunea cu succes!")
      say("Drept multumire vei primi")
      say("o recompensa frumoasa.")
      say("")
      say_reward("2x Marmura Binecuvantata")
      say_reward("6x Schimba bonus")
      say_reward("6x Adauga bonus")
      pc.give_item2(70024, 2)
      pc.give_item2(71084, 6)
      pc.give_item2(71085, 6)
      clear_letter()
      set_state (__COMPLETE__)
      end
	end
end
	state __COMPLETE__ begin
		when enter begin
			q.done()
		end
end
end
EDIT, acum trebuie sa mearga !!!
Pentru acest mesaj, -DND- for the post:
d4ny
Avatar utilizator
d4ny
Nivel 1

Nivel 1
Mesaje: 127
Membru din: 10 Apr 2017, 11:43
Aprecieri: 21  
Mulţumiri: 1  
Medalii

-DND- scrie:

Cod: Selectaţi tot

quest lvl45 begin
   state start begin
   when login or levelup with pc.level > 44 begin
   set_state(dnd)
   end
   end
   state dnd begin
   when letter begin
   send_letter("(Lv.45) Yeti al ghetii")
   end
   when info or button begin
      say_title("Ucide 20x Yeti")
      say("Salut razboinicule!")
      say("Satul are nevoie de tine !")
      say("Trebuie sa ucizi 20 de yeti ai ghetii")
      say("pentru a scapa satenii de pericol.")
      say("")
      pc.setqf("state", 20)
      q.set_counter("Ucide Yeti", 20)
      end
      when 1106.kill begin
      local count = pc.getqf("state") - 1
      if count <= 20 then
      pc.setqf("state", count)
      q.set_counter("Yeti", count)
      end
      if count == 0 then
      say_title("Omoara yeti - Succes!")
      say("")
      say("Ai terminat misiunea cu succes!")
      say("Drept multumire vei primi")
      say("o recompensa frumoasa.")
      say("")
      say_reward("2x Marmura Binecuvantata")
      say_reward("6x Schimba bonus")
      say_reward("6x Adauga bonus")
      pc.give_item2(70024, 2)
      pc.give_item2(71084, 6)
      pc.give_item2(71085, 6)
      clear_letter()
      set_state (__COMPLETE__)
      end
	end
end
	state __COMPLETE__ begin
		when enter begin
			q.done()
		end
end
end
EDIT, acum trebuie sa mearga !!!
Daca dau schimba caracter primesc questul de la inceput.
Avatar utilizator
-DND-
Utilizatorul Lunii Ianuarie

Utilizatorul Lunii Ianuarie
Mesaje: 1464
Membru din: 22 Ian 2017, 16:40
Server: Serverfiles By DnD
Regat: Jinno
Aprecieri: 116  
Mulţumiri: 2249  
Discord: Copiază ID
 Contact:
Medalii

Cod: Selectaţi tot

quest Craios75 begin
        state start begin
                when login or levelup with pc.level >= 75 begin
                        set_state(information)
                end
        end
        state information begin
                when letter begin
                        local v = find_npc_by_vnum(55886)
                        if v != 0 then
                                target.vid("__TARGET__", v, "Craios")
                        end
                        send_letter("Curele te vor face mai puternic!")
                end
                when button or info begin
                    say_title("Craios ")
                    say("Craios are nevoie de ajutorul tau du-te si vezi ce")
                    say("vrea sa faci pentru el. Bineinteles vei primi si ")
                    say("o recompensa binemeritata. ")
                end
                when __TARGET__.target.click or
                        55886.chat."Prima curea" begin
                        target.delete("__TARGET__")
                        say_title("Craios :")
                        say("Oh, ai venit sa ma ajuti? ")
                        say("Ei bine eu sunt Craios, si ma ocup")
                        say("cu studiul numeroaselor curele.")
                        say("Daca ma ajuti cu cercetarea eu te voi rasplati din")
                        say("plin cu difete curele. ")
                        wait()
                        say_title("Craios :")
                        say("De aceasta data eu ma ocup de cercetarea minelor de aur,")
                        say("dar in acest moment ma ocup de un alt studiu si nu")
                        say("pot pleca in excursie de cercetare. Trebuie sa ")
                        say("mergi in diferite locatii.")
                        wait()
                        say_title("Craios :")
                        say("Odata ce ai ajuns va trebui")
                        say("sa colectezi 25 de blazoane in perfecta ")
                        say("stare pentru cercetarile mele.")
                        say_reward("Aceste blazoane sunt dropabile")
						say_reward("la bossi cei mai puternici ai jocului!")
                        set_state(go_to_disciple)
                        pc.setqf("duration",0)
                        pc.setqf("collect_count",0)
                        pc.setqf("drink_drug",0)
                end
        end
       state go_to_disciple begin
                when letter begin
                        send_letter("Cercetarile Lui Craios partea I.")
                end
                        when 2191.kill or 2192.kill or 2206.kill or 2493.kill or 2598.kill or 1093.kill begin
                        local s = number(1, 15)
                        if s == 1 and pc.count_item(40497)<31 then
                                pc.give_item2(40497, 1)
                                send_letter("Ai primit: Blazon.")
                        end
					end
               
			   when button or info begin
                    say_title("Informatie:")
                    say("Craios te-a trimis in cautarea blazoanelor.")
                    say("Pentru colectarea a 25 de blazoane de la")
					say("cei mai puternici monstrii din joc")
                    say("Colecteaza-le pe toate si du-le pe rand pentru")
                    say("a finaliza cercetarile actuale.")
                    say_item_vnum(40497)
					say_reward("acum ai "..pc.count_item("40497").." Blazoane in inventar")
                    say("Pana acum ai dus "..pc.getqf("collect_count").." blazoane in perfecta stare.")
                end
            
			when 55886.chat."Am un Blazon." with pc.count_item(40497) >0   begin
                        if get_time() > pc.getqf("duration") then
                            if  pc.count_item(40497) >0 then
                                say("Da-mi un moment te rog. Multumesc pentru")
                                say("timpul acordat. Acum voi verifica sa vad")
                                say("daca Blazonul aceasta este folositor.")
                                pc.remove_item("40497",1)
                                if  is_test_server()  then
                                pc.setqf("duration",get_time()+180)
                                else
                                pc.setqf("duration",get_time()+180)
    end
                                wait()
                                local pass_percent
                                if pc.getqf("drink_drug")==0 then
                                        pass_percent=60
                                else
                                        pass_percent=100
                                end
                                local s= number(1,80)
                                if s<= pass_percent  then
                                   if pc.getqf("collect_count")< 24 then
                                                local index =pc.getqf("collect_count")+1
                                                pc.setqf("collect_count",index)
                                             
                                        say_title("Craios :")
                                        say("Foarte bine, acest Blazon este de calitate inalta.")
                                        say("Mai ai in prezent".." "..25-pc.getqf("collect_count").. " blazoane de colectat.")
                                             
                                               pc.setqf("drink_drug",0)
                                                return
                                        end
                                        say_title("Craios :")
                                        say("Se pare ca ai adunat Toate Blazoanele.")
                                        say("Totusi mai am o mica sarcina. Am nevoie de")
                                        say("inca o bijuterie.")      
                                        pc.setqf("collect_count",0)
                                        pc.setqf("drink_drug",0)
                                        pc.setqf("duration",0)
                                        set_state(key_item)
                                        return
                                else
                                say_title("Craios :")
                                say("Aceasta Blazon este de calitate proasta.")
                                say("Adu-mi altul te rog frumos.")
                                pc.setqf("drink_drug",0)
                                return
                                end
                else
                    say_title("Craios :")
                    say("Nu ai nici un "..item_name(40497).." !")
                    return
                end
            else
                    say_title("Craios :")
                    say("Studiile nu sunt terminate inca. ")
                    say("Te rog sa imi aduci blazonul mai tarziu.")
                  return
                end
        end
end
        state key_item begin
                when letter begin
                        send_letter("Blazonul Suprem")
                        if pc.count_item(40498)>0 then
                                local v = find_npc_by_vnum(55886)
                                if v != 0 then
                                        target.vid("__TARGET__", v, "")
                                end
                        end
                end
                when button or info begin
                        if pc.count_item(40498) >0 then
                                say_title("Blazonul Suprem")
                                ---                                                   l
                                say("Ai gasit Blazonul intoarce-te la Craios .")
                                say("Pentru a primi recompensa.")
                                return
                        end
                        say_title("Blazonul Suprem")
                        say("Felicitari! Ai colectat toate cele 25 de blazoane")
                        say("Acum ai nevoie sa capturati blzaonul suprem ")
                        say_item_vnum(40498)
                        say_reward("Acest Blazon Suprem de fapt contine un suflet.")
						local v = find_npc_by_vnum(3791)
                        if v != 0 then
                        target.vid("__TARGET__", v, "")
                        end
                end
                when 3791.kill begin
                        local s = number(1, 20)
                        if s == 1 and pc.count_item(40498)==0 then
                                pc.give_item2(40498, 1)
                                send_letter("Ai primit: Blazonul Suprem.")
                        end
                end
                when __TARGET__.target.click  or
                        55886.chat."Blazonul Suprem." with pc.count_item(40498) > 0  begin
                        target.delete("__TARGET__")
                        if pc.count_item(40498) > 0 then
                        say_title("Craios")
                        say("Felicitarile mele ucenicule, se pare ca ai la")
                        say("tine Blazonul Suprem.")
                        say("Cautare noastra este pe sfarsit acum mergi la")
                        say("Fierar, si dui aceasta reteta.")
                        pc.remove_item(40498,1)
                        set_state(__reward)
            else
                say_title("Craios ")
                say("Nu ai gasit "..item_name(40498).." !")
                say("")
                return
                end
        end

        end
        state __reward begin
                when letter begin
                        send_letter("Gasestel pe Fierar.")
                        local v = find_npc_by_vnum(20016)
                        if v != 0 then
                                target.vid("__TARGET__", v, "Fierar")
                        end
                end
                when button or info begin
                        say_title("Gasestel pe Fierar:")
                        say("L-ai ajutat pe Craios sa studieze blazoanele!")
                        say("Acum v-a trebuii sa mergi la Fierar.")
                end
                when __TARGET__.target.click  or
                        20016.chat."Reteta secreta pt curea."  begin
                        target.delete("__TARGET__")
                        say_title("Fierar:")
                        say("Bun venit la mine straine(a) Ce este cu aceasta ")
                        say("reteta ? Oh, Craios te-a trimis la mine?")
                        say("Aceasta reteta permite posesorului sau sa aibe")
                        say("o curea de calitate scazuta")
						say("Dar aceasta te va ajuta sa iti ridici")
						say("gradul curelei cat si puterea")
                        wait()
                        say_title("Fierar:")
                        say("Aceasta reteta trimisa de Craios trebuie sa o")
                        say("procur pentru tine. Este deja gata.")
                        say("")
                        say("Vei primii o Curea de in +0")
						pc.give_item2(18000, 1)
                        wait()
            -----------                                                   l
                        clear_letter()
                        set_state(__complete)
                end
        end
        state __giveup__ begin
                when 55886.chat."Un alt progres." begin
                        say_title("Craios :")
                        say("Mai am ceva misiuni pentru tine. revino la un")
                        say("nivel mai mare.")
                        set_state(start)
             end
         end
        state __complete begin
        end
end
ce zici de acesta? este facut de mine schimba doar npc-urile itemele si rewardurile sper sa te ajute este facut ca si un biolog
Pentru acest mesaj, -DND- for the post:
d4ny
Avatar utilizator
d4ny
Nivel 1

Nivel 1
Mesaje: 127
Membru din: 10 Apr 2017, 11:43
Aprecieri: 21  
Mulţumiri: 1  
Medalii

Mersi mult, il modific pe asta. t/c
Avatar utilizator
-DND-
Utilizatorul Lunii Ianuarie

Utilizatorul Lunii Ianuarie
Mesaje: 1464
Membru din: 22 Ian 2017, 16:40
Server: Serverfiles By DnD
Regat: Jinno
Aprecieri: 116  
Mulţumiri: 2249  
Discord: Copiază ID
 Contact:
Medalii

Topic inchis la cererea autorului!
Închis
Răspunsuri
6
Vizualizări
400
Răspunsuri
4
Vizualizări
223
Răspunsuri
4
Vizualizări
414
Răspunsuri
3
Vizualizări
737

Înapoi la “Probleme rezolvate”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 24 vizitatori