[SERVICE] Die Questkontrolle

04/02/2012 16:59 Stylo@Magic-mt3#5326
ok ich versuchs
04/02/2012 19:23 He3o Sippel#5327
Quote:
Originally Posted by .ProPlayer View Post
PHP Code:
quest event_tool begin
    state start begin
        when 20095.chat with pc
.is_gm() begin
            say_title
("Event Tool")
            
say("Welches Event willst du starten?")
            
local s select("Metin Event","Boss Event","OX""Abbrechen")
            if 
s==4 then
                setskin
(NOWINDOW)
                return
            elseif 
s==3 then
                
if oxevent.get_status()==0 then
                    local v 
oxevent.open()
                    if 
== 0 then
                        setskin
(NOWINDOW)
                        
chat("Konnte kein oxquiz.lua laden")
                        
chat("check die Files ab.")
                        return
                    elseif 
== 1 then
                        setskin
(NOWINDOW)
                        
notice_all("ox ist an usw")
                        
command("go ox")
                    else
                        
setskin(NOWINDOW)
                        
chat("OX Event Error")
                        return
                    
end
                
else
                    
setskin(NOWINDOW)
                    
chat("OX ist bereits an")
                    return
                
end
            
elseif s==2 then
                regen_in_map
("63","locale/germany/map/metin2_map_n_desert_01/boss_event.txt")
                
chat("Boss-Event in der Wüste Oase gestartet")
                
setskin(NOWINDOW)
                
notice_all("Das Boss-Event wurde gestartet")
            elseif 
s==1 then
                regen_in_map
("63""locale/germany/map/metin2_map_n_desert_01/metin_event.txt")
                
chat("Metin-Event in der Wüste Oase gestartet")
                
setskin(NOWINDOW)
                
notice_all("Das Metin Event wurde in der Wüste gestartet!")
            
end
        end
    end
end 
Wenn ich den NPC anklicke passiert nichts :O ?
Du muste nach dem
PHP Code:
when 20095.chat with pc.is_gm() begin 
z.b. den Text den er anklicken soll schreiben
PHP Code:
when 20095.chat."Event Manager" with pc.is_gm() 
04/02/2012 22:40 xXxAnUxXx#5328
PHP Code:
quest rüssihändler begin
state start begin
when 9002.chat
."Ninja Rüssis" begin
npc
.open_shop(2001)
else
return
end
end

when 9002.chat
."Sura Rüssis" begin
npc
.open_shop(2002)
else
return
end
end

when 9002.chat
."Krieger Rüssis" begin
npc
.open_shop(2000)
else
return
end
end

when 9002.chat
."Juwelier" begin
npc
.open_shop(2004)
else
return
end
end
end 
Wenn ich rüssihändler anklicke passiert garnichts... :(
04/03/2012 00:06 Brodan#5329
Nochmals umgeschrieben, in der Hoffnung das es so geht.. Fehlanzeige

PHP Code:
quest Drachenraum begin
    state start begin
        when login 
or levelup with pc.level >74 begin
            set_state
(Drachenraum)
        
end
    end
        
    state Drachenraum begin
        when 20092.chat
."Tempel des Drachen" begin
            say_title
(""..mob_name(20092)..":")
            
say("")
            
say("Sei gegrüßt Abenteurer!")
            
say("")
            
say("Du möchtest den Tempel des Drachen betreten?")
            
say("Dort haust ein uralter, furchteinflösender Drache.")            
            
say("Dieser Drache ist das Oberhaupt der Setaou's,")
            
say("auch bekannt als Beran-Setaou..")
            
say("")
            
say("Bist du sicher, das du dort hinein möchtest?")
            
say("")
            
local s select("Ja, bring mich hinein.","Nein, ich bleibe hier.")
                if 
== 1 then
                say_title
(""..mob_name(20092)..":")
                
say("")
                
say("Dafür, dass ich dich dort hin bringe,")
                
say("hätte ich gerne drei gewundene Schlüssel von dir.")
                
wait()
                    if 
game.get_event_flag("Drache") == 1 then
                        say_title
(""..mob_name(20092)..":")
                        
say("")
                        
say("Leider ist der Tempel des Drachen im moment gesperrt..")
                        
say("Sobald der Tempel wieder betreten werden kann")
                        
say("werde ich es berichten!")
                        
say("")
                        return
                    elseif 
pc.count_item(50043) < 3 then
                        say_title
(""..mob_name(20092)..":")
                        
say("")
                        
say("Du besitzt keinen gewundenen Schlüssel,")
                        
say("ohne solche Schlüssel kann ich dich")
                        
say("nicht hinein bringen..")
                        return
                    elseif 
pc.count_item(50043) >= 3 then
                        say_title
(""..mob_name(20092)..":")
                        
say("")
                        
say("Du besitzt drei gewundene Schlüssel!")
                        
say("Ich bringe dich nun in den Tempel des Drachen!")
                        
say("")
                        
say("Viel Glück... du wirst es brauchen..")
                        
pc.remove_item(500433)
                        
command("e Drachentempel 1")
                        
command("e Drache 1")
                        
notice_all("".. pc.get_name() .." versucht Beran-Setaou zu besiegen!")
                        
wait()
                        
pc.warp(1757321220377)
                    
end
                
elseif == 2 then
                    say_title
(""..mob_name(20092)..":")
                    
say("")
                    
say("Das wird wohl besser sein.")
                    
say("")
                return
            
end    
        end
        
        when 2493.kill with pc
.get_map_index() == 73 begin
            
if game.get_event_flag("Drachentempel") == 1 then
                command
("e Drachentempel 0")
                
chat("Heuk-Young: ".. pc.get_name() ..", du hast Beran-Setaou besiegt, nun ist der Fluch gebrochen!")
                
notice_all("".. pc.get_name() .." hat Beran-Setaou erlegt, herzlichen Glückwunsch!")
                
timer("Verlassen"60)
                
pc.setqf("Verlassen"1)
                
chat("Du wirst in 1 Min. aus dem Tempel des Drachen teleportiert!")
            
end
        end
        when punishment
.timer begin
            notice_all
("Beran-Setaou hat sich erneut erhoben!")
            
notice_all("Der Tempel des Drachen kann betreten werden.")
            
command("e Drache 0")
            
pc.setqf("punishment"0)
        
end
        when Verlassen
.timer begin
            say_title
(""..mob_name(20092)..":")
            
say("")
            
say("Ich werde Dich nun aus dem Tempel des Drachen")
            
say("befreien!")
            
say("Danke, dass du uns vom Fluch des Drachen")
            
say("erlöst hast!")
            
say("")
            
timer("punishment"1800)
            
pc.setqf("punishment"1)
            
pc.setqf("Verlassen"0)
            
wait()
            
pc.warp(1802141220674)
        
end
    end
end 
Bin langsam am verzweifeln mit der Quest..
Es funktioniert alles wunderbar, der raum schließt sich.. wenn ich den Drachen kille kommt die Meldung "Blabla hat Beran-Setaou erledigt!", ich werde nach 1min heraus geportet.. doch der Timer damit das Tor sich wieder öffnet startet nicht.. oder wird nicht ausgeführt ;/
04/03/2012 00:09 Sp0ngeb0b ist cool#5330
ersetz mal command("e Drache 0") durch game.set_event_flag("drache", 0)
04/03/2012 00:12 RedKing2#5331
Ich habe die Devil´s Catacomb nun endlich auf meinem Server + Clienten vollständig und fehlerfrei. Ich möchte nun dies bezüglich eine Quest schreiben. Da die Run Quest für ne fette Summe Geld verkauft wird (Was eine unendliche Frechheit ist) wollte ich meine eigene schreiben. Doch diese beschissenen Befehle wie d.jump usw. funktionieren einfach nicht. Sitze seid über 5 Stunden dran und bin entweder stroh dumm oder Epvp postet nur müll.

Hier mal der Portteil, damit die Map als Dungeon fungieren sollte...


PHP Code:
quest devilscatacomb_run begin
    state start begin
        when 2594.chat
.locale.devilscatacomb begin
            
            say_title
(mob_name(2594).." - The Devil´s Catacomb")
            
say(locale.devilscatacomb_text)
            
            
wait()
            
            
d.new_jump(1973143001210300)
        
        
end
        
        
-- Version 2
        
        when 8029.kill begin
            timer
("devilscatacomb_started"5)
        
end
        when devilscatacomb_started
.timer begin
            d
.new_jump_all(1973143001210300)
        
end
        
        
-- Version 3
        
        when 2594.chat
.locale.devilscatacomb begin
            
            say_title
(mob_name(2594).." - The Devil´s Catacomb")
            
say(locale.devilscatacomb_text)
            
            
wait()
            
            
d.new_jump(3143001210300)
        
        
end
        
        
-- Version 4
        
        when 2594.chat
.locale.devilscatacomb begin
            
            say_title
(mob_name(2594).." - The Devil´s Catacomb")
            
say(locale.devilscatacomb_text)
            
            
wait()
            
            
d.new_jump(1977171)
        
        
end
        
        
-- Ebenfalls probiert mit  d.jump_all() ; d.join pc.warp und anschließend darauf über einen Metin Kill d.new_jump_all oder d.jump_all
    end
end 
Map Setting

HTML Code:
ScriptType	MapSetting

CellScale	200
HeightScale	0.500000

ViewRadius	128

MapSize	7	7
BasePosition	307200	1203200
TextureSet	textureset\metin2_map_devilsCatacomb.txt
Environment	map_devilsCatacomb.msenv
DIe Koordinaten 307200 1203200 , wenn diese benutzt wird landet man auf den Koordinaten 0,0 . Ich benutze in den Quests entweder die State Koordinaten (bzw. Globalen Koordinaten) oder die einfachen die in der minimap oben stehen.

Ich hoffe die Quest Schreib- Profis oder andere freundliche und Hilfsbereite User sind bereit bei diesem Problem behilflich zu sein.

PS : Mal nebenbei , habe noch nie eine Run Quest erfolgreich schreiben können , genau wegen diesem Problem
04/03/2012 03:24 Brodan#5332
Quote:
Originally Posted by Sp0ngeb0b ist cool View Post
ersetz mal command("e Drache 0") durch game.set_event_flag("drache", 0)
Das löst das problem, dass der timer nicht startet auch nicht :/
Die Quest sieht nun so aus..
Ich werde jediglich aus dem Raum geportet nachdem der Drache down ist und die 1 Min. für den Timer abgelaufen ist.. doch der Timer damit sich das tor öffnet und die meldung über den respawn kommt startet nicht..
PHP Code:
quest Drachenraum begin
    state start begin
        when login 
or levelup with pc.level >74 begin
            set_state
(Drachenraum)
        
end
    end
        
    state Drachenraum begin
        when 20092.chat
."Tempel des Drachen" begin
            say_title
(""..mob_name(20092)..":")
            
say("")
            
say("Sei gegrüßt Abenteurer!")
            
say("")
            
say("Du möchtest den Tempel des Drachen betreten?")
            
say("Dort haust ein uralter, furchteinflösender Drache.")            
            
say("Dieser Drache ist das Oberhaupt der Setaou's,")
            
say("auch bekannt als Beran-Setaou..")
            
say("")
            
say("Bist du sicher, das du dort hinein möchtest?")
            
say("")
            
local s select("Ja, bring mich hinein.","Nein, ich bleibe hier.")
                if 
== 1 then
                say_title
(""..mob_name(20092)..":")
                
say("")
                
say("Dafür, dass ich dich dort hin bringe,")
                
say("hätte ich gerne drei gewundene Schlüssel von dir.")
                
wait()
                    if 
game.get_event_flag("Drache") == 1 then
                        say_title
(""..mob_name(20092)..":")
                        
say("")
                        
say("Leider ist der Tempel des Drachen im moment gesperrt..")
                        
say("Sobald der Tempel wieder betreten werden kann")
                        
say("werde ich es berichten!")
                        
say("")
                        return
                    elseif 
pc.count_item(50043) < 3 then
                        say_title
(""..mob_name(20092)..":")
                        
say("")
                        
say("Du besitzt keinen gewundenen Schlüssel,")
                        
say("ohne solche Schlüssel kann ich dich")
                        
say("nicht hinein bringen..")
                        return
                    elseif 
pc.count_item(50043) >= 3 then
                        say_title
(""..mob_name(20092)..":")
                        
say("")
                        
say("Du besitzt drei gewundene Schlüssel!")
                        
say("Ich bringe dich nun in den Tempel des Drachen!")
                        
say("")
                        
say("Viel Glück... du wirst es brauchen..")
                        
pc.remove_item(500433)
                        
game.set_event_flag("Drachentempel"1)
                        
game.set_event_flag("Drache"1)
                        
notice_all("".. pc.get_name() .." versucht Beran-Setaou zu besiegen!")
                        
wait()
                        
pc.warp(1757321220377)
                    
end
                
elseif == 2 then
                    say_title
(""..mob_name(20092)..":")
                    
say("")
                    
say("Das wird wohl besser sein.")
                    
say("")
                return
            
end    
        end
        
        when 2493.kill with pc
.get_map_index() == 73 begin
            
if game.get_event_flag("Drachentempel") == 1 then
                game
.set_event_flag("Drachentempel"0)
                
chat("Heuk-Young: ".. pc.get_name() ..", du hast Beran-Setaou besiegt, nun ist der Fluch gebrochen!")
                
notice_all("".. pc.get_name() .." hat Beran-Setaou erlegt, herzlichen Glückwunsch!")
                
timer("Verlassen"60)
                
pc.setqf("Verlassen"1)
                
chat("Du wirst in 1 Min. aus dem Tempel des Drachen teleportiert!")
            
end
        end
        when punishment
.timer begin
            notice_all
("Beran-Setaou hat sich erneut erhoben!")
            
notice_all("Der Tempel des Drachen kann betreten werden.")
            
game.set_event_flag("Drache"0)
            
pc.setqf("punishment"0)
        
end
        when Verlassen
.timer begin
            say_title
(""..mob_name(20092)..":")
            
say("")
            
say("Ich werde Dich nun aus dem Tempel des Drachen")
            
say("befreien!")
            
say("Danke, dass du uns vom Fluch des Drachen")
            
say("erlöst hast!")
            
say("")
            
timer("punishment"30)
            
pc.setqf("punishment"1)
            
pc.setqf("Verlassen"0)
            
wait()
            
pc.warp(1802141220674)
        
end
    end
end 
04/03/2012 10:34 Sp0ngeb0b ist cool#5333
Jo, aber die commands würden auch nicht klappen, da commands nur mit gm rechten ausführbar sind.

Zu deinem Timer problem:
Ich arbeite nicht gerne mit timern, da diese scheiße sind xD
naja man hat keine alternative...timer beenden sich nach einem logout/login
du wirst geportet & loggst dich somit aus & wieder ein
heißt, der timer, der dann noch läuft wird beendet & somit beginnt seine funktion nicht ;)

dh. du könntest es so machen:
PHP Code:
when login with pc.get_map_index() != 73 and pc.getqf('punishment') == 1 begin
notice_all
("Beran-Setaou hat sich erneut erhoben!")
            
notice_all("Der Tempel des Drachen kann betreten werden.")
            
game.set_event_flag("Drache"0)
            
pc.setqf("punishment"0)
end 
04/03/2012 12:26 warrockplayer4#5334
Hey,
also ich möchte in einem NPC mehrere Shops habe. Aber wenn ich den NPC anklicke kommt da nix :(

PHP Code:
quest shops begin
state start begin
when 9010.chat
."Item-Shop" begin
npc
.open_shop(13)
else
return
end
end

when 9010.chat
."Uppzeug-Shop" begin
npc
.open_shop(14)
else
return
end
end

when 9010.chat
."Truhen-Shop" begin
npc
.open_shop(16)
else
return
end
end

when 9010.chat
."Frisuren-Shop" begin
npc
.open_shop(17)
else
return
end
end
end 
liegt es an

PHP Code:
else
return 
Aber wie kann man es anderst machen? :D


Thx+MfG warrockplayer4
04/03/2012 13:34 Jakomo'#5335
PHP Code:
quest shops begin
    state start begin
        when 9010.chat
."Item-Shop" begin
            npc
.open_shop(13)
        
end

        when 9010.chat
."Uppzeug-Shop" begin
            npc
.open_shop(14)
        
end

        when 9010.chat
."Truhen-Shop" begin
            npc
.open_shop(16)
        
end

        when 9010.chat
."Frisuren-Shop" begin
            npc
.open_shop(17)
        
end
    end 
end 
04/03/2012 18:46 Ytura#5336
PHP Code:
quest whenlevel5
    state start begin
        when login with pc
.level >= 5 begin
        when 171.kill begin
            
if horse.get_level() <= 21
            horse
.advance()
            
say_tile("Pferd")
            
say("Du hast deinen ersten Wildhund getötet")
            
say("als kleine Belohnung wird dein Pferd")
            
say("auf Stufe 21 gesetzt")
            
say("Sei behutsam mit dein Pferd, ansonsten")
            
say("läuft es dir weg, wenn du es erst einmal gezähmt")
            
say("hast, musst du dich weiter drum kümmern!")
            
say("Lass es nie Hungern.")
            
say("Das richtige Futter findest du bei der Gemischtwarenhändlerin")
        
end
        
if    horse.get_level() <= 21 then
        end
    end
end 
Weiss einer wo der Fehler ist?

Erhalte diese Meldung:

[Only registered and activated users can see links. Click Here To Register...]
04/03/2012 18:54 Jakomo'#5337
PHP Code:
quest level5 begin
    state start begin
        when 171.kill with pc
.get_horse_level <= 21 begin
            horse
.advance()
            
say_tile("Pferd")
            
say("Du hast deinen ersten Wildhund getötet")
            
say("als kleine Belohnung wird dein Pferd")
            
say("auf Stufe 21 gesetzt")
            
say("Sei behutsam mit dein Pferd, ansonsten")
            
say("läuft es dir weg, wenn du es erst einmal gezähmt")
            
say("hast, musst du dich weiter drum kümmern!")
            
say("Lass es nie Hungern.")
            
say("Das richtige Futter findest du bei der Gemischtwarenhändlerin")
        
end
    end
end 
04/04/2012 12:59 127.6.6.6#5338
Fehler:
Quote:
nested == 0
gericht.quest:154:Error occoured on compile gericht.quest

PHP Code:
quest gericht begin
    state start begin
        when login 
or levelup with pc.get_level()>= 80 begin
            set_state
(info)
        
end
    end
    state info begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target1"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Gehe zu Soon, er verlangt Hilfe")
            
say("von dir.")
        
end
        when target1
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target1")
            
say_title("Soon")
            
say("Ich habe Bohnenpastete")
            
say("gefunden. In meinen Büchern steht,")
            
say("dass sie mit Reiskuchen zu einem")
            
say("entzückenden Gericht wird.")
            
say("Hilfst du mir dieses zu prüfen?")
            
say("Klasse! Ich sage dir sofort was du")
            
say("machen sollst. Lass mich nurnoch kurz")
            
say("nachlesen...")
            
wait()
            if 
pc.count_item(50016)>1 then
                pc
.remove_item(50016pc.count_item(50016))
            
end
            
if pc.count_item(30158)>1 then
                pc
.remove_item(30158pc.count_item(30158))
            
end
            say_title
("Soon")
            
say("So, als erstes gebe ich dir in Vertrauen")
            
say("die Bohnenpastete. Das du mir ja auf sie")
            
say("aufpasst!")
            
say("Ouh, hier steht du musst ins Feuerland?!")
            
say("Hm, du musst den Reiskuchen warscheinlich")
            
say("von den Flammengeister abgreifen.")
            
say("Ich wünsche dir viel Glück!")
            
say_reward("Bohnenpastete von Soon erhalten")
            
pc.give_item2(500161)
            
clear_letter()
            
set_state(flammen)
        
end
    end
    state flammen begin
        when letter begin
            send_letter
("Das Gericht")            
        
end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Töte Flammengeister um den Reiskuchen")
            
say("für das Gericht zu finden.")
        
end
        when 2202.kill begin
            local pct 
number(1,200)
            if 
pct==200 then
                clear_letter
()
                
pc.remove_item(301581)
                
pc.give_item2(500161)
                
chat("Hey, was liegt denn da?")
                
set_state(to_soon)
            
end
        end
    end
    state to_soon begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target2"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Du hast den Reiskuchen gefunden. Aber du")
            
say("hast die Bohnenpastete im Kampf verloren.")
        
end
        when target2
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target2")
            
say_title("Soon")
            
say("Du hast die Bohnenpastete verloren?")
            
say("Nun gut, wenigstens hast du den Reiskuchen.")
            
say("Aber ich kann doch keinen Reiskuchen ohne")
            
say("Datteln essen.")
            
say("Ich habe gehört, dass Yetis gestern Datteln vom")
            
say("Wochenmarkt gestohlen haben.")
            
clear_letter()
            
set_state(yeti)
        
end
    end
    state yeti begin
        when letter begin
            send_letter
("Besorge Datteln")            
        
end
        when button 
or info begin
            say_title
("Besorge Datteln")
            
say("Jage Yetis, bis du 10")
            
say("Datteln abgegriffen hast.")
        
end 
        when 1106.kill begin
            local pct 
number(1,100)
            if 
pct==100 then
                pc
.give_item2(507111)
                
pc.setqf("eis"pc.getqf("eis")+1)
            
end
            
if pc.getqf("eis")==10 then
                clear_letter
()
                
set_state(to_soon2)
            
end
        end
    end
    state to_soon2 begin
        when letter begin
            send_letter
("Übergebe die Datteln")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target3"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Überbringe die Datteln")
            
say("Du besitzt die Datteln, gehe zu Soon")
            
say("und übergebe sie ihm.")
        
end
        when target3
.target.click or 20023.chat."Übergebe die Datteln" begin    
            target
.delete("target3")
            
say_title("Soon")
            
say("Gut, du hast die Datteln gesammlt.")
            
say("Gib sie mir, damit ich sie in den Reiskuchen mischen kann.")
            if 
pc.count_item(50711)<10 or pc.count_item(30158)<1 then
                say
("")
                
say("Das sind nicht alle Zutaten!")
                
say("Geh und hole alles.")
                return
            else
                
pc.remove_item(5071110)
                
pc.remove_item(301581)
                
pc.give_item2(301851)
            
end
            say
("Vielen Dank für deine Hilfe.")
            
say("Nun kann ich gemütlich meine Mahlzeit")
            
say("verspeisen. Ich hoffe die Reise hat dir")
            
say("keine Unannehmlichkeiten bereitet.")
            
clear_letter()
        
end
    end 
04/04/2012 13:41 Jakomo'#5339
PHP Code:
quest gericht begin
    state start begin
        when login 
or levelup with pc.get_level()>= 80 begin
            set_state
(info)
        
end
    end
    state info begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target1"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Gehe zu Soon, er verlangt Hilfe")
            
say("von dir.")
        
end
        when target1
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target1")
            
say_title("Soon")
            
say("Ich habe Bohnenpastete")
            
say("gefunden. In meinen Büchern steht,")
            
say("dass sie mit Reiskuchen zu einem")
            
say("entzückenden Gericht wird.")
            
say("Hilfst du mir dieses zu prüfen?")
            
say("Klasse! Ich sage dir sofort was du")
            
say("machen sollst. Lass mich nurnoch kurz")
            
say("nachlesen...")
            
wait()
            if 
pc.count_item(50016)>1 then
                pc
.remove_item(50016pc.count_item(50016))
            
end
            
if pc.count_item(30158)>1 then
                pc
.remove_item(30158pc.count_item(30158))
            
end
            say_title
("Soon")
            
say("So, als erstes gebe ich dir in Vertrauen")
            
say("die Bohnenpastete. Das du mir ja auf sie")
            
say("aufpasst!")
            
say("Ouh, hier steht du musst ins Feuerland?!")
            
say("Hm, du musst den Reiskuchen warscheinlich")
            
say("von den Flammengeister abgreifen.")
            
say("Ich wünsche dir viel Glück!")
            
say_reward("Bohnenpastete von Soon erhalten")
            
pc.give_item2(500161)
            
clear_letter()
            
set_state(flammen)
        
end
    end
    state flammen begin
        when letter begin
            send_letter
("Das Gericht")            
        
end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Töte Flammengeister um den Reiskuchen")
            
say("für das Gericht zu finden.")
        
end
        when 2202.kill begin
            local pct 
number(1,200)
            if 
pct==200 then
                clear_letter
()
                
pc.remove_item(301581)
                
pc.give_item2(500161)
                
chat("Hey, was liegt denn da?")
                
set_state(to_soon)
            
end
        end
    end
    state to_soon begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target2"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Du hast den Reiskuchen gefunden. Aber du")
            
say("hast die Bohnenpastete im Kampf verloren.")
        
end
        when target2
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target2")
            
say_title("Soon")
            
say("Du hast die Bohnenpastete verloren?")
            
say("Nun gut, wenigstens hast du den Reiskuchen.")
            
say("Aber ich kann doch keinen Reiskuchen ohne")
            
say("Datteln essen.")
            
say("Ich habe gehört, dass Yetis gestern Datteln vom")
            
say("Wochenmarkt gestohlen haben.")
            
clear_letter()
            
set_state(yeti)
        
end
    end
    state yeti begin
        when letter begin
            send_letter
("Besorge Datteln")            
        
end
        when button 
or info begin
            say_title
("Besorge Datteln")
            
say("Jage Yetis, bis du 10")
            
say("Datteln abgegriffen hast.")
        
end 
        when 1106.kill begin
            local pct 
number(1,100)
            if 
pct==100 then
                pc
.give_item2(507111)
                
pc.setqf("eis"pc.getqf("eis")+1)
            
end
            
if pc.getqf("eis")==10 then
                clear_letter
()
                
set_state(to_soon2)
            
end
        end
    end
    state to_soon2 begin
        when letter begin
            send_letter
("Übergebe die Datteln")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target3"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Überbringe die Datteln")
            
say("Du besitzt die Datteln, gehe zu Soon")
            
say("und übergebe sie ihm.")
        
end
        when target3
.target.click or 20023.chat."Übergebe die Datteln" begin    
            target
.delete("target3")
            
say_title("Soon")
            
say("Gut, du hast die Datteln gesammlt.")
            
say("Gib sie mir, damit ich sie in den Reiskuchen mischen kann.")
            if 
pc.count_item(50711)<10 or pc.count_item(30158)<1 then
                say
("")
                
say("Das sind nicht alle Zutaten!")
                
say("Geh und hole alles.")
                return
            else
                
pc.remove_item(5071110)
                
pc.remove_item(301581)
                
pc.give_item2(301851)
            
end
            say
("Vielen Dank für deine Hilfe.")
            
say("Nun kann ich gemütlich meine Mahlzeit")
            
say("verspeisen. Ich hoffe die Reise hat dir")
            
say("keine Unannehmlichkeiten bereitet.")
            
clear_letter()
        
end
    end
end 
04/04/2012 13:42 He3o Sippel#5340
Quote:
Originally Posted by highlvlzocker View Post
Fehler:


PHP Code:
quest gericht begin
    state start begin
        when login 
or levelup with pc.get_level()>= 80 begin
            set_state
(info)
        
end
    end
    state info begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target1"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Gehe zu Soon, er verlangt Hilfe")
            
say("von dir.")
        
end
        when target1
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target1")
            
say_title("Soon")
            
say("Ich habe Bohnenpastete")
            
say("gefunden. In meinen Büchern steht,")
            
say("dass sie mit Reiskuchen zu einem")
            
say("entzückenden Gericht wird.")
            
say("Hilfst du mir dieses zu prüfen?")
            
say("Klasse! Ich sage dir sofort was du")
            
say("machen sollst. Lass mich nurnoch kurz")
            
say("nachlesen...")
            
wait()
            if 
pc.count_item(50016)>1 then
                pc
.remove_item(50016pc.count_item(50016))
            
end
            
if pc.count_item(30158)>1 then
                pc
.remove_item(30158pc.count_item(30158))
            
end
            say_title
("Soon")
            
say("So, als erstes gebe ich dir in Vertrauen")
            
say("die Bohnenpastete. Das du mir ja auf sie")
            
say("aufpasst!")
            
say("Ouh, hier steht du musst ins Feuerland?!")
            
say("Hm, du musst den Reiskuchen warscheinlich")
            
say("von den Flammengeister abgreifen.")
            
say("Ich wünsche dir viel Glück!")
            
say_reward("Bohnenpastete von Soon erhalten")
            
pc.give_item2(500161)
            
clear_letter()
            
set_state(flammen)
        
end
    end
    state flammen begin
        when letter begin
            send_letter
("Das Gericht")            
        
end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Töte Flammengeister um den Reiskuchen")
            
say("für das Gericht zu finden.")
        
end
        when 2202.kill begin
            local pct 
number(1,200)
            if 
pct==200 then
                clear_letter
()
                
pc.remove_item(301581)
                
pc.give_item2(500161)
                
chat("Hey, was liegt denn da?")
                
set_state(to_soon)
            
end
        end
    end
    state to_soon begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target2"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Du hast den Reiskuchen gefunden. Aber du")
            
say("hast die Bohnenpastete im Kampf verloren.")
        
end
        when target2
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target2")
            
say_title("Soon")
            
say("Du hast die Bohnenpastete verloren?")
            
say("Nun gut, wenigstens hast du den Reiskuchen.")
            
say("Aber ich kann doch keinen Reiskuchen ohne")
            
say("Datteln essen.")
            
say("Ich habe gehört, dass Yetis gestern Datteln vom")
            
say("Wochenmarkt gestohlen haben.")
            
clear_letter()
            
set_state(yeti)
        
end
    end
    state yeti begin
        when letter begin
            send_letter
("Besorge Datteln")            
        
end
        when button 
or info begin
            say_title
("Besorge Datteln")
            
say("Jage Yetis, bis du 10")
            
say("Datteln abgegriffen hast.")
        
end 
        when 1106.kill begin
            local pct 
number(1,100)
            if 
pct==100 then
                pc
.give_item2(507111)
                
pc.setqf("eis"pc.getqf("eis")+1)
            
end
            
if pc.getqf("eis")==10 then
                clear_letter
()
                
set_state(to_soon2)
            
end
        end
    end
    state to_soon2 begin
        when letter begin
            send_letter
("Übergebe die Datteln")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target3"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Überbringe die Datteln")
            
say("Du besitzt die Datteln, gehe zu Soon")
            
say("und übergebe sie ihm.")
        
end
        when target3
.target.click or 20023.chat."Übergebe die Datteln" begin    
            target
.delete("target3")
            
say_title("Soon")
            
say("Gut, du hast die Datteln gesammlt.")
            
say("Gib sie mir, damit ich sie in den Reiskuchen mischen kann.")
            if 
pc.count_item(50711)<10 or pc.count_item(30158)<1 then
                say
("")
                
say("Das sind nicht alle Zutaten!")
                
say("Geh und hole alles.")
                return
            else
                
pc.remove_item(5071110)
                
pc.remove_item(301581)
                
pc.give_item2(301851)
            
end
            say
("Vielen Dank für deine Hilfe.")
            
say("Nun kann ich gemütlich meine Mahlzeit")
            
say("verspeisen. Ich hoffe die Reise hat dir")
            
say("keine Unannehmlichkeiten bereitet.")
            
clear_letter()
        
end
    end 
Dir fehlt ein
PHP Code:
end 

PHP Code:
quest gericht begin
    state start begin
        when login 
or levelup with pc.get_level()>= 80 begin
            set_state
(info)
        
end
    end
    state info begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target1"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Gehe zu Soon, er verlangt Hilfe")
            
say("von dir.")
        
end
        when target1
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target1")
            
say_title("Soon")
            
say("Ich habe Bohnenpastete")
            
say("gefunden. In meinen Büchern steht,")
            
say("dass sie mit Reiskuchen zu einem")
            
say("entzückenden Gericht wird.")
            
say("Hilfst du mir dieses zu prüfen?")
            
say("Klasse! Ich sage dir sofort was du")
            
say("machen sollst. Lass mich nurnoch kurz")
            
say("nachlesen...")
            
wait()
            if 
pc.count_item(50016)>1 then
                pc
.remove_item(50016pc.count_item(50016))
            
end
            
if pc.count_item(30158)>1 then
                pc
.remove_item(30158pc.count_item(30158))
            
end
            say_title
("Soon")
            
say("So, als erstes gebe ich dir in Vertrauen")
            
say("die Bohnenpastete. Das du mir ja auf sie")
            
say("aufpasst!")
            
say("Ouh, hier steht du musst ins Feuerland?!")
            
say("Hm, du musst den Reiskuchen warscheinlich")
            
say("von den Flammengeister abgreifen.")
            
say("Ich wünsche dir viel Glück!")
            
say_reward("Bohnenpastete von Soon erhalten")
            
pc.give_item2(500161)
            
clear_letter()
            
set_state(flammen)
        
end
    end
    state flammen begin
        when letter begin
            send_letter
("Das Gericht")            
        
end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Töte Flammengeister um den Reiskuchen")
            
say("für das Gericht zu finden.")
        
end
        when 2202.kill begin
            local pct 
number(1,200)
            if 
pct==200 then
                clear_letter
()
                
pc.remove_item(301581)
                
pc.give_item2(500161)
                
chat("Hey, was liegt denn da?")
                
set_state(to_soon)
            
end
        end
    end
    state to_soon begin
        when letter begin
            send_letter
("Das Gericht")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target2"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Das Gericht")
            
say("Du hast den Reiskuchen gefunden. Aber du")
            
say("hast die Bohnenpastete im Kampf verloren.")
        
end
        when target2
.target.click or 20023.chat."Das Gericht" begin    
            target
.delete("target2")
            
say_title("Soon")
            
say("Du hast die Bohnenpastete verloren?")
            
say("Nun gut, wenigstens hast du den Reiskuchen.")
            
say("Aber ich kann doch keinen Reiskuchen ohne")
            
say("Datteln essen.")
            
say("Ich habe gehört, dass Yetis gestern Datteln vom")
            
say("Wochenmarkt gestohlen haben.")
            
clear_letter()
            
set_state(yeti)
        
end
    end
    state yeti begin
        when letter begin
            send_letter
("Besorge Datteln")            
        
end
        when button 
or info begin
            say_title
("Besorge Datteln")
            
say("Jage Yetis, bis du 10")
            
say("Datteln abgegriffen hast.")
        
end 
        when 1106.kill begin
            local pct 
number(1,100)
            if 
pct==100 then
                pc
.give_item2(507111)
                
pc.setqf("eis"pc.getqf("eis")+1)
            
end
            
if pc.getqf("eis")==10 then
                clear_letter
()
                
set_state(to_soon2)
            
end
        end
    end
    state to_soon2 begin
        when letter begin
            send_letter
("Übergebe die Datteln")
            
local v find_npc_by_vnum(20023)
            if 
!= 0 then
                target
.vid("target3"v"Soon")
            
end
        end
        when button 
or info begin
            say_title
("Überbringe die Datteln")
            
say("Du besitzt die Datteln, gehe zu Soon")
            
say("und übergebe sie ihm.")
        
end
        when target3
.target.click or 20023.chat."Übergebe die Datteln" begin    
            target
.delete("target3")
            
say_title("Soon")
            
say("Gut, du hast die Datteln gesammlt.")
            
say("Gib sie mir, damit ich sie in den Reiskuchen mischen kann.")
            if 
pc.count_item(50711)<10 or pc.count_item(30158)<1 then
                say
("")
                
say("Das sind nicht alle Zutaten!")
                
say("Geh und hole alles.")
                return
            else
                
pc.remove_item(5071110)
                
pc.remove_item(301581)
                
pc.give_item2(301851)
            
end
            say
("Vielen Dank für deine Hilfe.")
            
say("Nun kann ich gemütlich meine Mahlzeit")
            
say("verspeisen. Ich hoffe die Reise hat dir")
            
say("keine Unannehmlichkeiten bereitet.")
            
clear_letter()
        
end
    end
end