[SERVICE] Die Questkontrolle

07/30/2011 13:54 Event150#2911
PHP Code:
quest horse_menu begin
    state start begin
        
function horse_menu()
            if 
horse.is_mine() then
                say_title
("Pferdehandbuch")
                
say("Das Handbuch für das Pferd")
                
say("")
                
local s 7
                
if horse.is_dead() then
                    s 
select"Zurückholen des Pferde""Das Pferd zurück geben""Schließen")
                    if 
== 1 then s 0
                    
elseif == 2 then s 3
                    
elseif == 3 then return
                    
end
                
else
                    
select(
                    
"Pferd füttern""Pferd reiten""Das Pferd zurückgeben""Status des Pferdes anzeigen"
                    
"Pferd einen Namen geben""Reichsteleporter""Schließen")
                
end
                
if == 0 then
                    horse
.revive()
                elseif 
== 1 then
                    local food 
horse.get_grade() + 50054 1
                    
if pc.countitem(food) > 0 then
                        pc
.removeitem(food1)
                        
horse.feed()
                    else
                        
say("Das Item "..item_name(food).." wird benötiogt.")
                        
say("")
                    
end
                
elseif == 2 then
                    horse
.ride()
                elseif 
== 3 then
                    horse
.unsummon()
                elseif 
== 4 then
                    say_title
("Pferdestatus")
                    
say("Momentane Lebenspunkte des Pferdes: "..horse.get_health_pct().."%")
                    
say("Momentane Ausdauer des Pferdes: "..horse.get_stamina_pct().."%")
                    
say("")
                elseif 
== 5 then
                    
if pc.countitem("71110") <= 0 then
                        say
("Das Item "..item_name("71110").." wird benötigt.")
                        
say("")
                        return
                    
end
                    local old_horse_name 
horse.get_name() ;
                    
say_title("Pferdename")
                    
say("Hier kannst du deinem Pferd einen neuen")
                    
say("Namen geben. Damit kannst du dein Pferd")
                    
say("über alle anderen hervorheben.")
                    
say("")
                    if 
string.len(old_horse_name) == 0 then
                        say_reward
("Das Pferd besitzt bis jetzt keinen Namen.")
                    else
                        
say_reward("Der momentane Name des Pferdes lautet "..old_horse_name..".")
                    
end
                    say
("")
                    
say("Wähle einen neuen Pferdenamen:")
                    
say("")
                    
local horse_name input()
                    if 
string.len(horse_name) < 2 then
                        say_title
("Pferdename")
                        
say("Der Name ist zu kurz.")
                        
say("")
                        return
                    elseif 
string.len(horse_name) > 12 then
                        say_title
("Pferdename")
                        
say("Der Name ist zu lang.")
                        
say("")
                        return
                    
end
                    local ret 
horse.set_name(horse_name)
                    
say_title("Pferdename")
                    if 
ret == 0 then
                        say_reward
("Du hast momentan kein Pferd!")
                        
say("")
                    elseif 
ret == 1 then
                        say_reward
("Du kannst diesen Namen nicht benutzen!")
                        
say("")
                    elseif 
ret == 2 then
                        pc
.remove_item("71110")
                        
say("Du hast deinem Pferd einen neuen Namen gegeben!")
                        
say("")
                    
end
                
else
                    
local map=pc.get_map_index()
                    
local warp=0
                    local s
=0
                    local check
=0
                    say
("Wohin möchtest du?")
                    if 
map!=and map!=21 and map!=41 then
                        check
=1
                        s
=select("Rotes Reich""Gelbs Reich""Blaus Reich""Abbrechen")
                        
warp=s
                        
if s==4 then
                            
return
                        
end
                    end
                    
if map==1 then
                        s
=select("Gelbs Reich""Blaus Reich""Abbrechen")
                        if 
s==1 then
                            warp
=2
                        
elseif s==2 then
                            warp
=3
                        end
                    
elseif map==21 then
                        s
=select("Rotes Reich""Blaues Reich""Abbrechen")
                        if 
s==1 then    
                            warp
=1
                        
elseif s==2 then
                            warp
=
                        end
                    
elseif map==41 then
                        s
=select("Rotes Reich""Gelbes Reich""Abbrechen")
                        
warp=s
                    end
                    
if s==and check==0 then
                        
return
                    
end
                    
if warp==1 then
                        pc
.warp(474200954400)
                    elseif 
warp==2 then
                        pc
.warp(63200166100)
                    elseif 
warp==3 then
                        pc
.warp(960100268700)
                    
end
                end
            end
        end
        when 20030.click begin horse_menu
.horse_menu() end
        when 20101.click begin horse_menu
.horse_menu() end
        when 20102.click begin horse_menu
.horse_menu() end
        when 20103.click begin horse_menu
.horse_menu() end
        when 20104.click begin horse_menu
.horse_menu() end
        when 20105.click begin horse_menu
.horse_menu() end
        when 20106.click begin horse_menu
.horse_menu() end
        when 20107.click begin horse_menu
.horse_menu() end
        when 20108.click begin horse_menu
.horse_menu() end
        when 20109.click begin horse_menu
.horse_menu() end
    end
end 
Wenn man auf schließen drückt kommt trotzdem reichsteleporter.
:/
07/30/2011 17:01 .Metz#2912
Ich habe ne Frage könntet ihr mir sagen ob das geht?

Also ich habe folgende Quest:
quest boar begin
state start begin
when 71114.use begin
chat("Du hast dein Keiler gerufen!")
pc.mount(20110)
affect.add_collect(apply.DEF_GRADE_BONUS,50,1800)
affect.add_collect(apply.ATT_GRADE_BONUS,50,1800)
affect.add_collect(apply.EXP_GRADE_BONUS,50,1800)
end
end
end

Kann man irgendwie machen wenn man absteigt das die Bonis automatisch verschwinden? Ich will kein zusätzliches Item benutzten!
07/30/2011 18:13 dermarius123#2913
Geht leider nicht brauche Hilfe per Nachricht wäre schön :(

quest give_basic_weapon begin
state start begin
when login begin
say_title ( "Willkommen" )
say ( "Willkommen auf dem Server *******." )
say ( "Unsere Teamspeakadresse ist ***" )
say ( "Viel Spass!" )
say ( "" )
pc . give_exp2 ( 100000 )
set_quest_state ( "levelup" , "run" )
pc . change_money ( 100000 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27003" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "27006" , 200 )
pc . give_item2 ( "71050" , 200 )
pc . give_item2 ( "72702" , 1 )
pc . give_item2 ( "50051" , 1 )
horse . advance ( )
say_reward ( "Du wurdest level 33." )
say_reward ( "Du erhielst 100000 yang." )
say_reward ( "Du erhielst 1000 Rote(G)." )
say_reward ( "Du erhielst 400 Blaue(G)." )
say_reward ( "Du erhielst Items fur Laufgeschwindigkeit." )
say_reward ( "Du erhielst ein Pferd." )
clear_letter ( )
set_state ( "__COMPLETE__" )
if pc . job == 0 then
pc . give_item2 ( "75" , 1 )
pc . give_item2 ( "3065" , 1 )
pc . give_item2 ( "11235" , 1 )
pc . give_item2 ( "12225" , 1 )
pc . give_item2 ( "13025" , 1 )
pc . give_item2 ( "14105" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16105" , 1 )
pc . give_item2 ( "17105" , 1 )
say_reward ( "Du erhielst das Kriegerset!" )
elseif pc . job == 1 then
pc . give_item2 ( "1035" , 1 )
pc . give_item2 ( "2065" , 1 )
pc . give_item2 ( "8009" , 200 )
pc . give_item2 ( "8008" , 200 )
pc . give_item2 ( "8007" , 200 )
pc . give_item2 ( "8006" , 200 )
pc . give_item2 ( "11435" , 1 )
pc . give_item2 ( "12365" , 1 )
pc . give_item2 ( "13025" , 1 )
pc . give_item2 ( "14105" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16105" , 1 )
pc . give_item2 ( "17105" , 1 )
say_reward ( "Du erhielst das Ninjaset!" )
elseif pc . job == 2 then
pc . give_item2 ( "75" , 1 )
pc . give_item2 ( "11635" , 1 )
pc . give_item2 ( "12505" , 1 )
pc . give_item2 ( "13025" , 1 )
pc . give_item2 ( "14105" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16105" , 1 )
pc . give_item2 ( "17105" , 1 )
say_reward ( "Du erhielst das Suraset!" )
elseif pc . job == 3 then
pc . give_item2 ( "5035" , 1 )
pc . give_item2 ( "7065" , 1 )
pc . give_item2 ( "11835" , 1 )
pc . give_item2 ( "12645" , 1 )
pc . give_item2 ( "13025" , 1 )
pc . give_item2 ( "14105" , 1 )
pc . give_item2 ( "15089" , 1 )
pc . give_item2 ( "16105" , 1 )
pc . give_item2 ( "17105" , 1 )
say_reward ( "Du erhielst das Schamiset!" )
end
end
end
end
07/31/2011 00:25 .NighT™#2914
@dermarius123: Glaube, da ist ein end zu wenig.
Probiers so:
07/31/2011 02:28 Deathmachinex3#2915
Quote:
Originally Posted by Deathmachinex3 View Post
Hallo ,

ich habe eine quest bei der ich keine belohnung erhalte. ich finde den fehler allerings niht. bitte um hilfe. hier meine quest:

PHP Code:
--------------------------------------------
-- 
SUB QUEST 
--LV 46
--¬°¤F¦ºªÌªº¦w®§
--------------------------------------------
quest subquest_42 begin 
    state start begin
        when login 
or levelup with pc.level >= 46 and pc.level <= 99 begin
            set_state
(information)
        
end
    end

    state information begin
        when letter begin
            
            local vnum
=0

            
if pc.get_empire() == 1 then
                vnum
20306
            
elseif pc.get_empire() == 2 then
                vnum
20326
            
elseif pc.get_empire() == 3 then
                vnum
=20346
            end


            local v
=find_npc_by_vnum(vnum)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"¬°¤F¦ºªÌªº¦w®§")
            
end
        end

        when __TARGET__
.target.click or
         
20306.chat."Die geheime Lehre"  begin
            target
.delete("__TARGET__")
            
say("Lehrer der Drachenmacht:")
            
say("Hey Fremder,")
            
say("Ich hoffe du hast einen")
            
say("Moment Zeit für mich.")
            
say("")
            
wait()
            
say("Lehrer der Drachenmacht:")
            
say("Wir haben mitbekommen")
            
say("das es Bücher gibt in denen")
            
say("steht wie wir unsere Macht")
            
say("noch erhöhen können.")
            
say("")
            
say("")
            
wait()
            
say("Lehrer der Drachenmacht:")
            
say("Töte bitte")
            
say(""..mob_name(774)..", "..mob_name(775).."und "..mob_name(776)..".")
            
say("Sie besitzen die Tempellehre und ")
            
say("den Tempelschal um auch alles zu")
            
say("Lernen.")
            
say("")
        
            
local s=select("Ja, ich besorg es.","Nein, keine lust..")
            if 
2==s then
                say
("Quest beenden?")
                
local a=select("Ja","Nein")
                if 
2==a then
                    say
("Lehrer der Drachenmacht:")
                    
say("Komm wieder sobald du Zeit hast")
                    
say("")
                    return
                
end
                say
("Lehrer der Drachenmacht:")
                
say("Schade...")
                
say("Es hätte uns mit")
                
say("Sicherheit weiter")
                
say("geholfen.")
                
say("")
                
set_state(__GIVEUP__)
                return
            
end
            say
("Lehrer der Drachenmacht:")
            
say("Dann wünsch ich dir")
            
say("eine gute Reise.")
            
say("")
            
set_state(for_the_die)

            
end

        when __TARGET__
.target.click or
            
20326.chat."Die geheime Lehre"  begin
            target
.delete("__TARGET__")
            
say("Lehrer der Drachenmacht:")
            
say("Hey Fremder,")
            
say("Ich hoffe du hast einen")
            
say("Moment Zeit für mich.")
            
say("")
            
wait()
            
say("Lehrer der Drachenmacht:")
            
say("Wir haben mitbekommen")
            
say("das es Bücher gibt in denen")
            
say("steht wie wir unsere Macht")
            
say("noch erhöhen können.")
            
say("")
            
say("")
            
wait()
            
say("Lehrer der Drachenmacht:")
            
say("Töte bitte")
            
say(""..mob_name(774)..", "..mob_name(775).."und "..mob_name(776)..".")
            
say("Sie besitzen die Tempellehre und ")
            
say("den Tempelschal um auch alles zu")
            
say("Lernen.")
            
say("")
        
            
local s=select("Ja, ich besorg es.","Nein, keine lust..")
            if 
2==s then
                say
("Quest beenden?")
                
local a=select("Ja","Nein")
                if 
2==a then
                    say
("Lehrer der Drachenmacht:")
                    
say("Komm wieder sobald du Zeit hast")
                    
say("")
                    return
                
end
                say
("Lehrer der Drachenmacht:")
                
say("Schade...")
                
say("Es hätte uns mit")
                
say("Sicherheit weiter")
                
say("geholfen.")
                
say("")
                
set_state(__GIVEUP__)
                return
            
end
            say
("Lehrer der Drachenmacht:")
            
say("Dann wünsch ich dir")
            
say("eine gute Reise.")
            
say("")
            
set_state(for_the_die)

            
end




        when __TARGET__
.target.click or
            
20346.chat."Die geheime Lehre"  begin
            target
.delete("__TARGET__")
            
say("Lehrer der Drachenmacht:")
            
say("Hey Fremder,")
            
say("Ich hoffe du hast einen")
            
say("Moment Zeit für mich.")
            
say("")
            
wait()
            
say("Lehrer der Drachenmacht:")
            
say("Wir haben mitbekommen")
            
say("das es Bücher gibt in denen")
            
say("steht wie wir unsere Macht")
            
say("noch erhöhen können.")
            
say("")
            
say("")
            
wait()
            
say("Lehrer der Drachenmacht:")
            
say("Töte bitte")
            
say(""..mob_name(774)..", "..mob_name(775).."und "..mob_name(776)..".")
            
say("Sie besitzen die Tempellehre und ")
            
say("den Tempelschal um auch alles zu")
            
say("Lernen.")
            
say("")
        
            
local s=select("Ja, ich besorg es.","Nein, keine lust..")
            if 
2==s then
                say
("Quest beenden?")
                
local a=select("Ja","Nein")
                if 
2==a then
                    say
("Lehrer der Drachenmacht:")
                    
say("Komm wieder sobald du Zeit hast")
                    
say("")
                    return
                
end
                say
("Lehrer der Drachenmacht:")
                
say("Schade...")
                
say("Es hätte uns mit")
                
say("Sicherheit weiter")
                
say("geholfen.")
                
say("")
                
set_state(__GIVEUP__)
                return
            
end
            say
("Lehrer der Drachenmacht:")
            
say("Dann wünsch ich dir")
            
say("eine gute Reise.")
            
say("")
            
set_state(for_the_die)

            
end

        end


    state for_the_die begin

        when letter begin

            setskin
(NOWINDOW)
            
makequestbutton("Geheime Lehre")
            
q.set_title("Geheime Lehre")
            
q.start()
            
            if  
pc.count_item("30147") >=and  pc.count_item("30148") >=1 then
                    local vnum
=0

                    
if pc.get_empire() == 1 then
                        vnum
20306
                    
elseif pc.get_empire() == 2 then
                        vnum
20326
                    
elseif pc.get_empire() == 3 then
                        vnum
20346
                    end

                    local v
=find_npc_by_vnum(vnum)
                    if 
0!= v then
                        target
.vid("__TARGET__",v,"")
                    
end 
                end    

        end        
            
    
        when info 
or  button begin
            
if  pc.count_item("30147") >=and  pc.count_item("30148") >=1 then
                say
(locale.NOTICE_COLOR..  "Die geheime Lehre" ..locale.NORMAL_COLOR)
                
say("")
                
say("Du hast alles was der")
                
say("Lehrer der Drachenmacht")
                
say("haben wollte.")
                
say("")
                return
            
end
            
            say
(locale.NOTICE_COLOR..  "Die geheime Lehre" ..locale.NORMAL_COLOR)
            
say("")
            
say("Der Lehrer der Drachenmacht")
            
say("möchte das du")
            
say(""..mob_name(774)..", "..mob_name(775).." oder "..mob_name(776).."")
            
say("tötest.")
            
say("Sie haben die Tempellehre")
            
say("und den Tempelschal.")
            
say("")

        
end


                    
        when 774.kill 
or 775.kill or 776.kill  begin
            local s 
number(1100)
            
            if 
<= and pc.count_item(30147)==0 then
                pc
.give_item2(301471)
            
end    
    
            local a 
number(1100)
            if 
<= and pc.count_item(30148)==0 then
                pc
.give_item2(301481)
            
end
            
                        
        end
            
                
        when __TARGET__
.target.click or
            
20306.chat."Ich habe alles." with pc.count_item("30147") >=and  pc.count_item("30148") >=1 begin
        
            target
.delete("__TARGET__")
            
say("Lehrer der Drachenmacht:")
            
say("Ja, wunderbar.")
            
say("Nun können wir versuchen")
            
say("das zu entschlüsseln.")
            
say("Danke für deine Hilfe.")
            
say("Hier ist deine Belohnung.")
            
say("")
            
say("")
            
pc.remove_item("30147",1)
            
pc.remove_item("30148",1)
            
            
say_reward("Du erhältst 1.700.000 Ehrfahrung.")
            
pc.give_exp2(1700000)

            
say_reward("Du erhältst 5 Diamanten.")
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
    
            
            
pc.give_item2("50005"1)
            
say_reward("Du erhältst 1 Gutschein für eine Pferdemedaille.")
    

            
clear_letter()
            
set_state(COMPLETE)

        
end
    
        when __TARGET__
.target.click or 
            
20326.chat."Ich habe alles." with pc.count_item("30147") >=and  pc.count_item("30148") >=1 begin
        
            target
.delete("__TARGET__")
            
say("Lehrer der Drachenmacht:")
            
say("Ja, wunderbar.")
            
say("Nun können wir versuchen")
            
say("das zu entschlüsseln.")
            
say("Danke für deine Hilfe.")
            
say("Hier ist deine Belohnung.")
            
say("")
            
say("")
            
pc.remove_item("30147",1)
            
pc.remove_item("30148",1)
            
            
say_reward("Du erhältst 1.700.000 Ehrfahrung.")
            
pc.give_exp2(1700000)

            
say_reward("Du erhältst 5 Diamanten.")
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
    
            
            
pc.give_item2("50005"2)
            
say_reward("Du erhältst 2 Gutscheine für eine Pferdemedaille.")
    

            
clear_letter()
            
set_state(COMPLETE)

        
end
    
        when __TARGET__
.target.click or 
            
20346.chat."Ich habe alles." with pc.count_item("30147") >=and  pc.count_item("30148") >=1 begin
        
            target
.delete("__TARGET__")
            
say("Lehrer der Drachenmacht:")
            
say("Ja, wunderbar.")
            
say("Nun können wir versuchen")
            
say("das zu entschlüsseln.")
            
say("Danke für deine Hilfe.")
            
say("Hier ist deine Belohnung.")
            
say("")
            
say("")
            
pc.remove_item("30147",1)
            
pc.remove_item("30148",1)
            
            
say_reward("Du erhältst 17.000.000 Ehrfahrung.")
            
pc.give_exp2(17000000)

            
say_reward("Du erhältst 5 Diamanten.")
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
            
pc.give_item2(50621)
    


            
clear_letter()
            
set_state(COMPLETE)

        
end

end

    state __GIVEUP__ begin
    end

    state COMPLETE begin
        when enter begin
            q
.done()
        
end
    end


end 
hilfe xP
07/31/2011 12:24 Howaner#2916
Fehler ist behoben
07/31/2011 17:06 Kriegergeist^^#2917
Habe versucht vorerst den warp zu mein dt2 zu machen, aber da gibt es schon ein Fehler.

Die Quest:
Code:
quest deviltower_zone2 begin
    state start begin
		when login begin
			if pc.get_map_index() == 250 then
				pc.set_warp_location(250, 16783 , 17278)
			end
		end

		when 30203.chat."Die Zombiehöhle" begin
		if pc . get_level ( ) < 100 then 
			say_title("Wächter der Zombiehöhle:")
			say("")
			say("Du hast noch nicht genuegend Erfahrung gesammelt.")
			say("Komme wieder, wenn du Level 100 bist!")
			return
		else
			say_title("Wächter der Zombiehöhle:")
			say("")
			say("Die lange Zeit mit einem Fluch belegte")
			say("Höhle der Zombies, tief im Berge des Dämonenturms")
			say("wurden nun von den Stärksten Krieger der Reiche")
			say("´wieder geöffnet. Leider scheiterten sie an den")
			say("Aufhaben der Zombies. Nun liegt es in deiner Hand")
			say("junger Kämpfer, den mächtigen Zombiesensenmann")
			say("zu töten und seine Schätze an dich zu nehmen.")
			say("")
			wait()
			say_title("Wächter der Zombiehöhle:")  
			say_reward("Möchtest du die Zombiehöhle betreten?") 
			say("")
			
			local s = select ( "Betreten" , "In das Shinsoo Reich teleportieren" , "In das Chunjo Reich teleportieren" , "In das Jinno Reich teleportieren" , "Abbrechen" ) 
			if s == 1 then 
			pc.warp ( 1678300 , 1727800 ) 
		end 
			if s == 2 then 
			say("Du wirst nun in das Shinsoo Reich teleportiert!")
			local s = select ("OK")
			pc.warp ( 469300 , 964200 )
		end
			if s == 3 then 
			say("Du wirst nun in das Chunjo Reich teleportiert!")
			local s = select ("OK")
			pc.warp ( 55700 , 157900 ) 
		end 
			if s == 4 then 
			say("Du wirst nun in das Jinno Reich teleportiert!")
			local s = select ("OK")
			pc.warp ( 969600 , 278400 ) 
		end
			if s == 5 then 
			return
		end
		end
	end 
end
Das Bild:

Danke in Vorraus :handsdown:

MfG
Kriegergeist^^
07/31/2011 17:40 Howaner#2918
Quote:
Originally Posted by Kriegergeist^^ View Post
Habe versucht vorerst den warp zu mein dt2 zu machen, aber da gibt es schon ein Fehler.

Die Quest:
Code:
quest deviltower_zone2 begin
    state start begin
		when login begin
			if pc.get_map_index() == 250 then
				pc.set_warp_location(250, 16783 , 17278)
			end
		end

		when 30203.chat."Die Zombiehöhle" begin
		if pc . get_level ( ) < 100 then 
			say_title("Wächter der Zombiehöhle:")
			say("")
			say("Du hast noch nicht genuegend Erfahrung gesammelt.")
			say("Komme wieder, wenn du Level 100 bist!")
			return
		else
			say_title("Wächter der Zombiehöhle:")
			say("")
			say("Die lange Zeit mit einem Fluch belegte")
			say("Höhle der Zombies, tief im Berge des Dämonenturms")
			say("wurden nun von den Stärksten Krieger der Reiche")
			say("´wieder geöffnet. Leider scheiterten sie an den")
			say("Aufhaben der Zombies. Nun liegt es in deiner Hand")
			say("junger Kämpfer, den mächtigen Zombiesensenmann")
			say("zu töten und seine Schätze an dich zu nehmen.")
			say("")
			wait()
			say_title("Wächter der Zombiehöhle:")  
			say_reward("Möchtest du die Zombiehöhle betreten?") 
			say("")
			
			local s = select ( "Betreten" , "In das Shinsoo Reich teleportieren" , "In das Chunjo Reich teleportieren" , "In das Jinno Reich teleportieren" , "Abbrechen" ) 
			if s == 1 then 
			pc.warp ( 1678300 , 1727800 ) 
		end 
			if s == 2 then 
			say("Du wirst nun in das Shinsoo Reich teleportiert!")
			local s = select ("OK")
			pc.warp ( 469300 , 964200 )
		end
			if s == 3 then 
			say("Du wirst nun in das Chunjo Reich teleportiert!")
			local s = select ("OK")
			pc.warp ( 55700 , 157900 ) 
		end 
			if s == 4 then 
			say("Du wirst nun in das Jinno Reich teleportiert!")
			local s = select ("OK")
			pc.warp ( 969600 , 278400 ) 
		end
			if s == 5 then 
			return
		end
		end
	end 
end
Das Bild:

Danke in Vorraus :handsdown:

MfG
Kriegergeist^^
so ist es richtig
Code:
quest deviltower_zone2 begin
    state start begin
		when login begin
			if pc.get_map_index() == 250 then
				pc.set_warp_location(250, 16783 , 17278)
			end
		end

		when 30203.chat."Die Zombiehöhle" begin
			if pc.get_level() < 100 then 
				say_title("Wächter der Zombiehöhle:")
				say("")
				say("Du hast noch nicht genuegend Erfahrung gesammelt.")
				say("Komme wieder, wenn du Level 100 bist!")
				return
			else
				say_title("Wächter der Zombiehöhle:")
				say("")
				say("Die lange Zeit mit einem Fluch belegte")
				say("Höhle der Zombies, tief im Berge des Dämonenturms")
				say("wurden nun von den Stärksten Krieger der Reiche")
				say("´wieder geöffnet. Leider scheiterten sie an den")
				say("Aufhaben der Zombies. Nun liegt es in deiner Hand")
				say("junger Kämpfer, den mächtigen Zombiesensenmann")
				say("zu töten und seine Schätze an dich zu nehmen.")
				say("")
				wait()
				say_title("Wächter der Zombiehöhle:")
				say_reward("Möchtest du die Zombiehöhle betreten?")
				say("")
				local s = select("Betreten", "In das Shinsoo Reich teleportieren", "In das Chunjo Reich teleportieren", "In das Jinno Reich teleportieren", "Abbrechen")
				if s == 1 then
					pc.warp(1678300, 1727800)
				elseif s == 2 then
					say("Du wirst nun in das Shinsoo Reich teleportiert!")
					pc.warp(469300, 964200)
				elseif s == 3 then
					say("Du wirst nun in das Chunjo Reich teleportiert!")
					pc.warp(55700, 157900)
				elseif s == 4 then
					say("Du wirst nun in das Jinno Reich teleportiert!")
					pc.warp(969600, 278400)
				elseif s == 5 then
					return
				end
			end
		end
	end
end
08/01/2011 08:46 demoro123456789#2919
Hi, pls kontrolle this quest:

PHP Code:
quest zakoupenibzk begin
state start begin
when 40003.chat
."Zakoupeni BZK" begin
say
("Ahoj, ty si chces zakoupit BZK?")
say("")
local main_set select("10.000.000 BZK - 10kk Yang","20.000.000 BZK - 20kk Yang","50.000.000 BZK - 50kk Yang","100.000.000 BZK - 100kk Yang","Nemam zajem...")
if 
main_set == 1 then
if pc.money<10000000 then
say
("Bohuzel nemas 10kk Yang!")
else
pc.changemoney(-10000000)
pc.give_exp2(10000000)
notice_all(" ".. pc.get_name() .." si zakoupil 10.000.000 BZK!")
end
if main_set == 2 then
if pc.money<20000000 then
say
("Bohuzel nemas 20kk Yang!")
else
pc.changemoney(-20000000)
pc.give_exp2(20000000)
notice_all(" ".. pc.get_name() .." si zakoupil 20.000.000 BZK!")
end
if main_set == 3 then
if pc.money<50000000 then
say
("Bohuzel nemas 50kk Yang!")
else
pc.changemoney(-50000000)
pc.give_exp2(50000000)
notice_all(" ".. pc.get_name() .." si zakoupil 50.000.000 BZK!")
end
if main_set == 4 then
if pc.money<100000000 then
say
("Bohuzel nemas 100kk Yang!")
else
pc.changemoney(-100000000)
pc.give_exp2(100000000)
notice_all(" ".. pc.get_name() .." si zakoupil 100.000.000 BZK!")
end

end
end
end
end
end
end
end 
08/01/2011 09:46 .Delta#2920
PHP Code:
quest zakoupenibzk begin
    state start begin
        when 40003.chat
."Zakoupeni BZK" begin
            say
("Ahoj, ty si chces zakoupit BZK?")
            
say("")
            
local main_set select("10.000.000 BZK - 10kk Yang","20.000.000 BZK - 20kk Yang","50.000.000 BZK - 50kk Yang","100.000.000 BZK - 100kk Yang","Nemam zajem...")
            if 
main_set == 1 then
                
if pc.money<10000000 then
                    say
("Bohuzel nemas 10kk Yang!")
                else
                    
pc.changemoney(-10000000)
                    
pc.give_exp2(10000000)
                    
notice_all(pc.get_name().." si zakoupil 10.000.000 BZK!")
                
end
            
elseif main_set == 2 then
                
if pc.money<20000000 then
                    say
("Bohuzel nemas 20kk Yang!")
                else
                    
pc.changemoney(-20000000)
                    
pc.give_exp2(20000000)
                    
notice_all(pc.get_name().." si zakoupil 20.000.000 BZK!")
                
end
            
elseif main_set == 3 then
                
if pc.money<50000000 then
                    say
("Bohuzel nemas 50kk Yang!")
                else
                    
pc.changemoney(-50000000)
                    
pc.give_exp2(50000000)
                    
notice_all(pc.get_name() .." si zakoupil 50.000.000 BZK!")
                
end
            
elseif main_set == 4 then
                
if pc.money<100000000 then
                    say
("Bohuzel nemas 100kk Yang!")
                else
                    
pc.changemoney(-100000000)
                    
pc.give_exp2(100000000)
                    
notice_all(pc.get_name() .." si zakoupil 100.000.000 BZK!")
                
end
            
elseif main_set == 5 then
                
return
            
end
        end
    end
end 
08/01/2011 14:33 demoro123456789#2921
Pls kontrolle this quest:

Code:
----------------------------------
--Uživatelský prsten by Demoro
----------------------------------
quest uzivatelskyprsten begin
	state start begin
		when 9007.chat begin
		say("Ahoj!")
		say("Co potrebujes?")
	local main = select("Zakoupit BZK","Teleport do risi,"Promena")
	if main == 1 then
----------------------------------
--Zakoupeni expu
----------------------------------
            local zakoupeniexpu = select("10.000.000 BZK - 10kk Yang","20.000.000 BZK - 20kk Yang","50.000.000 BZK - 50kk Yang","100.000.000 BZK - 100kk Yang","Zpet")
            if zakoupeniexpu == 1 then
                if pc.money<10000000 then
                    say("Bohuzel nemas 10kk Yang!")
                else
                    pc.changemoney(-10000000)
                    pc.give_exp2(10000000)
                    notice_all(pc.get_name().." si zakoupil 10.000.000 BZK!")
                end
            elseif zakoupeniexpu == 2 then
                if pc.money<20000000 then
                    say("Bohuzel nemas 20kk Yang!")
                else
                    pc.changemoney(-20000000)
                    pc.give_exp2(20000000)
                    notice_all(pc.get_name().." si zakoupil 20.000.000 BZK!")
                end
            elseif zakoupeniexpu == 3 then
                if pc.money<50000000 then
                    say("Bohuzel nemas 50kk Yang!")
                else
                    pc.changemoney(-50000000)
                    pc.give_exp2(50000000)
                    notice_all(pc.get_name() .." si zakoupil 50.000.000 BZK!")
                end
            elseif zakoupeniexpu == 4 then
                if pc.money<100000000 then
                    say("Bohuzel nemas 100kk Yang!")
                else
                    pc.changemoney(-100000000)
                    pc.give_exp2(100000000)
                    notice_all(pc.get_name() .." si zakoupil 100.000.000 BZK!")
                end
            elseif zakoupeniexpu == 5 then
                return
-----------------------------
--Teleport do risi
-----------------------------
	if main == 2 then
             say_title("Teleportujici prsten")
             say("")
             say("Tento prsten te muze teleportovat ")
             say("do trech zakladnich mest.")
             say("")
             say("Kam chces tedy teleportovat? ")
             say("")
                local port=select("Yongan", "Joan", "Pyungmoo", "Zpet")
                   if port==1 then
                      pc.warp(474300,954800)
                   end
                   if port==2 then
                      pc.warp(63800,166400)
                   end
                   if port==3 then
                      pc.warp(959900,269200)
                   end
		if port ==4
return
----------------------------
--Promena
----------------------------
	if main == 3 then
                      say("Chces se v nekoho promenit?")
            say("Promena trva 10 minut!")
            say_reward("Sluzba je zdarma!")
                        local s=select("Divoky poddany" , "Pavoucek" , "Tmavy fanatik" , "Duch mistra mece" , "Zpet v sebe" , "Zpet")
                        if s==1 then
                        pc.polymorph(502, 600)
                        elseif s==2 then
                        pc.polymorph(2001, 600)
                        elseif s==3 then
                        pc.polymorph(701, 600)
            elseif s==4 then
            pc.polymorph(1068, 600)
            elseif s==5 then
            pc.polymorph(1)
            elseif s==6 then
		return
end
end
end
end
end
end
end
08/01/2011 16:27 Event150#2922
Quote:
Originally Posted by Event150 View Post
PHP Code:
quest horse_menu begin
    state start begin
        
function horse_menu()
            if 
horse.is_mine() then
                say_title
("Pferdehandbuch")
                
say("Das Handbuch für das Pferd")
                
say("")
                
local s 7
                
if horse.is_dead() then
                    s 
select"Zurückholen des Pferde""Das Pferd zurück geben""Schließen")
                    if 
== 1 then s 0
                    
elseif == 2 then s 3
                    
elseif == 3 then return
                    
end
                
else
                    
select(
                    
"Pferd füttern""Pferd reiten""Das Pferd zurückgeben""Status des Pferdes anzeigen"
                    
"Pferd einen Namen geben""Reichsteleporter""Schließen")
                
end
                
if == 0 then
                    horse
.revive()
                elseif 
== 1 then
                    local food 
horse.get_grade() + 50054 1
                    
if pc.countitem(food) > 0 then
                        pc
.removeitem(food1)
                        
horse.feed()
                    else
                        
say("Das Item "..item_name(food).." wird benötiogt.")
                        
say("")
                    
end
                
elseif == 2 then
                    horse
.ride()
                elseif 
== 3 then
                    horse
.unsummon()
                elseif 
== 4 then
                    say_title
("Pferdestatus")
                    
say("Momentane Lebenspunkte des Pferdes: "..horse.get_health_pct().."%")
                    
say("Momentane Ausdauer des Pferdes: "..horse.get_stamina_pct().."%")
                    
say("")
                elseif 
== 5 then
                    
if pc.countitem("71110") <= 0 then
                        say
("Das Item "..item_name("71110").." wird benötigt.")
                        
say("")
                        return
                    
end
                    local old_horse_name 
horse.get_name() ;
                    
say_title("Pferdename")
                    
say("Hier kannst du deinem Pferd einen neuen")
                    
say("Namen geben. Damit kannst du dein Pferd")
                    
say("über alle anderen hervorheben.")
                    
say("")
                    if 
string.len(old_horse_name) == 0 then
                        say_reward
("Das Pferd besitzt bis jetzt keinen Namen.")
                    else
                        
say_reward("Der momentane Name des Pferdes lautet "..old_horse_name..".")
                    
end
                    say
("")
                    
say("Wähle einen neuen Pferdenamen:")
                    
say("")
                    
local horse_name input()
                    if 
string.len(horse_name) < 2 then
                        say_title
("Pferdename")
                        
say("Der Name ist zu kurz.")
                        
say("")
                        return
                    elseif 
string.len(horse_name) > 12 then
                        say_title
("Pferdename")
                        
say("Der Name ist zu lang.")
                        
say("")
                        return
                    
end
                    local ret 
horse.set_name(horse_name)
                    
say_title("Pferdename")
                    if 
ret == 0 then
                        say_reward
("Du hast momentan kein Pferd!")
                        
say("")
                    elseif 
ret == 1 then
                        say_reward
("Du kannst diesen Namen nicht benutzen!")
                        
say("")
                    elseif 
ret == 2 then
                        pc
.remove_item("71110")
                        
say("Du hast deinem Pferd einen neuen Namen gegeben!")
                        
say("")
                    
end
                
else
                    
local map=pc.get_map_index()
                    
local warp=0
                    local s
=0
                    local check
=0
                    say
("Wohin möchtest du?")
                    if 
map!=and map!=21 and map!=41 then
                        check
=1
                        s
=select("Rotes Reich""Gelbs Reich""Blaus Reich""Abbrechen")
                        
warp=s
                        
if s==4 then
                            
return
                        
end
                    end
                    
if map==1 then
                        s
=select("Gelbs Reich""Blaus Reich""Abbrechen")
                        if 
s==1 then
                            warp
=2
                        
elseif s==2 then
                            warp
=3
                        end
                    
elseif map==21 then
                        s
=select("Rotes Reich""Blaues Reich""Abbrechen")
                        if 
s==1 then    
                            warp
=1
                        
elseif s==2 then
                            warp
=
                        end
                    
elseif map==41 then
                        s
=select("Rotes Reich""Gelbes Reich""Abbrechen")
                        
warp=s
                    end
                    
if s==and check==0 then
                        
return
                    
end
                    
if warp==1 then
                        pc
.warp(474200954400)
                    elseif 
warp==2 then
                        pc
.warp(63200166100)
                    elseif 
warp==3 then
                        pc
.warp(960100268700)
                    
end
                end
            end
        end
        when 20030.click begin horse_menu
.horse_menu() end
        when 20101.click begin horse_menu
.horse_menu() end
        when 20102.click begin horse_menu
.horse_menu() end
        when 20103.click begin horse_menu
.horse_menu() end
        when 20104.click begin horse_menu
.horse_menu() end
        when 20105.click begin horse_menu
.horse_menu() end
        when 20106.click begin horse_menu
.horse_menu() end
        when 20107.click begin horse_menu
.horse_menu() end
        when 20108.click begin horse_menu
.horse_menu() end
        when 20109.click begin horse_menu
.horse_menu() end
    end
end 
Wenn man auf schließen drückt kommt trotzdem reichsteleporter.
:/
Wartet noch auf eine Antwort :ooo
08/01/2011 16:34 .Delta#2923
PHP Code:
quest horse_menu begin
    state start begin
        
function horse_menu()
            if 
horse.is_mine() then
                say_title
("Pferdehandbuch")
                
say("Das Handbuch für das Pferd")
                
say("")
                
local s 7
                
if horse.is_dead() then
                    s 
select"Zurückholen des Pferde""Das Pferd zurück geben""Schließen")
                    if 
== 1 then s 0
                    
elseif == 2 then s 3
                    
elseif == 3 then return
                    
end
                
else
                    
select(
                    
"Pferd füttern""Pferd reiten""Das Pferd zurückgeben""Status des Pferdes anzeigen"
                    
"Pferd einen Namen geben""Reichsteleporter""Schließen")
                
end
                
if == 0 then
                    horse
.revive()
                elseif 
== 1 then
                    local food 
horse.get_grade() + 50054 1
                    
if pc.countitem(food) > 0 then
                        pc
.removeitem(food1)
                        
horse.feed()
                    else
                        
say("Das Item "..item_name(food).." wird benötiogt.")
                        
say("")
                    
end
                
elseif == 2 then
                    horse
.ride()
                elseif 
== 3 then
                    horse
.unsummon()
                elseif 
== 4 then
                    say_title
("Pferdestatus")
                    
say("Momentane Lebenspunkte des Pferdes: "..horse.get_health_pct().."%")
                    
say("Momentane Ausdauer des Pferdes: "..horse.get_stamina_pct().."%")
                    
say("")
                elseif 
== 5 then
                    
if pc.countitem("71110") <= 0 then
                        say
("Das Item "..item_name("71110").." wird benötigt.")
                        
say("")
                        return
                    
end
                    local old_horse_name 
horse.get_name() ;
                    
say_title("Pferdename")
                    
say("Hier kannst du deinem Pferd einen neuen")
                    
say("Namen geben. Damit kannst du dein Pferd")
                    
say("über alle anderen hervorheben.")
                    
say("")
                    if 
string.len(old_horse_name) == 0 then
                        say_reward
("Das Pferd besitzt bis jetzt keinen Namen.")
                    else
                        
say_reward("Der momentane Name des Pferdes lautet "..old_horse_name..".")
                    
end
                    say
("")
                    
say("Wähle einen neuen Pferdenamen:")
                    
say("")
                    
local horse_name input()
                    if 
string.len(horse_name) < 2 then
                        say_title
("Pferdename")
                        
say("Der Name ist zu kurz.")
                        
say("")
                        return
                    elseif 
string.len(horse_name) > 12 then
                        say_title
("Pferdename")
                        
say("Der Name ist zu lang.")
                        
say("")
                        return
                    
end
                    local ret 
horse.set_name(horse_name)
                    
say_title("Pferdename")
                    if 
ret == 0 then
                        say_reward
("Du hast momentan kein Pferd!")
                        
say("")
                    elseif 
ret == 1 then
                        say_reward
("Du kannst diesen Namen nicht benutzen!")
                        
say("")
                    elseif 
ret == 2 then
                        pc
.remove_item("71110")
                        
say("Du hast deinem Pferd einen neuen Namen gegeben!")
                        
say("")
                    
end
                
elseif == 6 then
                    local map
=pc.get_map_index()
                    
local warp=0
                    local s
=0
                    local check
=0
                    say
("Wohin möchtest du?")
                    if 
map!=and map!=21 and map!=41 then
                        check
=1
                        s
=select("Rotes Reich""Gelbs Reich""Blaus Reich""Abbrechen")
                        
warp=s
                        
if s==4 then
                            
return
                        
end
                    end
                    
if map==1 then
                        s
=select("Gelbs Reich""Blaus Reich""Abbrechen")
                        if 
s==1 then
                            warp
=2
                        
elseif s==2 then
                            warp
=3
                        end
                    
elseif map==21 then
                        s
=select("Rotes Reich""Blaues Reich""Abbrechen")
                        if 
s==1 then    
                            warp
=1
                        
elseif s==2 then
                            warp
=
                        end
                    
elseif map==41 then
                        s
=select("Rotes Reich""Gelbes Reich""Abbrechen")
                        
warp=s
                    end
                    
if s==and check==0 then
                        
return
                    
end
                    
if warp==1 then
                        pc
.warp(474200954400)
                    elseif 
warp==2 then
                        pc
.warp(63200166100)
                    elseif 
warp==3 then
                        pc
.warp(960100268700)
                    
end
                
else
                    return
                
end
            end
        end
        when 20030.click begin horse_menu
.horse_menu() end
        when 20101.click begin horse_menu
.horse_menu() end
        when 20102.click begin horse_menu
.horse_menu() end
        when 20103.click begin horse_menu
.horse_menu() end
        when 20104.click begin horse_menu
.horse_menu() end
        when 20105.click begin horse_menu
.horse_menu() end
        when 20106.click begin horse_menu
.horse_menu() end
        when 20107.click begin horse_menu
.horse_menu() end
        when 20108.click begin horse_menu
.horse_menu() end
        when 20109.click begin horse_menu
.horse_menu() end
    end
end 
€:
PHP Code:
----------------------------------
--
U&#382;ivatelský prsten by Demoro
----------------------------------
quest uzivatelskyprsten begin
    state start begin
        when 9007.chat begin
            say
("Ahoj!")
            
say("Co potrebujes?")
            
local main select("Zakoupit BZK","Teleport do risi","Promena")
            if 
main == 1 then
----------------------------------
--
Zakoupeni expu
----------------------------------
                
local zakoupeniexpu select("10.000.000 BZK - 10kk Yang","20.000.000 BZK - 20kk Yang","50.000.000 BZK - 50kk Yang","100.000.000 BZK - 100kk Yang","Zpet")
                if 
zakoupeniexpu == 1 then
                    
if pc.money<10000000 then
                        say
("Bohuzel nemas 10kk Yang!")
                    else
                        
pc.changemoney(-10000000)
                        
pc.give_exp2(10000000)
                        
notice_all(pc.get_name().." si zakoupil 10.000.000 BZK!")
                    
end
                
elseif zakoupeniexpu == 2 then
                    
if pc.money<20000000 then
                        say
("Bohuzel nemas 20kk Yang!")
                    else
                        
pc.changemoney(-20000000)
                        
pc.give_exp2(20000000)
                        
notice_all(pc.get_name().." si zakoupil 20.000.000 BZK!")
                    
end
                
elseif zakoupeniexpu == 3 then
                    
if pc.money<50000000 then
                        say
("Bohuzel nemas 50kk Yang!")
                    else
                        
pc.changemoney(-50000000)
                        
pc.give_exp2(50000000)
                        
notice_all(pc.get_name() .." si zakoupil 50.000.000 BZK!")
                    
end
                
elseif zakoupeniexpu == 4 then
                    
if pc.money<100000000 then
                        say
("Bohuzel nemas 100kk Yang!")
                    else
                        
pc.changemoney(-100000000)
                        
pc.give_exp2(100000000)
                        
notice_all(pc.get_name() .." si zakoupil 100.000.000 BZK!")
                    
end
                
elseif zakoupeniexpu == 5 then
                    
return
                
end
-----------------------------
--
Teleport do risi
-----------------------------
            elseif 
main == 2 then
                say_title
("Teleportujici prsten")
                
say("")
                
say("Tento prsten te muze teleportovat ")
                
say("do trech zakladnich mest.")
                
say("")
                
say("Kam chces tedy teleportovat? ")
                
say("")
                
local port=select("Yongan""Joan""Pyungmoo""Zpet")
                if 
port==1 then
                    pc
.warp(474300,954800)
                elseif 
port==2 then
                    pc
.warp(63800,166400)
                elseif 
port==3 then
                    pc
.warp(959900,269200)
                elseif 
port ==4
                    
return
                
end
----------------------------
--
Promena
----------------------------
            elseif 
main == 3 then
                say
("Chces se v nekoho promenit?")
                
say("Promena trva 10 minut!")
                
say_reward("Sluzba je zdarma!")
                
local s=select("Divoky poddany" "Pavoucek" "Tmavy fanatik" "Duch mistra mece" "Zpet v sebe" "Zpet")
                if 
s==1 then
                    pc
.polymorph(502600)
                elseif 
s==2 then
                    pc
.polymorph(2001600)
                elseif 
s==3 then
                    pc
.polymorph(701600)
                elseif 
s==4 then
                    pc
.polymorph(1068600)
                elseif 
s==5 then
                    pc
.polymorph(1)
                elseif 
s==6 then
                    
return
                
end
            end
        end
    end
end 
08/01/2011 16:55 [SoLow]#2924
Ok, ich habe mich auch mal an etwas versucht aber muss zugeben, das ich fast 0 ahnung von dem ganzen habe, aufjeden fall funktioniert die nicht -> Wieso? :D

PHP Code:
quest gmchat begin
    state start begin
        when 30103.
use begin
    say_title
("GM Chat:")    
    
say_reward("Gebe eine Nachricht ein.")
    
    
local y input()
    
say("Möchtest du die Nachricht senden?")
    
local s select("Ja""Nein")
    if 
== 1 then
    notice_all
(""..pc.get_name()..":")
    
notice_all (y)
    
say("Nachricht gesendet.")
    if 
== 2 then
    say
("Nachricht wurde nicht gesendet.")
    return
    
pc.removeitem (301031)
    
end
        end
    end
end 
08/01/2011 17:05 .Delta#2925
Generell ok, nur hast du deine IF Bedingungen falsch eingefügt.
Vergleichs einfach mit meiner Version ;)
PHP Code:
quest gmchat begin
    state start begin
        when 30103.
use begin
            say_title
("GM Chat:")    
            
say_reward("Gebe eine Nachricht ein.")   
            
local y input()
            
say("Möchtest du die Nachricht senden?")
            
local s select("Ja""Nein")
            if 
== 1 then
                notice_all
(""..pc.get_name()..":")
                
notice_all (y)
                
say("Nachricht gesendet.")
            elseif 
== 2 then
                say
("Nachricht wurde nicht gesendet.")
                return
            
end
            pc
.removeitem (301031)
        
end
    end
end