[SERVICE] Die Questkontrolle

11/19/2011 17:18 Blacky33#4081
Hallo, ich bekomme bei dieser Quest leider diesen Fehler.
assertion failed: nested==o
Failed to load horselvlup.quest

Was habe ich falsch gemacht? mfg

quest horselvlup begin
state start begin
when 20349.chat."Pferd steigern" begin
say_title("Stallbursche:")
say("Hallo!")
say("Bei mir kannst du dein Pferd steigern.")
say("Das Pferd zu steigern kostet dich 1kk pro Level.")
say("")
say_reward("Möchtest du dein Pferd steigern?")
say("")

local s= select("Ja", "Nein")
if s == 1 then
say_title("Stallbursche:")
say("")
if pc.money>=1000000 then
pc.changemoney("-1000000")
horse.unride()
horse.advance()
horse.ride()
say("Dein Pferd hat nun Level "..(horse.get_level()).." erreicht.")
say("")
elseif horse.get_level()>=30 then
say("Dein Pferd hat Level 30 erreicht.")
say("Du kannst es nicht mehr steigern.")
say("")
elseif pc.money<1000000 then
say("Du hast nicht genug Yang um dein Pferd zu steigern.")
say("")
elseif s == 2 then
return
end
end
end
end
11/19/2011 17:24 bayberry#4082
Habs gelöst, danke.
11/19/2011 18:05 Sp0ngeb0b ist cool#4083
@Blacky33 :
PHP Code:
quest horselvlup begin
    state start begin
        when 20349.chat
."Pferd steigern" begin
            say_title
("Stallbursche:")
            
say("Hallo!")
            
say("Bei mir kannst du dein Pferd steigern.")
            
say("Das Pferd zu steigern kostet dich 1kk pro Level.")
            
say("")
            
say_reward("Möchtest du dein Pferd steigern?")
            
say("")
            
local s = select("Ja", "Nein")
            if 
s == 1 then
                
if horse.get_level() < 30 then
                    
if pc.money >= 1000000 then
                        pc
.changemoney(-1000000)
                        
horse.unride()
                        
horse.advance()
                        
horse.ride()
                        
say("Dein Pferd hat nun Level "..horse.get_level().." erreicht.")
                        
say("")
                    elseif 
pc.money < 1000000 then
                        say
("Du hast nicht genug Yang um dein Pferd zu steigern.")
                        
say("")
                    
end    
                
else
                    
say("Dein Pferd hat Level 30 erreicht.")
                    
say("Du kannst es nicht mehr steigern.")
                    
say("")
                    
say_title("Stallbursche:")
                    
say("")
                
end    
            end
        end
    end
end 
ein nested error erscheint meistens, wenn zu wenig bzw. zu viele ends bestehen ;)

@killa
PHP Code:
quest Galbator begin
    state start begin
        when login with pc
.level >= 120 begin
            set_state
(information)
        
end
    end

    state information begin
        when letter begin
            send_letter
("Besorg dir 125er Eq")
        
end

        when info 
or button begin
            say
("Moin Alter!")
            
say("")
            
say("Du hast erfolgreich das 120. Level erreicht! Du bist nun bereit dir 125er EQ zu holen.")
            
say("Zerleg 2350 Bossmumien um 125er EQ für deine Rasse zu bekommen!")
            
say("Nur die - Counts werden zurückgesetzt !")
            
say("")
            
say("Dann hau rein Kollege.")
            
say_reward("Töte 2350 Bossmumien")
            
say("") 
            
pc.setqf("zähler", 2350)
            
q.set_counter("Bossmumien", 2350)
            
pc.setqf("gekillt", 0)
            
set_state(next)
            
clear_letter()
        
end
    end
    state next begin
        when letter begin
            send_letter
("Besorg dir 125er Eq")
        
end
        when button 
or info begin
            say
("Dein Auftrag:")
            
say("")
            
say_reward("Töte 2350 Bossmumien")
            
say("") 
            
say("Du hast bisher "..pc.getqf("gekillt").." von 2350 Bossmumien getötet.")
            
say("")
            
say("Somit musst du noch "..pc.getqf("zähler").." Bossmumien töten.")
        
end    

        when 20201.kill begin
            local count 
= pc.getqf("zähler") - 1
            
if count <= 2350 then
                pc
.setqf("gekillt", pc.getqf("gekillt")+1)
                
pc.setqf("zähler", count)
                
q.set_counter("Bossmumien", count)
            
end
            
if count == 0 then
                say_title
("Besorg dir 125er EQ!") 
                
say("Joo hasts geschafft ... Wurde auch Zeit!!") 
                
say("Ja als Belohnung:") 
                
say_reward("Als Belohnung gibts komplettes 125er EQ!")
                if 
pc.job == 0 then
                    pc
.give_item2(709, 1)
                    
pc.give_item2(51119, 1)
                    
pc.give_item2(41011, 1)
                elseif 
pc.job == 1 then
                    pc
.give_item2(12319, 1)
                    
pc.give_item2(22219, 1)
                    
pc.give_item2(41021, 1)
                elseif 
pc.job == 2 then
                    pc
.give_item2(499, 1)
                    
pc.give_item2(41031, 1)
                elseif 
pc.job == 3 then        
                    pc
.give_item2(52019, 1)
                    
pc.give_item2(41041, 1)
                
end    
                clear_letter
() 
                
set_state(__COMPLETE__)
            
end
        end
    end
    state __COMPLETE__ begin
    end
end 
habe keinen fehler entdeckt ; habe ein bisschen was ergänzt, kannst es ja mal ausprobieren ;)
11/19/2011 18:16 Kriegergeist^^#4084
könnte jemand mal bitte meine quest angucken

hier die quest:

Das wird in VB angezeigt, wen ich make ausführe:
Ich wär euch sehr dankbar, wen ihr mir helfen könntet :handsdown:

MfG
Kriegergeist^^
11/20/2011 08:00 Megawurrrm#4085
Guten Morgen :)

Ich habe mir vor ner zeit nen fertigen quest ordner geholt und den eingebunden hat bis jetzt alles wunderbar funktioniert aber ich habe jetzt ein problem bin 70 gekommen und das quest startet garnicht erst

PHP Code:
----------------------------------------------------
--
COLLECT QUEST_lv70
--METIN2 collect quest
--By Momoplaya
----------------------------------------------------
quest collect_quest_lv70  begin
    state start begin
    end
    state run begin
        when login 
or levelup with pc.level >= 70 and pc.level <= 90 begin
            set_state
(information)
        
end    
    end

    state information begin
        when letter begin
            local v 
= find_npc_by_vnum(20084)
            if 
v != 0 then
                target
.vid("__TARGET__", v, "Bioquest")
            
end
            send_letter
("Die Forschung des Biologen 5")
        
end

        when button 
or info begin
            say_title
("Die Forschung des Biologen 5")
            
say("")
            
say("Dio Biologin sucht dich!")
            
say("Gehe zu ihr.")
            
say("Sie sagte, sie hat wieder was für dich.")
            
say("")
        
end
        
        when __TARGET__
.target.click or
            
20084.chat."Zelkovas Holzäste" begin
            target
.delete("__TARGET__")
            
say("Biologin:")
            ---                                                   
l
            say
("Wunderbar! Ich finde es toll, dass")
            
say("Du mir wieder hilfst!")
            
say("Deine Aufgabe, die ich dir jetzt")
            
say("Gebe, ist nicht besonders "hell",")
            
say("Denn jetzt werde ich dich in den")
            
say("Dunklen Geisterwald schicken.")
            
say("Die Monster dort, sind nicht sehr nett.")
            
wait()
            
say("Biologin:")
            
say("Da du dieses mal dein Leben riskieren")
            
say("Musst, um mir das Objekt zu bringen,")
            
say("welches ich Suche..")
            
say("Dieses mal bin ich weder zu beschäftigt,")
            
say("Noch zu schwach..Ich habe einfach nur Angst.")
            
say("")
            
wait()
            
say("Biologin:")
            
say("Also, da du nun lost musst und mir")
            
say("Die Onjekte holen musst, sage ich dir")
            
say("Was ich brauche.")
            
say("Ich benötige Zelkovas Holzäste")
            
say("Aber Achtung, sie welken schnell.")
            
say("Beeil dich!")
            
say("")                                                        

                                                                    

                              
            
set_state(go_to_disciple)
            
pc.setqf("duration",0)  -- ¥i¥H¸Õ¸Õªº®É¶¡
            pc
.setqf("collect_count",0)--¨ú±oªºª««~¼Æ¶q
            pc
.setqf("drink_drug",0) --³Ü°g´bÃĤôªº¸Ü 1
        end
    end

    state go_to_disciple begin
        when letter begin
            send_letter
("Spezialauftrag sammle Holzäste!")
            
        
end
        when button 
or info begin
            say_title
("Zelkovas Holzäste")
            ---                                                   
l
            say
("")
            
say("Die Biologin gab mir den Auftag,")
            
say("Ihr 25 Holzäste zu bringen.")
            
say("Ich bekomme sie von den Mops")
            
say("Im Geisterwald.. Ich denke mal von Allen.")
            
say("")
            
say_item_vnum(30165) 
            
say_reward("Du hast".." "..pc.getqf("collect_count").."abgegeben.")
            
say("")
        
end
        
        when 71035.
use begin --°g´bÃĤô
            
if get_time() < pc.getqf("duration") then
                say
("ÁÙ¤£¥i¥H¨Ï¥Î°g´bÃĤô")
                return
            
end
            
if pc.getqf("drink_drug")==1 then
                say
("¤w¸g¨Ï¥Î¤F1¦¸")
                return
            
end
            
if pc.count_item(30165)==0 then
                say
("Biologin:")
                
say("Du musst schon einen Ast dabei haben,")
                
say("Denn die Leere kann ich nicht untersuchen.")
                
say("")
                return
            
end

            item
.remove()    
            
pc.setqf("drink_drug",1)
        
end


        
        when 20084.chat
."Zelkovas Holzäste" with pc.count_item(30165) >0   begin
            
if get_time() > pc.getqf("duration") then
                say
("Biologin:")
                ---                                                   
l
                say
("Viele Dank, dass du mir")
                
say("Einen gebracht hast!")
                
say("Ich werde ihn untersuchen!")
                
say("")
                
pc.remove_item(30165, 1)
                
pc.setqf("duration",get_time())------------------22*Ó¤p®É
                wait
()
                
                
local pass_percent
                
if pc.getqf("drink_drug")==0 then
                    pass_percent
=60
                
else        
                    
pass_percent=90
                end
                
                local s
= number(1,100)
                if 
s<= pass_percent  then
                   
if pc.getqf("collect_count")< 24 then     --25*Zelkovas Holzäste 
                        local index 
=pc.getqf("collect_count")+1 
                        pc
.setqf("collect_count",index)     --¨ú±o¤F¤@*Ó+1
                        say
("Biologin:")
                        
say("Perfekt!!Dieser Ast ist einfach nur perfekt!")
                        
say("Du hast bis jetzt".." "..25-pc.getqf("collect_count").. "*abgegeben!")
                        
say("Ich brauche aber noch mehr!")
                        
say("")
                        
pc.setqf("drink_drug",0)     --ÃĤôªì©l¤Æ
                        
return
                    
end
                    say
("Biologin:")
                    
say("Du hast alle 25 Stück gesammelt!")
                    
say("Meine Untersuchungen der Äste")
                    
say("Ist nun abgeschlossen!")
                    
say("Du weisst was jetzt kommt oder?")    
                    
say("Ich brauche noch Gyimoks Seelenstein.")
                    
say("")
                    
pc.setqf("collect_count",0)
                    
pc.setqf("drink_drug",0)    
                    
pc.setqf("duration",0) 
                    
set_state(key_item)
                    return
                else                                
                
say("Biologin:")
                
say("Es tut mir Leid, aber")
                
say("Dieser Ast ist beim Transport")
                
say("Verwelkt und ich kann ihn nicht")
                
say("Mehr untersuchen!")
                
say("")                   
                
pc.setqf("drink_drug",0)     --ÃĤôªì©l¤Æ
                
return
                
end
        
else
          
say("Biologin:")
          
say("Ich habe die Untersuchengen")
          
say("Am letzten Ast noch nicht feritg.")
          
say("Bitte komm später wieder!!")
          
say("Was guckst du so? Halte mich nicht auf.")
          
say("")
          return
        
end

    end
end


    state key_item begin
        when letter begin
            send_letter
("Gyimoks Seelenstein")
            
            if 
pc.count_item(30224)>0 then    
                local v 
= find_npc_by_vnum(20084)
                if 
v != 0 then
                    target
.vid("__TARGET__", v, "Bioquest")
                
end
            end

        end
        when button 
or info begin
            
if pc.count_item(30224) >0 then
                say_title
("Gyimoks Seelenstein")
                
say("")
                ---                                                   
l
                say
("Die Biologin hat noch eine Aufgabe")
                
say("Für dich, gehe zu ihr!")
                
say("")
                return
            
end

            say_title
("Gyimoks Seelenstein")
            
say("")
            ---                                                   
l
            say
("Du hast mir alle 25 Äste gebracht")
            
say("Und ich habe sie alle untersucht.")
            
say("Nun benöte ich noch Gyimoks Seelenstein.")
            
say_item_vnum(30224)----------Gyimoks Seelenstein
            say
("Der legendäre Stein,")
            
say("Der die Seelen Gyimoks Adligen enthält.")
            
say("")
        
end
        

    
        when 2301.kill 
or
             
2302.kill or
             
2303.kill or
             
2304.kill or
             
2305.kill or 
             
2311.kill or 
             
2312.kill or 
             
2313.kill or
             
2314.kill or
             
2315.kill or 
             
2306.kill or 
             
2307.kill  begin
            local s 
= number(1, 500)
            if 
s == 1 and pc.count_item(30224)==0 then
                pc
.give_item2(30224)
                
send_letter("Gyimoks Seelenstein")        
            
end    
        end


        
        when __TARGET__
.target.click  or
            
20084.chat."Gyimoks Seelenstein" with pc.count_item(30224) > 0  begin
            target
.delete("__TARGET__")
            
say("Biologin:")
            
say("Diese Aufgabe war wohl doch")
            
say("Einfacher als erwartet... dann")
            
say("Lasse ich mir mal etwas schwereres")
            
say("Einfallen für das nächste Mal!")
            
say("Aber danke, dass du mir wieder")
            
say("Geholfen hast!!")
            
say("Mit Level 80 hörst du wieder von mir!")
            
say("")
            
pc.remove_item(30224,1)
            
set_state(__reward)
        
end
        
    end
    
    state __reward begin
        when letter begin
            send_letter
("Info der Biologin")
            
            
local v = find_npc_by_vnum(20018)
            if 
v != 0 then
                target
.vid("__TARGET__", v, "Baek-Go")
            
end

        end
        when button 
or info begin
            say_title
("Der weg zur Belohnung")
            ---                                                   
l
            say
("Die Quest der Biologin ist")
            
say("Beendet, alle 25 Holzäste wurde")
            
say("Abgegeben. Nun gehe zu")
            
say("Baek-Go und hole dir deine Belohnung ab:")
            
say("11% Bewegungsgeschwindigkeit")
            
say("10% Schadensreduzierung")
            
say("")
            
end
        
        when __TARGET__
.target.click  or
            
20018.chat."Belohnung"  begin
            target
.delete("__TARGET__")
            
say("Baek-Go:")
            
say("Du schon wieder...")
            
say("Ich weiss, weswegen du hier bist.")
            
say("Du willst dir deine Belohnung abholen,")
            
say("Nicht wahr? Hier hast du sie.")
            
say("")
            
say_reward("Auftrag der Biologin erfolgreich")
            
say_reward("Beendet, du erhälst deine Belohnung.")
            
say_reward("15% Bewegungsgeschwindigkeit und 15% Schadensreduzierung.")
            
say("")
            
affect.add_collect(apply.MOV_SPEED,15,60*60*24*365*60)    
            
affect.add_collect(apply.DEF_GRADE_BONUS,15,60*60*24*365*60) --60¦~        
            
            
clear_letter()
            
set_quest_state("collect_quest_lv80", "run")
            
set_state(__complete)
        
end
            
    end

    
    state __complete begin
    end
end 
Den Tag warten bis man wieder was abgeben kann habe ich weggemacht weil ich selten spiele aber bei den anderen quest habe cih das auch getahen und die klappen noch
11/20/2011 15:44 √→†Komplex†←√#4086
wäre nett wenn mir mal jmd. mit der Oxevent.quest helfen würde habe sie schon 2 mal hier reingepostet^.^,danke
11/20/2011 16:10 TankG#4087
HTML Code:
quest farmmap begin
  state start begin
     when 40001.use begin
	    if pc.get_level() >= 50 and pc.get_level() <= 94 then
		  say_title("Reisen")
		  say("Du kannst leider nur ")
		  say("in die Farmmap Teleportiert werden!")
		  local s = select("Ja", "Nein")
		  if s==1 then
		        if pc.get_map_index() != 103 then
				    pc.warp_local(103, 385, 650)
				else
                    return  
                end
		  if s==2 then
             return
          end
      	if pc.get_level() >= 95 then	  
		  say_title("Reisen")
		  say("Du kannst nun in die")
		  say("Farm- oder Levelmap")
		  say("teleportiert werden!")
		  local s = select("Farmmap", "Levelmap", "Nein, ich bin zu schwach!")		
		  if s==1 then
		        if pc.get_map_index() != 103 then
				    pc.warp_local(103, 385, 650)
				else
                    return  
                end			
		  if s==2 then
              if pc.get_map_index() != 182 then 
			   	pc.warp_local(182, 832, 0)
		  else
            return  
          end
		 else
            return  
        end  
    end
  end      
end

würdet ihr da mal bitte drüber schauen Danke im vorraus
11/20/2011 16:24 killa673#4088
Quest funktioniert immernoch nicht , sobald ich alle 2350 umgekloppt hab passiert nix und kann weiter killen .. pls help

QUEST:

PHP Code:
quest Galbator begin 
    state start begin 
        when login with pc
.level >= 120 begin 
            set_state
(information) 
        
end 
    end 

    state information begin 
        when letter begin 
            send_letter
("Besorg dir 125er Eq") 
        
end 

        when info 
or button begin 
            say
("Moin Alter!") 
            
say("") 
            
say("Du hast erfolgreich das 120. Level erreicht! Du bist nun bereit dir 125er EQ zu holen.") 
            
say("Zerleg 2350 Bossmumien um 125er EQ für deine Rasse zu bekommen!") 
            
say("Nur die - Counts werden zurückgesetzt !") 
            
say("") 
            
say("Dann hau rein Kollege.") 
            
say_reward("Töte 2350 Bossmumien") 
            
say("")  
            
pc.setqf("zähler", 2350) 
            
q.set_counter("Bossmumien", 2350) 
            
pc.setqf("gekillt", 0) 
            
set_state(next) 
            
clear_letter() 
        
end 
    end 
    state next begin 
        when letter begin 
            send_letter
("Besorg dir 125er Eq") 
        
end 
        when button 
or info begin 
            say
("Dein Auftrag:") 
            
say("") 
            
say_reward("Töte 2350 Bossmumien") 
            
say("")  
            
say("Du hast bisher "..pc.getqf("gekillt").." von 2350 Bossmumien getötet.") 
            
say("") 
            
say("Somit musst du noch "..pc.getqf("zähler").." Bossmumien töten.") 
        
end     

        when 20201.kill begin 
            local count 
= pc.getqf("zähler") - 1 
            
if count <= 2350 then 
                pc
.setqf("gekillt", pc.getqf("gekillt")+1) 
                
pc.setqf("zähler", count) 
                
q.set_counter("Bossmumien", count) 
            
end 
            
if count == 0 then 
                say_title
("Besorg dir 125er EQ!")  
                
say("Joo hasts geschafft ... Wurde auch Zeit!!")  
                
say("Ja als Belohnung:")  
                
say_reward("Als Belohnung gibts komplettes 125er EQ!") 
                if 
pc.job == 0 then 
                    pc
.give_item2(709, 1) 
                    
pc.give_item2(51119, 1) 
                    
pc.give_item2(41011, 1) 
                elseif 
pc.job == 1 then 
                    pc
.give_item2(12319, 1) 
                    
pc.give_item2(22219, 1) 
                    
pc.give_item2(41021, 1) 
                elseif 
pc.job == 2 then 
                    pc
.give_item2(499, 1) 
                    
pc.give_item2(41031, 1) 
                elseif 
pc.job == 3 then         
                    pc
.give_item2(52019, 1) 
                    
pc.give_item2(41041, 1) 
                
end     
                clear_letter
()  
                
set_state(__COMPLETE__) 
            
end 
        end 
    end 
    state __COMPLETE__ begin 
    end 
end 
11/20/2011 18:47 45myself45#4089
Könnt ihr euch die bitte einmal anschaun danke im voraus

PHP Code:
quest eintausch begin
    state start begin
    
    when 9007.chat
."DP Eintauschen" begin   
            say_title
("Hey ".. pc.get_name() ..".")
            
say("Welches Item möchtest du denn kaufen?")
            
local s = select("Löwen Siegel","Keiler Siegel","Feuer Tieger Siegel","Wolf Siegel","Phönix RufRolle,"EXIT")
        if s == 1 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Keiler Siegel")
            say("")
            pc.give_item2(71114)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end    
        if s == 2 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Wolf Siegel")
            say("")
            pc.give_item2(71116)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end
        if s == 3 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Feuer Tiger Siegel")
            say("")
            pc.give_item2(71118)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end
        if s == 4 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Löwen Siegel")
            say("")
            pc.give_item2(71120)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end
        if s == 5 then
            if pc.count_item(80234)>99 then
            say_reward("
Hier deine Phönix Ruf Rolle")
            say("")
            pc.give_item2(80235)
            pc.removeitem(80234, 100)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 100 Dungeon Points")
                return
        end
    end    
end 
11/20/2011 19:30 Kriegergeist^^#4090
Ich habe es endlich geschaft, das bei make kein fehler mehr auftaucht :rolleyes:
aber jetzt habe ich ein anderes problem.

Hier erst mal die quest:
Wen ich meine Belohnung abholen will, bekomme ich immer wieder den Text:
Code:
Hauptmann

So leit wie es mir auch tut, du hast schon
alle Belohnungen erhalten, die es geben kann
das ist die letzte else ding, aber ich habe noch "rangpoint" auf 0
Weiß jemand wo der fehler liegt und ihn bitte berichtigen könnte, das wär echt nice
Ich hoffe ihr könnt mir helfen :handsdown:

MfG
Kriegergeist^^
11/21/2011 15:56 Synfonia#4091
Quote:
Originally Posted by killa673 View Post
Quest funktioniert immernoch nicht , sobald ich alle 2350 umgekloppt hab passiert nix und kann weiter killen .. pls help

QUEST:

PHP Code:
quest Galbator begin 
    state start begin 
        when login with pc
.level >= 120 begin 
            set_state
(information) 
        
end 
    end 

    state information begin 
        when letter begin 
            send_letter
("Besorg dir 125er Eq") 
        
end 

        when info 
or button begin 
            say
("Moin Alter!") 
            
say("") 
            
say("Du hast erfolgreich das 120. Level erreicht! Du bist nun bereit dir 125er EQ zu holen.") 
            
say("Zerleg 2350 Bossmumien um 125er EQ für deine Rasse zu bekommen!") 
            
say("Nur die - Counts werden zurückgesetzt !") 
            
say("") 
            
say("Dann hau rein Kollege.") 
            
say_reward("Töte 2350 Bossmumien") 
            
say("")  
            
pc.setqf("zähler", 2350) 
            
q.set_counter("Bossmumien", 2350) 
            
pc.setqf("gekillt", 0) 
            
set_state(next) 
            
clear_letter() 
        
end 
    end 
    state next begin 
        when letter begin 
            send_letter
("Besorg dir 125er Eq") 
        
end 
        when button 
or info begin 
            say
("Dein Auftrag:") 
            
say("") 
            
say_reward("Töte 2350 Bossmumien") 
            
say("")  
            
say("Du hast bisher "..pc.getqf("gekillt").." von 2350 Bossmumien getötet.") 
            
say("") 
            
say("Somit musst du noch "..pc.getqf("zähler").." Bossmumien töten.") 
        
end     

        when 20201.kill begin 
            local count 
= pc.getqf("zähler") - 1 
            
if count <= 2350 then 
                pc
.setqf("gekillt", pc.getqf("gekillt")+1) 
                
pc.setqf("zähler", count) 
                
q.set_counter("Bossmumien", count) 
            
end 
            
if count == 0 then 
                say_title
("Besorg dir 125er EQ!")  
                
say("Joo hasts geschafft ... Wurde auch Zeit!!")  
                
say("Ja als Belohnung:")  
                
say_reward("Als Belohnung gibts komplettes 125er EQ!") 
                if 
pc.job == 0 then 
                    pc
.give_item2(709, 1) 
                    
pc.give_item2(51119, 1) 
                    
pc.give_item2(41011, 1) 
                elseif 
pc.job == 1 then 
                    pc
.give_item2(12319, 1) 
                    
pc.give_item2(22219, 1) 
                    
pc.give_item2(41021, 1) 
                elseif 
pc.job == 2 then 
                    pc
.give_item2(499, 1) 
                    
pc.give_item2(41031, 1) 
                elseif 
pc.job == 3 then         
                    pc
.give_item2(52019, 1) 
                    
pc.give_item2(41041, 1) 
                
end     
                clear_letter
()  
                
set_state(__COMPLETE__) 
            
end 
        end 
    end 
    state __COMPLETE__ begin 
    end 
end 
Du solltest nicht if...end if...end bei count machen sondern if elseif end.

Quote:
Originally Posted by 45myself45 View Post
Könnt ihr euch die bitte einmal anschaun danke im voraus

PHP Code:
quest eintausch begin
    state start begin
    
    when 9007.chat
."DP Eintauschen" begin   
            say_title
("Hey ".. pc.get_name() ..".")
            
say("Welches Item möchtest du denn kaufen?")
            
local s = select("Löwen Siegel","Keiler Siegel","Feuer Tieger Siegel","Wolf Siegel","Phönix RufRolle,"EXIT")
        if s == 1 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Keiler Siegel")
            say("")
            pc.give_item2(71114)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end    
        if s == 2 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Wolf Siegel")
            say("")
            pc.give_item2(71116)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end
        if s == 3 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Feuer Tiger Siegel")
            say("")
            pc.give_item2(71118)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end
        if s == 4 then
            if pc.count_item(80234)>49 then
            say_reward("
Hier deine 5 Löwen Siegel")
            say("")
            pc.give_item2(71120)
            pc.removeitem(80234, 50)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 50 Dungeon Points")
                return
            end
        if s == 5 then
            if pc.count_item(80234)>99 then
            say_reward("
Hier deine Phönix Ruf Rolle")
            say("")
            pc.give_item2(80235)
            pc.removeitem(80234, 100)
            
            else
                say("")
                say(""..mob_name(80234).."")
                say("
Du bist nicht im Besitz von 100 Dungeon Points")
                return
        end
    end    
end 
Bei Phönixrufrolle fehlt ein ", Frage mich wirklich wieso niemand ein bisschen hinschaut weil an den php-code farben fällt doch direkt auf dass da ein Zeichenfehler sein muss.
11/21/2011 17:04 Sp0ngeb0b ist cool#4092
PHP Code:
quest Galbator begin 
    state start begin 
        when login with pc
.level >= 120 begin 
            set_state
(information) 
        
end 
    end 

    state information begin 
        when letter begin 
            send_letter
("Besorg dir 125er Eq") 
        
end 

        when info 
or button begin 
            say
("Moin Alter!") 
            
say("") 
            
say("Du hast erfolgreich das 120. Level erreicht! Du bist nun bereit dir 125er EQ zu holen.") 
            
say("Zerleg 2350 Bossmumien um 125er EQ für deine Rasse zu bekommen!") 
            
say("Nur die - Counts werden zurückgesetzt !") 
            
say("") 
            
say("Dann hau rein Kollege.") 
            
say_reward("Töte 2350 Bossmumien") 
            
say("")  
            
pc.setqf("zähler", 2350) 
            
q.set_counter("Bossmumien", 2350) 
            
pc.setqf("gekillt", 0) 
            
set_state(next) 
            
clear_letter() 
        
end 
    end 
    state next begin 
        when letter begin 
            send_letter
("Besorg dir 125er Eq") 
        
end 
        when button 
or info begin 
            say
("Dein Auftrag:") 
            
say("") 
            
say_reward("Töte 2350 Bossmumien") 
            
say("")  
            
say("Du hast bisher "..pc.getqf("gekillt").." von 2350 Bossmumien getötet.") 
            
say("") 
            
say("Somit musst du noch "..pc.getqf("zähler").." Bossmumien töten.") 
        
end     

        when 20201.kill begin 
            local count 
= pc.getqf("zähler") - 1 
            
if count <= 2350 then 
                pc
.setqf("gekillt", pc.getqf("gekillt")+1) 
                
pc.setqf("zähler", count) 
                
q.set_counter("Bossmumien", count) 
            
end 
            
if count == 0 then 
                set_state
(ende)
                
clear_letter()
            
end
        end
    end
    state ende begin
        when letter begin 
            send_letter
("Besorg dir 125er Eq abgeschlossen!") 
        
end 

        when info 
or button begin 
            say_title
("Besorg dir 125er EQ!")  
            
say("Joo hasts geschafft ... Wurde auch Zeit!!")  
            
say("Ja als Belohnung:")  
            
say_reward("Als Belohnung gibts komplettes 125er EQ!") 
            if 
pc.job == 0 then 
                pc
.give_item2(709, 1) 
                
pc.give_item2(51119, 1) 
                
pc.give_item2(41011, 1) 
            elseif 
pc.job == 1 then 
                pc
.give_item2(12319, 1) 
                
pc.give_item2(22219, 1) 
                
pc.give_item2(41021, 1) 
            elseif 
pc.job == 2 then 
                pc
.give_item2(499, 1) 
                
pc.give_item2(41031, 1) 
            elseif 
pc.job == 3 then         
                pc
.give_item2(52019, 1) 
                
pc.give_item2(41041, 1) 
            
end     
            clear_letter
()  
            
set_state(__COMPLETE__) 
        
end 
    end 
    state __COMPLETE__ begin 
    end 
end 
teste es mal so ;) (sehe da aber eigentlich keinen fehler)
11/21/2011 18:38 Yoscha#4093
PHP Code:
quest new_mount begin
    state start begin
            when login 
or levelup with pc.get_level() == 30 begin
            set_state
(nwmount)
            
end
        end
        state nwmount begin
            when letter begin
            send_letter
("Neues Reittier")
            
end
            when button 
or info begin
            
if pc.getqf("n_mount") == 0 then
            pc
.setqf("n_mount", 1)
                
say_title("Neues Reittier !?")
                
say("Du hast Level 30 erreicht.")
                
say("Sicherlich willst du ein Reittier besitzen..")
                
                
say("Wähle dein Reittier aus:")
                
                
local s=select("Keiler","Wolf","Tiger","Löwe")
                
                if 
s==1 then
                
--Keiler
                pc
.give_item(1 ,71114)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Keiler-Mount erhalten !")
                
end
                
                
if s==2 then
                
--wolf
                pc
.give_item(1 ,71116)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Wolfs-Mount erhalten !")
                
end
                
                
if s==3 then
                
--Löwe
                pc
.give_item(1 ,71118)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Tiger-Mount erhalten !")
                
end
                
                
if s==4 then
                
--Löwe
                pc
.give_item(1 ,71120)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Löwen-Mount erhalten !")
                
end
            end
            set_state
(__complete)
        
end
    end
    state __complete begin
end 

Was ist hier Falsch ?


assertion failure : nested == 0
new_mount.quest:70:Abort trap (core dumped)
Error occured on compile new_mount.quest
11/21/2011 20:32 killa673#4094
bei nem nested error is immer was mit den end's verkehrt, teste mal paar ran zu hängen / zu löschen

EDIT: danke an euch beiden Quest funktioniert jetz einwandfrei fettes danke an euch ^^.. hab aber noch ne eher kleine problemquest .. bei der braucht man nur 1 item soll aber 00 oder 20 brauchen ^^, könntet ihr da nomma helfen pls?

QUEST:

PHP Code:
----------------------------------------------------
--
Made by SA Encore von BlackSourceMT2
----------------------------------------------------
quest Premiumitem  begin
    state start begin
        when login 
or levelup with pc.get_level() >=150  begin
            set_state
(information)
        
end    
    end

    state information begin
        when letter begin
            local v 
= find_npc_by_vnum(20011)
            if 
v != 0 then
                target
.vid("__TARGET__", v, "Quest")
            
end
            send_letter
("Premiumitem")
        
end

        when button 
or info begin
            say_title
("Premiumitem")
            
say("")
            
say("Hallo mutiger Krieger,")
            
say("Uriel hat eine Aufgabe für dich")
            
say("durch diese Aufgabe kannst du dir")
            
say("ein Mystisches Item holen")
            
say("durch welches du zum Premium User")
            
say("aufsteigen wirst.")
            
say_reward("GEHE ZU URIEL!")
        
end

        when __TARGET__
.target.click or
            
20011.chat."Premiumitem" begin
            target
.delete("__TARGET__")
            
say("Uriel:")
            ---                                                   
l
            say
("Hallo mein Freund,")
            
say("Du kennst doch sicherlich")
            
say("den Dämonengott, oder?")
            
say("Dieser Kreatur besitzt")
            
say("1 Teil einer uralten Mystischen Rolle")
            
say("bring mir dieses Teil der Drachengottrolle")
            
say("")    
            
set_state(go_to_disciple)
            
pc.setqf("collect_count",0)
            
pc.setqf("drink_drug",0) 
        
end
    end

    state go_to_disciple begin
        when letter begin
            send_letter
("Auftrag von Uriel")

        
end
        when button 
or info begin
            say_title
("Teil der Rolle")
            ---                                                   
l
            say
("")
            
say("Uriel gab euch den Auftrag")
            
say("Das Teil der Drachengottrolle zu sammeln!")
            
say("Das Item bekommt ihr von Dämonengott.")
            
say("Viel Glueck!")
            
say("")
            
say_item_vnum(90863)
            
say_reward("   Du hast".." "..pc.getqf("collect_count").." bis jetzt gesammelt!")
            
say("")
        
end

        when 71035.
use begin --°g´bÃĤô
            
if pc.getqf("drink_drug")==1 then
                say
("")
                
say("Bessere Droppchance!")
                
say("")

                
end
            end


        when 20210.kill begin
            
if pc.count_item(90863)<200-pc.getqf("collect_count") then
                pc
.give_item2(90863, 1)
            
end
        end

        when 20011.chat
."Quest" with pc.count_item(90863) >0   begin
                say
("Einen Moment!")
                ---                                                   
l
                say
("Ich werde das Item")
                
say("schnell mal ueberpruefen.")
                
say("Hoffentlich klappt alles!")
                
say("")
                
pc.remove_item(90863, 1)
                
wait()

                
local pass_percent
                
if pc.getqf("drink_drug")==0 then
                    pass_percent
=90864
                
else        
                    
pass_percent=90864
                end

                local s
= number(1,100)
            if 
s<= pass_percent  then
               
if pc.getqf("collect_count")< 199 then     --5*Ó¥H¤U 
                        local index 
=pc.getqf("collect_count")+1 
                        pc
.setqf("collect_count",index)     --¨ú±o¤@*Ӯɠ+1
                        say
("Uriel:")
                        
say("Perfekt! Das Item ist in Ordnung")
                        
say("Du hast bis jetzt ".." "..200-pc.getqf("collect_count").. " abgegeben!")
                        
say("Bring mir die restlichen!")
                        
say("")
                        
pc.setqf("drink_drug",0)     --ÃĤôªì©l¤Æ
                        end
                    end
                    say
("Uriel:")
                    
say("Yuhu! Du hast mir")
                    
say("alles gebracht!")
                    
say("Dafür werde ich dich wie versprochen")
                    
say("belohnen!")
                    
say("")
                    
say_reward("Du bekommst ein Heilige Drachengottrolle!")
                    
pc.setqf("collect_count",0)
                    
pc.setqf("drink_drug",0)
                    
pc.give_item2(90864)
                    
clear_letter()
                    
end
                end
            end 
11/22/2011 16:41 DerToT2010#4095
@yoscha

versuch es mal damit quest bockt nicht aber keine garantie das sie auch ig geht ^^

PHP Code:
quest new_mount begin
    state start begin
            when login 
or levelup with pc.get_level() == 30 begin
            set_state
(nwmount)
            
end
    end
        state nwmount begin
            when letter begin
            send_letter
("Neues Reittier")
            
end
            when button 
or info begin
                
if pc.getqf("n_mount") == 0 then
                    pc
.setqf("n_mount", 1)
                    
say_title("Neues Reittier !?")
                    
say("Du hast Level 30 erreicht.")
                    
say("Sicherlich willst du ein Reittier besitzen..")
                
                    
say("Wähle dein Reittier aus:")
                
                    
local s=select("Keiler","Wolf","Tiger","Löwe")
                
end
                
                
if s==1 then
                
--Keiler
                pc
.give_item(1 ,71114)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Keiler-Mount erhalten !")
                
end
                
                
if s==2 then
                
--wolf
                pc
.give_item(1 ,71116)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Wolfs-Mount erhalten !")
                
end
                
                
if s==3 then
                
--Löwe
                pc
.give_item(1 ,71118)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Tiger-Mount erhalten !")
                
end
                
                
if s==4 then
                
--Löwe
                pc
.give_item(1 ,71120)
                
pc.set_skill_level(136 ,59)
                
pc.set_skill_level(137 ,59)
                
pc.set_skill_level(138 ,59)
                
pc.set_skill_level(139 ,59)
                
pc.set_skill_level(140 ,59)
                
say("Du hast Löwen-Mount erhalten !")
                
end
                set_state
(__complete)
            
end
        end
    state __complete begin
    end
end