[SERVICE] Die Questkontrolle

11/18/2011 19:53 xTheSoulutionxx3#4066
PHP Code:
Fehler:die quest startet nicht
PHP Code:
quest subquest_48 begin
    state start begin
        when login 
or levelup with pc.level>43 begin
            set_state
(go_to_soonse)
    
end
end
    state go_to_soonse begin
        when letter begin
        local v 
find_npc_by_vnum(20023
        if 
!= 0 then target.vid("__TARGET__"v"sesesese")
    
end
        send_letter
("Begebe dich zu Soon!")
    
end
        when button 
or info begin
        say_title
("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("")
        
say_reward("text")
        
say("")
    
end
        when __TARGET__
.target.click or 20023.chat."Mein Schatz!" begin
        target
.delete("__TARGET__")
        
say_title("Soon:")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("")
        
say_reward("text")
        
say_reward("text")
        
say("")
        
set_state(go_to_kill_tier_gott)
    
end
end
    state go_to_kill_tier_gott begin
            when letter begin
        send_letter
("Der Schatz von Soon!")
    
end
        when button 
or info begin
        say_title
("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say_reward("text")
        
say("")
    
end
    when 191.kill 
or 192.kill or 193.kill or 194.kill begin
     local rand 
number(0,99
        if 
rand<4 then pc.give_item2(279881)
        if 
pc.count_item(27988) >= 4 then
        set_state
(go_back_to_soont)
    
end
end
    end
end
    state go_back_to_soont begin
        when letter begin
        send_letter
("Kehre zurück zu Soon!")
        
end
        when button 
or info begin
        say_title
("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say_reward("text")
        
say("")
    
end
        when __TARGET__
.target.click or 20023.chat."Die Schatzkarten!" with pc.count_item(27988) >= 4 begin
        target
.delete("__TARGET__")
        
say_title("Soon:")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say_reward("text")
        
say_reward("text")
        
say("")
        
pc.remove_item(279884)
        
set_state(go_to_alter_mann)
    
end
end
    state go_to_alter_mann begin
        when letter begin
        send_letter
("Begebe dich nun zum Alten Mann!")
        
end
        when button 
or info begin
        say_title
("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say_reward("text")
        
say("")
    
end
        when __TARGET__
.target.click or 20009.chat."Soon schickt mich!" begin
        target
.delete("__TARGET__")
        
say_title("Alter Mann:")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("")
        
say_reward("text")
        
say_reward("text")
        
say("")
        
set_state(go_back_to_soones)
        
pc.give_item2(700091)
    
end
end
    state go_back_to_soones begin
        when letter begin
        send_letter
("Bringe Soon die Schatztruhe!")
    
end
        when button 
or info begin
        say_title
("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say_reward("text")
        
say("")
    
end
        when __TARGET__
.target.click or 20023.chat."Ich habe die Schatztruhe!" with pc.count_item(70009) >= 1 begin
        target
.delete("__TARGET__")
        
say_title("Soon:")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say("text")
        
say_reward("text")
        
say_reward("text")
        
say("")
        
pc.remove_item(700091)
        
pc.give_exp2(1400000)
        
pc.give_gold(25000)
        
local items = {12240,12380,12520,12660}
           
local item items[number,4)];
        
pc.give_item2(item)
        
set_state(_complete_)
    
end
end
    state _complete_ begin
    end
end 
11/18/2011 21:39 √→†Komplex†←√#4067
Hey Epvp,
Hab da Ein Problem die quest wird bis zum button oxevent erkannt wenn ich dann drauf klicke passiert nichts:S
Hier mal meine Quest:

was is daran falsch?Thx bekommt ihr natürlich;)
11/18/2011 23:07 .Alpha.#4068
Eigentlich ist das hier ja mehr oder weniger so ne Art, "Helft mir ich kriege das nicht alleine hin, hier bedient euch an meiner Quest" Thema.

102 Seiten bei meinen Einstellungen und auf fast jeder Seite Lua Code xD
11/19/2011 00:01 HuHu95#4069
Bitte leute ich brauche echt hilfe bei der quest. Wichtig.. steht oben!
11/19/2011 00:26 bayberry#4070
@ Sp0ngeb0b ist cool

Die Warpring.quest funktioniert einwandfrei.
Danke.

Quote:
bei der 2. hab ich nichts auffälliges gesehen...allerdings bin ich nicht zuhause und habe somit kein notepad++ bzw. einen editor

falls es nicht klappt, schau ich mir das später, wenn ich zuhause bin an :P
must start with 'quest'
rates.quest:1:Abort trap (core dumped)

Der Fehler kommt immernoch, ist derselbe, wie bei der vorherigen :P
11/19/2011 11:00 HuHu95#4071
Kann mir jemand sagen warum ich den npc nicht mehr anklicken kann?

Und warum auch der rest nicht mehr funktioniert..

vorher hat es geklappt dann habe ich die timer eingefügt und dann ging nichts mehr aber bei make.py klappt alles.. merkwürdig...

habe sie auch wieder entfernt aber kam das selbe bei rauß:
PHP Code:
----------------------------------------------------  
--
Tempel des Drachen  
----------------------------------------------------  
quest dragontemple begin  
state start begin 
         
        when 30121.chat
."Tempel des Drachen" begin 
        
if get_time() > game.get_event_flag("Grotte_time"then         
        game
.set_event_flag("Grotte_zugang",0)  
        
end         
        
if pc.is_gm() or pc.count_item(80041) >= 1 then  
        say_title
(""..mob_name(30121).."")  
        
say("")  
        
say("Hallo Gamemaster, "..pc.get_name().."")  
        
say("Ich lasse dich auch ohne die Schlüssel und")  
        
say("das Passwort passieren.")  
        
wait()  
        
pc.warp(8432001066900)  
        return  
        
end  
        
if game.get_event_flag("Grotte_zugang") == and pc.count_item(30179) < 3 then  
        say_title
(""..mob_name(30121).."")  
        
say("")  
        
say("Dir fehlen "..item_name(30179).."")  
        
say_item_vnum(30179)  
        
say("Komme wieder wenn du 3 Gewundene Schlüssel besitzt.")  
        return  
        
end  
        
if game.get_event_flag("Grotte_zugang") == 1 then  
        say_title
(""..mob_name(30121).."")  
        
say("")  
        
pc.setqf("grotte_passworto"078954687921)  
        if 
pc.getqf("abgabe") == 1 then  
        pc
.setqf("abgabe",0)  
        
say("Du hast bereits 3 Schlüssel abgeben.")  
        
say("Ich lasse dich passieren.")  
        
pc.setqf("erlaubt",1)  
        
wait()  
        
pc.warp(8432001066900)  
        return  
        
end  
        say
("Tut mir Leid, der Raum ist reseviert.")  
        
say("Wenn du das Kennwort hast für den Zugang,")  
        
say("gebe es jetzt bitte ein.")  
        
local passwort tonumber(input(""))  
        --
pc.setqf("grotte_passworto"passwort)   
        if 
game.get_event_flag("Grotte_passwort") == passwort then  
        say_title
(""..mob_name(30121).."")  
        
say("")  
        
say("Das Kennwort stimmt überein.")  
        if 
pc.count_item(30179) < 3 then  
        say
("Ich kann dir den Zutritt nicht gewähren")  
        
say("Dir fehlt "..item_name(30179).."")  
        
say_item_vnum(30179)  
        
say("Komme wieder wenn du 3 Schlüssel besitzt.")  
        return  
        
end  
        say
("Ich gewähre dir den Zutritt!")  
        
pc.setqf("erlaubt",1)  
        
wait()  
        if 
pc.can_warp() then    pc.remove_item("30179",3end  
        pc
.warp(8432001066900)  
        elseif 
passi != pc.getqf("grotte_passworto"then  
        say_title
(""..mob_name(30121).."")  
        
say("")  
        
say("Das Kennwort ist leider falsch.")  
        return  
        
end  
        end  
        
if game.get_event_flag("Grotte_zugang") == and pc.count_item(30179) >= 3 then  
        say_title
(""..mob_name(30121).."")  
        
say("")  
        
say("Du bist der erste der den Eintritt in den Tempel")  
        
say("des Drachens verlangt. Ich werde dich passieren")  
        
say("lassen, sofern du drei gewundene Schlüssel")  
        
say("besitzt. Bevor du den Raum betreten darfst")  
        
say("musst du eine geheime Zahl eingeben.")  
        
say("Diese kannst du innerhalb von 5 Minuten an")  
        
say("deine Mitstreiter weitergeben, so das auch")  
        
say("sie den Raum betreten können. ")  
        
say("")  
        
local i select("Ich bin Bereit!""Abbrechen.")  
        if 
== i then  
        say_title
(""..mob_name(30121).."")  
        
say("Dann Lege jetzt die kennzahl fest.")  
        
local passwort tonumber(input(""))  
        if 
passwort and passwort <= 999999999 and pc.count_item(30179)>=1 then  
        game
.set_event_flag("Grotte_zugang",1)  
        
game.set_event_flag("Grotte_passwort",passwort)   
        
say_title(""..mob_name(30121).."")  
        
pc.setqf("abgabe",1)  
        
say("")  
        
say("Das Kennwort lautet:")  
        
chat("Das Kennwort für den Eintritt lautet: "..passwort.."")  
        
say_reward(""..passwort.."")  
        
say("Gib das Kennwort deinen Mitstreitern weiter!")  
        
pc.remove_item("30179",3)  
        else   
        
say_title(""..mob_name(30121).."")  
        
say("")  
        
say("Beim Kennwort setzen ist ein Fehler aufgetreten, versuche es erneut.")  
        
say("Bitte gebe nur Zahlen ein.")  
        
end 
        end 
        end 
        end     
         
        when login with pc
.get_map_index() == 408  begin  
            timer
("skipia_boss_end1"2)  
        
end 
        when skipia_boss_end1
.timer begin 
            d
.notice("Willkommen im Drachenraum!")  
            
d.notice("")  
            
d.notice("Ihr habt nun 30 Minuten Zeit den Wasserdrachen zu besiegen!")  
            
d.notice("Nur zusammen könnt ihr ihn bewältigen!")  
            
d.notice("Doch bevor ihr anfangt, zerstört den Metin des Kummers!")  
            
d.notice("Tötet den Drachen")  
            
d.notice("Zeitlimit: 30 Minuten")  
            
d.notice("Viel Erfolg!")  
            
d.notice("")             
            
timer(5*60)  
            
d.notice("Ihr habt noch 25 Minuten Zeit.")  
            
timer(5*60)  
            
d.notice("Ihr habt noch 20 Minuten Zeit.")  
            
timer(5*60)  
            
d.notice("Ihr habt noch 15 Minuten Zeit.")  
            
timer(5*60)  
            
d.notice("Ihr habt noch 10 Minuten Zeit.")  
            
timer(5*60
            
d.notice("Ihr habt noch 5 Minuten Zeit."
            
timer(5*60)                 
            
d.notice("Die Zeit ist abgelaufen, ihr werdet in wenigen Sekunden in eure Städte teleportiert!")  
            
warp_all_to_villagepc.get_map_index() , )  
        
end 
        when 8001.kill with pc
.get_map_index() == 408 begin 
        notice_in_map
("Der Zugang zum Drachenraum wurde soeben mit einem Passwort versehen!"
        
notice_in_map("Jetzt können nur noch Spieler den Drachenraum betreten, die das Passwort kennen!"
        
notice_in_map("Bitte beachtet, dass die anderen Metinsteine den Wasserdrachen verstärken!"
        
notice_in_map("Je mehr Metinsteine sich im Raum befinden, desto stärker ist der Wasserdrache!"
        
timer("skipia_boss_end"2)         
        
end     
        when skipia_boss_end
.timer begin 
        game
.set_event_flag("Grotte_zugang",1
        
end         
    when 8031.kill 
or 8032.kill or 8033.kill or 8034.kill with pc.get_map_index() == 408 begin 
        notice_in_map
("Ihr habt einen Metinstein zerstört! Der Drache wird immer schwächer!"
        
end     
         
    when 2493.kill with pc
.get_map_index() == 408 begin   
        notice_all
("Die Gruppe von "..pc.get_name().." hat Beran-Setaou getötet."
        
timer("skipia_boss_ende"30
        
notice_in_map("Beeindruckend, ihr habt ihn tatsächlich besiegt."
        
notice_in_map("Ihr werdet in 30 Sekunden zurück in die Stadt gebracht."
        
warp_all_to_villagepc.get_map_index() , 30 )         
        
end 
        when skipia_boss_ende
.timer begin      
        game
.set_event_flag("Grotte_zugang",0
        
end 
        end     
end 
11/19/2011 11:10 hr4rjuku#4072
Fehlermeldung:

11/19/2011 11:28 HuHu95#4073
Du must in deine questfunktion noch einen eintrag machen und zwar pc.can_warp

dann überschreiben und make.py ausführen
11/19/2011 11:47 √→†Komplex†←√#4074
Hey Epvp,
Hab da Ein Problem die quest wird bis zum button oxevent erkannt wenn ich dann drauf klicke passiert nichts:S
Hier mal meine Quest:
PHP Code:
quest oxevent_manager begin
    state start begin
        when 20011.chat
."OX Event" begin
                                
                                
if game.get_event_flag("oxevent_status") == 0 then
                say
("Na pc.get_name() alles kla?")
                
say("ox läuft gerade nicht soweit ich weiß")
                
say("komm einfach spätaa ma wieda^^")
                
say(""
                
say("")
            elseif 
game.get_event_flag("oxevent_status") == 1 then
                say
("Willscht mitmachen?")
                
say("kannst sehr gute Preise gewinnen")
                
say("")

                
local s select("Ja""Zuschauen""Nö heute nicht")

                if 
== 1 then
                    say
("Oki,Ich Tele dich")
                    
say("")

                    
wait()

                    
pc.warp(89650024600)
                elseif 
== 2 then
                    say
("Ahhh...[ENTER]Du willst nur zuschauen?")
                    
say("Tele dich.....")
                    
say("")

                    
wait()

                    
pc.warp(89630028900)
                
end
            
elseif game.get_event_flag("oxevent_status") == 2 then
                say
("Kannst nichtmehr teilnehmen")
                
say("aber ich kann mit dir nen deal machen")
                
say("ich tele dich hin aber nur zum zuschauen")
                
say("")

                
local s select("Zuschauen""Nää")
                if 
== 1 then
                    say
("Tele dich....")
                    
say("")

                    
wait()

                    
pc.warp(89630028900)
                
end
            end
        end

        when 30123.chat
."OX Event" with pc.is_gm() begin

            local stat 
oxevent.get_status()

            if 
stat == 0 then
                say
("OX Event")
                
say("")

                
local s select("OX starten""Nope")

                if 
== 1 then
                    local v 
oxevent.open()

                    if 
== 0 then
                        say
("OX Event schon aktiv?")
                        
say("")
                    elseif 
== 1 then
                        say
("Ox gestartet")
                        
say("")
                
notice_all("((`°*~-._Destroyed-World2_.-~*°´))")
                
notice_all("Das OX-Event hat soeben begonnen")
                
notice_all("Um daran teilzunehmen geht zu Uriel und sprecht mit ihm")
                
notice_all("((`°*~-._Destroyed-World2 _.-~*°´))")
                    else
                        
say("Fehler...")
                        
say("")
                    
end
                end
            
elseif stat == 1 then
                    say
("Es sind "..oxevent.get_attender().." Spieler da")
                    
say("Schließen?")
                    
say("")

                    
local s select("Zugang schliessen""Nope")

                    if 
== 1 then
                        oxevent
.close()

                        
say("Zugang zu.")
                        
notice_all("Der Ox Zugang wurde geschlossen")
                        
                        
say("")
                    
end
            
elseif stat == 2 then
                    say
("OX Event")
                    
say("")

                    
local s select("Fragen""Beenden""Beenden""Nope")

                    if 
== 1 then
                        local v 
oxevent.quiz(130)

                        if 
== 0 then
                            say
("Event läuft nichma!")
                            
say("")
                        elseif 
== 1 then
                            say
("Frage kommt..")
                            
say("")
                        else
                            
say("Wird schon ne FRage gestellt...")
                            
say("")
                        
end
                    
elseif == 2 then
                        oxevent
.end_event()
                
notice_all("((`°*~-._ Destroyed-World2 _.-~*°´))")
                
notice_all("Das OX-Event wurde beendet")
                
notice_all("Wir hoffen, dass es Spaß gemacht hat")
                
notice_all("((`°*~-._ Destroyed-World2 _.-~*°´))")

                        
say("Event Beendet~")
                        
say("")
                    elseif 
== 3 then
                        oxevent
.end_event()
                
notice_all("((`°*~-._ Destroyed-World2 _.-~*°´))")
                
notice_all("Das OX-Event wurde beendet")
                
notice_all("Wir hoffen, dass es Spaß gemacht hat")
                
notice_all("((`°*~-._ Destroyed-World2 _.-~*°´))")


                        
say("Du hast das Event Beendet")
                        
say("")
                    
end
            
elseif stat == 3 then
                    say
("Bitte warten.")
                    
say("")
                else
                    
say("Ein Fehler ist aufgetreten")
                
end
            end

        when 30123.chat
."OX Beenden" with pc.is_gm() begin
                        say
("Event wirklich beenden?")
                        
say("")

            
local s select("Ja""Nein")

            if 
== 1 then
                oxevent
.end_event_force()

                
say("OX Beendet")
            
end
        end

        when 30123.chat
."Belohnung verteilen" with pc.is_gm() begin
            say
("Item?")
            
say("")

            
local item_vnum input()

            
say("Anzahl des Items?")
            
say("")

            
local item_count input()

            
oxevent.give_item(item_vnumitem_count)
                
local itemname item.get_name(item_vnum)
                
local name pc.get_name()
                
notice_all("((`°*~-._ Destroyed-World2 _.-~*°´))")
                
notice_all(" "..name.." hat eine Belohnung ausgegeben:")
                
notice_all("Value: "..item_vnum.." Anzahl:"..item_count)
                
notice_all("((`°*~-._ Destroyed-World2 _.-~*°´))")
            
say("Du hast "..oxevent.get_attender().." Spielern die Belohung gegeben!")
            
say("")
        
end
    end
end 

was is daran falsch?Thx bekommt ihr natürlich;)
11/19/2011 11:55 bayberry#4075
Habe da eine "Autorates" quest die nicht funktioniert, hoffe mir kann da jemand helfen.

PHP Code:
quest rates begin
    state start begin
        when login with pc
.is_gm() begin
            timer
("rates_1"1)
        
end
        when rates_1
.timer begin
            local day 
os.date("%A")
            if 
get_time() > game.get_event_flag("autorates"then
                
if day == "Friday" then
                    __give_empire_priv
("0""4""1000""24")
                    
__give_empire_priv("0""1""1000""24")
                    
__give_empire_priv("0""2""1000""24")
                    
game.set_event_flag("autorates"get_time()+60*60*24)
                elseif 
day == "Saturday" then
                    __give_empire_priv
("0""4""1000""24")
                    
__give_empire_priv("0""1""1000""24")
                    
__give_empire_priv("0""2""1000""24")
                    
game.set_event_flag("autorates"get_time()+60*60*24)
                elseif 
day == "Sunday" then
                    __give_empire_priv
("0""4""1000""24")
                    
__give_empire_priv("0""1""1000""24")
                    
__give_empire_priv("0""2""1000""24")
                    
game.set_event_flag("autorates"get_time()+60*60*24)
                else
                    
__give_empire_priv("0""4""500""96")
                    
__give_empire_priv("0""1""500""96")
                    
__give_empire_priv("0""2""500""96")
                    
game.set_event_flag("autorates"get_time()+60*60*96)
                
end
            end
            timer
("rates_2"1)
        
end
        when rates_2
.timer begin
            
if get_time() > game.get_event_flag("autorates"then
                
if day == "Friday" then
                    __give_empire_priv
("0""4""1000""24")
                    
__give_empire_priv("0""1""1000""24")
                    
__give_empire_priv("0""2""1000""24")
                    
game.set_event_flag("autorates"get_time()+60*60*24)
                elseif 
day == "Saturday" then
                    __give_empire_priv
("0""4""1000""24")
                    
__give_empire_priv("0""1""1000""24")
                    
__give_empire_priv("0""2""1000""24")
                    
game.set_event_flag("autorates"get_time()+60*60*24)
                elseif 
day == "Sunday" then
                    __give_empire_priv
("0""4""1000""24")
                    
__give_empire_priv("0""1""1000""24")
                    
__give_empire_priv("0""2""1000""24")
                    
game.set_event_flag("autorates"get_time()+60*60*24)
                else
                    
__give_empire_priv("0""4""500""96")
                    
__give_empire_priv("0""1""500""96")
                    
__give_empire_priv("0""2""500""96")
                    
game.set_event_flag("autorates"get_time()+60*60*96)
                
end
            end
            timer
("rates_1"1)
        
end
    end
end 
WHEN: rates.timer
Calls undeclared function!:
os.date
Abort trap (core dumped)

Der Fehler kommt!
11/19/2011 11:59 HuHu95#4076
Liegt es vielleicht an dem untersten teil.. kann mir nicht vorstellen dass timer alleine steht..
11/19/2011 12:55 bayberry#4077
Wie meinste das Timer alleine steht ?
11/19/2011 13:59 xTheSoulutionxx3#4078
@bayberry
trag in deine quest_function ganze unten ein
os.date dann solllte es gehen.
11/19/2011 14:08 HuHu95#4079
Leute helft mir doch auch mal >.<
11/19/2011 14:57 killa673#4080
Leute hab extremes Problem, bei der quest zählts einfach weiter wie 2350 ! da sollte er aber aufhören und mir das EQ ausgeben. was ist falsch??

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)
                    
pc.give_item2(51119)
                    
pc.give_item2(41011)
                elseif 
pc.job == 1 then
                    pc
.give_item2(12319)
                    
pc.give_item2(22219)
                    
pc.give_item2(41021)
                elseif 
pc.job == 2 then
                    pc
.give_item2(499)
                    
pc.give_item2(41031)
                elseif 
pc.job == 3 then        
                    pc
.give_item2(52019)
                    
pc.give_item2(41041)
                
end    
                clear_letter
() 
                
set_state(__COMPLETE__)
            
end
        end
    end
    state __COMPLETE__ begin
    end
end