[SERVICE] Die Questkontrolle

03/25/2012 10:26 Azemi6#5221
Quote:
Originally Posted by collado View Post
[Only registered and activated users can see links. Click Here To Register...]

in this post, the function:

PHP Code:
pc.learn_master_skill 
not exists, but exists this:
PHP Code:
pc.learn_grand_master_skill 
its something xD
Nevertheless I want still which one with a Item similarly as seeli talents to skillen can
03/25/2012 10:49 [SA]Con#5222
03/25/2012 12:46 Kriegergeist^^#5223
#[SA]Con
Wird irgentwas angezeigt wen du make ausführst?
Oder passiert was ingame nicht?

MfG
Kriegergeist^^
03/25/2012 13:09 Sp0ngeb0b ist cool#5224
Quote:
Originally Posted by Kriegergeist^^ View Post
#[SA]Con
Wird irgentwas angezeigt wen du make ausführst?
Oder passiert was ingame nicht?

MfG
Kriegergeist^^
würde mal auf die erste frage 'ja' & bei der zweiten 'nein, es passiert ncihts' antworten

...guck mal in die 3. zeile bei pc.get_level'()'
...dann ob auf die ends & ob bevor eine 2. when-clause beginnt die andere beendet wurde
03/25/2012 14:42 [SA]Con#5225
Beim ausführen von make.sh kommt das:

03/25/2012 15:43 Azemi6#5226
Hab 2 quest zum einen die


1. Beim anklicken des items kommt nur BS2-Userpanel und zum OK drücken mehr nicht.


zum anderen die

2. kommt nur Meister wenn ich das item anklicke
03/25/2012 18:54 .Shiraka™#5227
@[SA]Con:


nach den end's und den rechtschreibfehlern hab ich jetzt mal nicht geguckt ;)

@Azemi6:


ebenfalls die end's nicht kontrolliert.
Tipp am rande: strukturiere die quest mehr, dann sieht man meist viel mehr fehler als wenn du das nicht machst ;)

2. quest ist mir zu verstrickt um da durch zu gucken xD

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ich habe ebenfalls ein problem:


bitte einmal drüber schauen und evtl die fehler korrigieren.
VBox fehler kann ich grade nicht nachschauen, sorry ! werde den später noch hinzufügen
03/25/2012 19:16 Sp0ngeb0b ist cool#5228
Quote:
Originally Posted by Sp0ngeb0b ist cool View Post
würde mal auf die erste frage 'ja' & bei der zweiten 'nein, es passiert ncihts' antworten

...guck mal in die 3. zeile bei pc.get_level'()'
...dann ob auf die ends & ob bevor eine 2. when-clause beginnt die andere beendet wurde
hätte jemand von euch das gelesen.. :facepalm:

PHP Code:
quest lv25 begin
    state start begin
        when 20349.chat
."Dein Kampfgaul" with pc.get_level() >= 25 begin
            say_title
("Stallbursche:")
            
say("")
            
say("Oh, Hallo!")
            
say("Du bist nun bereit für deinen")
            
say("nächsten Auftrag.")
            
local s=select("Weiter""Abbrechen")
            if 
s==2 then
                
return
            
end
            say_titel
("Dein nächster Auftrag:")
            
say("")
            
say("Der Dunkle Magier sorgt wieder für")
            
say("unruhen in den Stäten.")
            
say("Wir müssen dafür sorgen, das er")
            
say("wieder in seinen Seelischen Schlaf")
            
say("fällt.")
            
say("Wenn du los gehen würdest, und ihn")
            
say("zurück in seinen Seelischen Schlaf")
            
say("bringen würdest, würde ich dir")
            
say("einen Kampfgaul schenken!")
            
local a=select("Los Geht's!""Abbrechen")
            if 
a==2 then
                
return
            
end
            say_title
("Stallbursche:")
            
say("")
            
say("Super!")
            
say("Das Volk wird sich Freuen.")
            
say("")
            
pc.warp(1409210089)
        
end    
        when 101.kill with pc
.get_level() >= 25 then
            say_title
("Stallbursche:")
            
say("")
            
say("Super!")
            
say("Du hast es geschaft.")
            
say("Nun herscht wieder ruhe in den")
            
say("Stäten.")
            
say("Als Belohnung gebe ich dir einen")
            
say("Kampfgaul.")
            
local b=select("Danke""Abbrechen")
            if 
b==2 then
                
return
            
end
            say_title
("Stallbursche:")
            
say("")
            
say("Du hast einen Kampfgaul erhalten.")
            
horse.set_level("11")
        
end
    end
end 
PHP Code:
quest neue_ruessi begin 
    state start begin 
        when login 
or levelup with pc.get_level() == 90 begin 
            say_title
("Neue Ruestungen"
            
say("Du möchtest also eine neue Ruestung haben.."
            
say("Ich kann dir eine besorgen, aber"
            
say("Du wirst viel fuer mich tun muessen."
            
say(""
            
say("Als erstes toete 5 Metin Jeon-Un"
            
pc.setqf("metin"5
        
end 
        when 8027.kill with pc
.get_level() >= 90 begin
            pc
.setqf("metin"pc.getqf("metin") - 1
            if 
pc.getqf("metin") == 0 then 
                say_title
("Gut!"
                
say("Jetzt musst du laufen..."
                
say("Gehe ins Experten AD und toete"
                
say("den Affen-Lord 5 mal!"
                
pc.setqf("Affen-Lord"5
            
end 
        end 
        when 5163.kill with pc
.get_level() >= 90 begin 
            pc
.setqf("Affen-Lord"pc.getqf("Affen-Lord") - 1
            if 
pc.getqf("Affen-Lord") == 0 then 
                say_title
("Super Arbeit!"
                
say("Du denkst, du hast es nun geschafft,"
                
say("nicht wahr?"
                
say("..."
                
say("Da muss ich dich leider enttaeuschen!"
                
say("Bringe mir noch eine"
                
say("Goldene Siegerurkunde!"
            
end 
            
if pc.count_item(50040) >= 1 then 
                say_title
("Wow!"
                
say("Du hast echt Talent."
                
say("Nun muss ich dir wohl deine Belohnung geben.."
                
say("Aber vergiss nicht, diese Rüstung ist sehr"
                
say("wertvoll, also verschwende sie nicht!"
                
pc.give_item2(112991
                
pc.change_money(20000000)
                
notice_all(""..pc.get_name().." hat die neue Ruestung erhalten!")
            
end 
        end 
    end 
end 
woher habt ihr die ganzen nicht vorhandenen funktionen? :facepalm:

-pc.get_level -->pc.get_level()
-pc.getf() --> pc.getqf() (qetf für dungeons; selbe gilt für pc.setqf)
-level_up --> levelup
-pc.give_item --> pc.give_item2
etc.
03/25/2012 19:30 fumadu#5229
HILFE




quest GMCHAT begin
state start begin
when /n pc.is_gm() begin
notice_all("".. pc.get_name() .." bla bla bla blaa")



Ich möchte das wenn ich was schreiben will mit /n das mein name davor ist zb

/n ich bin dumm // serverchat : [SA]Joshi: ich bin dumm
03/25/2012 20:07 Azemi6#5230
kann sie nicht einmal mehr hochladen=l Hab sie nochmal strukturierter rein gemacht und die 2te auch =l


PHP Code:
quest Userpanel begin
    state start begin
    when 60002.
use begin
        say_title
("BS2-Userpanel")
        
        
when info or button with pc.is_gm() begin
            say
("Willkommen im Ingame Userpanel")
            
local x select("Lager Öffnen""Reichsporter""Teaminformation""Schließen" )
            if 
== 1 then
                game
.open_safebox()
                
setskin(NOWINDOW)
            elseif 
== 2 then
                say 
"Reichsteleporter" )
                
local s select "In das Shinsoo Reich teleportieren" "In das Chunjo Reich teleportieren" "In das Jinno Reich teleportieren" "Abbrechen" 
                if 
== 1 then
                    say 
"Du wirst nun in das Shinsoo Reich teleportiert!" )
                    
wait()
                    
pc.warp 469300 964200 )
                elseif 
== 2 then
                    say 
"Du wirst nun in das Chunjo Reich teleportiert!" )
                    
wait()
                    
pc.warp 55700 157900 
                elseif 
== 3 then
                    say 
"Du wirst nun in das Jinno Reich teleportiert!" )
                    
wait()
                    
pc.warp 969600 278400 
                elseif 
== 4 then
                    
return
                
end
            
elseif == 3 then 
                say
"Teaminformationen" )
                
local a select "Game Team""Board Team""Schließen" )
                if 
== 1 then
                    say 
"Hier findet ihr die Liste aller Teamler (Ingame)" )
                    
say "" )
                    
say "Server Admins:" )
                    
say "[SA]Kedoja" )
                    
say "[SA]KroNe" )
                    
say "" )
                    
say "Servertechniker:" )
                    
say "[ST]*Kein*'" )
                    
say "" )
                    
say "Super Gamemaster:" )
                    
say "[SGM]*Kein*" )
                    
say "" )
                    
say "Gamemaster:" )
                    
say "[GM]*Kein*" )
                    
say "" )
                    
say "Test Gamemaster:" )
                    
say "[TGM]*Kein*" )
                elseif 
== 2 then
                    say 
"Hier findet ihr die Liste aller Teamler (Forum)" )
                    
say "" )
                    
say "Board Admin:" )
                    
say "[BA]*Kein*" )
                    
say "" )
                    
say "Super Moderator:" )
                    
say "[SMOD]*Kein*" )
                    
say "" )
                    
say "Moderator:" )
                    
say "[MOD]*Kein*" )
                elseif 
== 3 then
                    
return
                
end
            
elseif == 4 then
                
return
            
end
        end
    end
end 


PHP Code:
quest training_master_skill begin
    state start begin
    when 71123.
use begin
        say_title
("Meister")
        
local seelicount pc.count_item(71123)
        if 
pc.get_skill_group() == 0 then
        say
("Du hast keine Fertigkeiten "..pc.get_skill_group())
        return

        if 
get_time() < pc.getqf("next_time"then -- and not is_test_server() then
        
if pc.is_skill_book_no_delay() then
            say
("Du hast eine Exo-Rolle Gelesen!")
            
say("Nun kannst du einen weiteren")
            
say("Blauen-Seelenstein lesen!")
                  
say("")
            
wait()
            
say_title("Meister")
        else
            
say("Du hast heute Bereits einen Blauen-Seelenstein gelesen!")
            return
        
end
        end

        local result 
training_master_skill.BuildMasterSkillList(pc.get_job(), pc.get_skill_group())

        
local vnum_list result[1]
        
local name_list result[2]

        if 
table.getn(vnum_list) == 0 then
        say
("Du hast keine Fertigkeiten")
        return
        
end

        say
("Fertigkeit Auswählen")
        
say("")

        
local menu_list = {}
        
table.foreach(name_list, function(inametable.insert(menu_listnameend)
        
table.insert(menu_list"Abbrechen"
        
local s=select_table(menu_list)
        if 
table.getn(menu_list) == s then
        
return
        
end

        local skill_name
=name_list[s]
        
local skill_vnum=vnum_list[s]
        
local skill_level pc.get_skill_level(skill_vnum)
        
local cur_alignment pc.get_real_alignment()
        
local need_alignment 1000+500*(skill_level-20)

        
test_chat("Momentaner Rang: "..cur_alignment)
        
test_chat("Benötigter Rang: "..need_alignment)

        
local title=string.format("%s auf Meister  %d lesen"skill_nameskill_level-20+1)
        if 
pc.count_item(50513) != seelicount then
        say
("Stfu Buguser!")
        return
        
end
        item
.remove()
        
say_title(title)
        
say("Das lesen eines Blauen-Seelensteines")
        
say("kostet Rangpunke.")
        
say("")

        if 
cur_alignment<-19000+need_alignment then
        say_reward
("Du hast zu wenig Rang!")
        return
        
end

        
if cur_alignment<0 then
        say_reward
(string.format("Benötigter Rang: %d -> %d"need_alignmentneed_alignment*2))
        
say_reward("Beim klappen des Blauen-Seelensteins wird dir")
              
say_reward("das doppelte an Rangpunkten abgezoegn!")

        
need_alignment=need_alignment*2
        
elseif cur_alignment<need_alignment then
        say_reward
(string.format("Benötigter Rang: %d"need_alignment))
        
say_reward("Beim klappen des Blauen-Seelensteins wird dir")
              
say_reward("das doppelte an Rangpunkten abgezoegn!")
        else
        
say_reward(string.format("Benötigter Rang: %d"need_alignment))
        
end
        say
("")

        
local s=select("Lesen""Abbrechen")    
        if 
s==2 then
        
return
        
end


        
if cur_alignment>=and cur_alignment<need_alignment then
        say_title
(string.format("%s -Bestätigen"title))
        
say("Das Lesen eines Blauen-Seelensteines kostet Rang,")
        
say("wenn du diesen Blauen-Seelenstein ließt,")
        
say("kommst du in -Rang")
        
say("Bitte Bestätige das du diesen Blauen-Seelenstein")
        
say("wirklich lesen möchtest!")
        
say("")
        
say_reward("Bestätigen")
        
say("")
        
say("Bitte gebe 'Trainieren' ein!")
        
local s=input()
        if 
s!="Trainieren" then
            
return
        
end
        end

        
if get_time() < pc.getqf("next_time"then -- and not is_test_server() then
        
if pc.is_skill_book_no_delay() then
            pc
.remove_skill_book_no_delay()
        else
            
say("Seelitest1")
            return
        
end
        end

        pc
.setqf("next_time"get_time()+time_hour_to_sec(number(812)))

        if 
need_alignment>0 then
        
if pc.learn_master_skill(skill_vnumthen
            pc
.change_alignment(-need_alignment)


            
say_title(string.format("%s -Erfolgreich"title))
            if 
40 == pc.get_skill_level(skill_vnumthen
            say
(string.format("%s Seelitest2."skill_name))
            else
            
say(string.format("Dein Blauer-Seelenstein war Erfolgreich!"skill_nameskill_level-20+1+1))
            
end
            say
("")
            
say_reward("Erfolgreich!")
            
say_reward(string.format("Kosten an Rang: %d "need_alignment))
            
say("")
        else
            
say_title(string.format("%s -Fehlgeschlagen"title))
            
say("Dein Blauer-Seelenstein hat nicht geklappt.")
            
say("")
            
say_reward("Fehlgeschlagen!")
            
say("")
            
pc.change_alignment(-number(need_alignment/3need_alignment/2))
        
end
        end
    end
    
function BuildMasterSkillList(jobgroup)
        
MASTER_SKILL_LEVEL 20
        GRAND_MASTER_SKILL_LEVEL 
30

        local skill_list 
special.active_skill_list[job+1][group]
        
local ret_vnum_list = {}
        
local ret_name_list = {}

        -- 
test_chat(string.format("job=%d, group=%d"jobgroup))

        
table.foreach(skill_list
        function(
iskill_vnum
        
local skill_level pc.get_skill_level(skill_vnum)

        -- 
test_chat(string.format("[%d]=%d"skill_vnumskill_level))
        if 
skill_level >= MASTER_SKILL_LEVEL and skill_level GRAND_MASTER_SKILL_LEVEL then

            table
.insert(ret_vnum_listskill_vnum)
            
local name=locale.GM_SKILL_NAME_DICT[skill_vnum]
            if 
name == nil then name=skill_vnum end
            table
.insert(ret_name_listname)
        
end
        end
)
        return {
ret_vnum_listret_name_list}


        --return {
ret_vnum_listret_name_list}
    
end
    end
end 
03/27/2012 09:31 NiiceOne#5231
Kein fehler beim compilen.. sondern wenn ich alles gekillt habe.. kann ich die quest nicht abgeben.. sprich bekomme dann auch das pferd net..

Code:
quest army_horse_quest begin
	state start begin
		when login or levelup with pc.get_level() > 79 and horse.get_grade()==2 begin
			set_state(information)
		end
	end
	
	state information begin
		when letter begin
			target.vid("__TARGET__X", find_npc_by_vnum(9003), "Militär-Pferd")
			send_letter("Das Militär-Pferd")
		end
		
		when button or info begin
			say_title("Die Prüfung für das Militär-Pferd:")
			say("")
			say("Du bist nun endlich soweit, du bist")
			say("erfahren genug, um das fortgeschrittene Kämpfen")
			say("vom Pferd zu erlernen.")
			say_reward("Begebe dich zur Gemi, sie wird")
			say_reward("dir deine Prüfungsaufgaben nennen")
			say_reward("und aufpassen, dass du nicht betrügst.")
		end
		
		when __TARGET__X.target.click or 9003.chat."Militär Pferd" begin
			target.delete("__TARGET__X")
			say_title("Gemischtwarenhändlerin:")
			say("")
			say("Sei gegrüßt Abenteurer,")
			say("du hast meinen Brief also erhalten.")
			say("Ich werde dir heute die Aufgaben für die")
			say("Prüfung für das forgeschrittene Kämpfen vom Pferderücken nennen")
			say("Bitte erledige diese Aufgaben sorgfältig")
			say("und mit Bedacht")
			wait()
			say_title("Prüfungsbogen:")
			say("")
			say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
			say("250 Roter Geisterbaumstumpf töten")
			pc.setqf("mgq_red_stomp", 0) --- Speicher für Schwarze Orks!
			say("200 Wildhunde töten")
			pc.setqf("mgq_wild_dog", 0) --- Speicher für Oberorks!
			say("200 Verfl. Zombiekönig töten")
			pc.setqf("mgq_zombie_king", 0) -- Speicher für Skorpionbogenschützen!
			say("20 Metin Jeon-Un")
			pc.setqf("mgq_jeon_metin", 0) -- Speicher für Metin des Schatten"
			say("")
			say("Zusätzlich wird benötigt:")
			say("50.000.000 Yang Prüfungsgebühren!")
			say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
			set_state(main)
		end
	end
	
	state main begin
		when letter begin
			send_letter("Die Militär-Pferd Prüfung")
		end
		
		when button or info begin
			say_title("Prüfungsbogen")
			say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
			say_reward("Hier eine liste der Aufgaben die du meistern musst:")
			say_reward(pc.getqf("mgq_red_stomp").." von 250 Roter Geisterbaumstumpf getötet.")
			say_reward(pc.getqf("mgq_wild_dog").." von 200 Wildhunde getötet")
			say_reward(pc.getqf("mgq_zombie_king").." von 200 Verfl. Zombiekönig getötet")
			say_reward(pc.getqf("mgq_jeon_metin").." von 20 Metin Jeon-Un getötet")
			say_reward("Bedenke, dass du zusätzlich noch")
			say_reward("50.000.000 Yang Prüfungsgebühren benötigst")
			say("(Du kannst diese Prüfung auch in einer Gruppe meistern)")
			say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
		end
		
		when 2312.party_kill begin
			pc.setqf("mgq_red_stomp", pc.getqf("mgq_red_stomp")+1)
			if pc.getqf("mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
					say_title("Die Militär-Pferde Prüfung")
				say("")
				say("Du hast alle Prüfungsaufgaben gemeistert.")
				say("Begebe dich zurück zur Gemi")
				target.vid("__TARGET__X", find_npc_by_vnum(9003), "Militär-Pferd")
				set_state(abgabe)
			end
		end
		
		when 101.party_kill begin
			pc.setqf("mgq_wild_dog", pc.getqf("mgq_wild_dog")+1)
			if pc.getqf("mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
					say_title("Die Militär-Pferde Prüfung")
				say("")
				say("Du hast alle Prüfungsaufgaben gemeistert.")
				say("Begebe dich zurück zur Gemi")
				target.vid("__TARGET__X", find_npc_by_vnum(9003), "Militär-Pferd")
				set_state(abgabe)
			end
		end
		
		when 7524.party_kill begin
			pc.setqf("mgq_zombie_king", pc.getqf("mgq_zombie_king")+1)
			if pc.getqf("mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
				say_title("Die Militär-Pferde Prüfung")
				say("")
				say("Du hast alle Prüfungsaufgaben gemeistert.")
				say("Begebe dich zurück zur Gemi")
				target.vid("__TARGET__X", find_npc_by_vnum(9003), "Militär-Pferd")
				set_state(abgabe)
			end
		end
		
		when 8027.party_kill begin
			pc.setqf("mgq_jeon_metin", pc.getqf("mgq_jeon_metin")+1)
			if pc.getqf("mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
				say_title("Die Militär-Pferde Prüfung")
				say("")
				say("Du hast alle Prüfungsaufgaben gemeistert.")
				say("Begebe dich zurück zur Gemi")
				target.vid("__TARGET__X", find_npc_by_vnum(9003), "Militär-Pferd")
				set_state(abgabe)
			end
		end
	end
	state abgabe begin
		when __TARGET__X.target.click or 9003.chat."Militär-Pferd" begin
			target.delete("__TARGET__X")
			say_title("Gemischtwarenhändlern:")
			say("")
			say("Du hast also alle Aufgaben auf der")
			say("Liste erledigt?")
			wait()
			say("Nun gut. Gebe mir 50.000.000 Yang")
			say("Prüfungsgebühren und du")
			say("erhälst dein Kampfpferd.")
			if pc.gold < 50000000 then
				say("Du hast keine 50.000.000 Yang.")
			else
				pc.change_money(-50000000)
				horse.set_level(21)
				pc.give_item2(50053, 1)
			end
			set_state(__complete)
		end
	end
	
	state __complete begin
	end
end
03/27/2012 14:36 fumadu#5232
!!!!!!!!Suche ne quest !!!!!!


Also das wenn man 100 orks tötet das item 909 bekommt und wenn man schamie ist
das item 299 bitte helft mir :((
03/27/2012 19:21 [SA]KiLLeD#5233
Quote:
Originally Posted by fumadu View Post
!!!!!!!!Suche ne quest !!!!!!


Also das wenn man 100 orks tötet das item 909 bekommt und wenn man schamie ist
das item 299 bitte helft mir :((
jop hier
Code:
quest opfer begin
Hier kommen kaputte quests rein
end
03/27/2012 23:39 Xivia#5234
Nunja, auch deine Quest stimmt nicht ;) (Say, Print, Chat, etc fehlt..)

@Fumandu
PHP Code:
quest blibli begin
    state start begin
        when letter 
or levelup with pc.get_level() >= 25 begin
            send_letter
("Töte 100 Orks")
        
end
        when button 
or info begin
            say
("Willkommen, "..pc.get_name()..'.')
            
say("Töte 100 Orks und du erhälst ein tolles Item!")
            
say_reward("Du musst noch "..(100-pc.getqf('killed')).." Orks töten.")
        
end
        
-- Alle Orks
        when kill with npc
.get_race() >= 601 and npc.get_race() <= 657 begin
            pc
.setqf("killed",pc.getqf('killed')+1)
            if 
pc.getqf('killed') == 100 then
                say
("Du hast die Quest erfolgreich abgeschlossen!")
                if 
pc.get_job() == 3 then
                    pc
.give_item2(299,1)
                else
                    
pc.give_item2(909,1)
                
end
                set_state
("ende")
            
end
        end
    end
    state ende begin
        when enter begin
            pc
.delqf("killed")
        
end
    end
end 
Habe sie jetzt nicht getestet, aber sollte so klappen ^.^

@ NiiceOne:
Gug mal zeile 134 :)
Auch wenn du es nicht abgeben kannst, wird die Quest komplett beendet o:
Versuchs mal mit einem anderem char (und füge unter Zeile 134 ein return ein).

Versuch die (glaub nicht dass es etwas gebracht hat :D)
PHP Code:
quest army_horse_quest begin
    state start begin
        when login 
or levelup with pc.get_level() > 79 and horse.get_grade()==2 begin
            set_state
(information)
        
end
    end
    
    state information begin
        when letter begin
            target
.vid("__TARGET__X"find_npc_by_vnum(9003), "Militär-Pferd")
            
send_letter("Das Militär-Pferd")
        
end
        
        when button 
or info begin
            say_title
("Die Prüfung für das Militär-Pferd:")
            
say("")
            
say("Du bist nun endlich soweit, du bist")
            
say("erfahren genug, um das fortgeschrittene Kämpfen")
            
say("vom Pferd zu erlernen.")
            
say_reward("Begebe dich zur Gemi, sie wird")
            
say_reward("dir deine Prüfungsaufgaben nennen")
            
say_reward("und aufpassen, dass du nicht betrügst.")
        
end
        
        when __TARGET__X
.target.click or 9003.chat."Militär Pferd" begin
            target
.delete("__TARGET__X")
            
say_title("Gemischtwarenhändlerin:")
            
say("")
            
say("Sei gegrüßt Abenteurer,")
            
say("du hast meinen Brief also erhalten.")
            
say("Ich werde dir heute die Aufgaben für die")
            
say("Prüfung für das forgeschrittene Kämpfen vom Pferderücken nennen")
            
say("Bitte erledige diese Aufgaben sorgfältig")
            
say("und mit Bedacht")
            
wait()
            
say_title("Prüfungsbogen:")
            
say("")
            
say("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            
say("250 Roter Geisterbaumstumpf töten")
            
pc.setqf("mgq_red_stomp"0) --- Speicher für Schwarze Orks!
            
say("200 Wildhunde töten")
            
pc.setqf("mgq_wild_dog"0) --- Speicher für Oberorks!
            
say("200 Verfl. Zombiekönig töten")
            
pc.setqf("mgq_zombie_king"0) -- Speicher für Skorpionbogenschützen!
            
say("20 Metin Jeon-Un")
            
pc.setqf("mgq_jeon_metin"0) -- Speicher für Metin des Schatten"
            say("")
            say("
Zusätzlich wird benötigt:")
            say("
50.000.000 Yang Prüfungsgebühren!")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            set_state(main)
        end
    end
    
    state main begin
        when letter begin
            send_letter("
Die Militär-Pferd Prüfung")
        end
        
        when button or info begin
            say_title("
Prüfungsbogen")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
            say_reward("
Hier eine liste der Aufgaben die du meistern musst:")
            say_reward(pc.getqf("
mgq_red_stomp").." von 250 Roter Geisterbaumstumpf getötet.")
            say_reward(pc.getqf("
mgq_wild_dog").." von 200 Wildhunde getötet")
            say_reward(pc.getqf("
mgq_zombie_king").." von 200 VerflZombiekönig getötet")
            say_reward(pc.getqf("
mgq_jeon_metin").." von 20 Metin Jeon-Un getötet")
            say_reward("
Bedenkedass du zusätzlich noch")
            say_reward("
50.000.000 Yang Prüfungsgebühren benötigst")
            say("
(Du kannst diese Prüfung auch in einer Gruppe meistern)")
            say("
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
        end
        
        when 2312.party_kill begin
            pc.setqf("
mgq_red_stomp", pc.getqf("mgq_red_stomp")+1)
            if pc.getqf("
mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
                    say_title("
Die Militär-Pferde Prüfung")
                say("")
                say("
Du hast alle Prüfungsaufgaben gemeistert.")
                say("
Begebe dich zurück zur Gemi")
                set_state(abgabe)
            end
        end
        
        when 101.party_kill begin
            pc.setqf("
mgq_wild_dog", pc.getqf("mgq_wild_dog")+1)
            if pc.getqf("
mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
                    say_title("
Die Militär-Pferde Prüfung")
                say("")
                say("
Du hast alle Prüfungsaufgaben gemeistert.")
                say("
Begebe dich zurück zur Gemi")
                set_state(abgabe)
            end
        end
        
        when 7524.party_kill begin
            pc.setqf("
mgq_zombie_king", pc.getqf("mgq_zombie_king")+1)
            if pc.getqf("
mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
                say_title("
Die Militär-Pferde Prüfung")
                say("")
                say("
Du hast alle Prüfungsaufgaben gemeistert.")
                say("
Begebe dich zurück zur Gemi")
                set_state(abgabe)
            end
        end
        
        when 8027.party_kill begin
            pc.setqf("
mgq_jeon_metin", pc.getqf("mgq_jeon_metin")+1)
            if pc.getqf("
mgq_red_stomp") >= 250 and pc.getqf("mgq_wild_dog") >= 200 and pc.getqf("mgq_zombie_king") >= 200 and pc.getqf("mgq_jeon_metin") >= 20 then
                say_title("
Die Militär-Pferde Prüfung")
                say("")
                say("
Du hast alle Prüfungsaufgaben gemeistert.")
                say("
Begebe dich zurück zur Gemi")
                set_state(abgabe)
            end
        end
    end
    state abgabe begin
        when enter begin
            target.vid("
__TARGET__X", find_npc_by_vnum(9003), "Militär-Pferd")
        end
        when __TARGET__X.target.click or 9003.chat."
Militär-Pferd" begin
            target.delete("
__TARGET__X")
            say_title("
Gemischtwarenhändlern:")
            say("")
            say("
Du hast also alle Aufgaben auf der")
            say("
Liste erledigt?")
            wait()
            say("
Nun gutGebe mir 50.000.000 Yang")
            say("
Prüfungsgebühren und du")
            say("
erhälst dein Kampfpferd.")
            if pc.get_gold() < 50000000 then
                say("
Du hast keine 50.000.000 Yang.")
                return
            else
                pc.change_money(-50000000)
                horse.set_level(21)
                pc.give_item2(50053, 1)
            end
            set_state(__complete)
        end
    end
    
    state __complete begin
    end
end 
Grüße, Mira
03/28/2012 08:26 Ocelot2606#5235
Hey hab versucht meine Warpquest aus den Fly SF zu umschreiben leider bekomme ich bei make folgeden Fehler

qc in malloc(): error: allocation failed
Error occured on compile warpquest7.quest

qc hat 777 Rechte etc bei alten quest die funktionieren gehts ja auch^^

PHP Code:
quest warp begin
    state start begin
        when letter with pc
.get_level()>=60 begin
            send_letter
("Teleportieren Neu")
        
end
        when button 
or info begin
            say_title
("Teleportieren")
            if 
pc.is_mount() then                
                say
("Geht net wegen Gaul!")
                
wait()
                
send_letter("Teleportieren Neu")                
                return                
            
end
            say
("Wohin willst du dich Teleportieren?")            
            
local s select("Level 1 - 80 Maps""Level 80 - 125 Maps""Metin Maps""Andere""Abbrechen")
            if 
s==5 then
                send_letter
("Teleportieren Neu")
                return
            
end
            
if s==1 then
            local t 
select("Map 1""Map 2""SD2""Roter Wald""Abbrechen")
            if 
t==1 then            
                local empire 
pc.get_empire()
                if 
empire == 1 then 
                    pc
.warp (469300 964200)
                elseif 
empire == 2 then 
                    pc
.warp (55700157900)
                elseif 
empire == 3 then 
                    pc
.warp (969600278400)
                
end 
            end
            
if t==2 then
                local empire 
pc.get_empire()
                if 
empire == 1 then 
                    pc
.warp (353100882900)
                elseif 
empire == 2 then 
                    pc
.warp (145500240000)
                elseif 
empire == 3 then 
                    pc
.warp (863900246000
                
end             
            end
            
if t==3 then
                pc
.warp(703966463164)
            
end
            
if t==4 then
                pc
.warp(10496000)
            
end
            
if t==5 then                
                send_letter
("Teleportieren Neu")                
                return
            
end
            
if s==2 then
            local m 
select("Tal der Verfluchten""Land der Gnome""SD3""Zombieland""Abbrechen")
            if 
m==1 then
                pc
.warp(6054611124886)
            
end
            
if m==2 then
                pc
.warp(1343701068854)
            
end
            
if m==3 then
                pc
.warp(123495184123484277)
            
end
            
if m==4 then
                pc
.warp(6797721192150)
            
end
            
if m==5 then
                send_letter
("Teleportieren Neu")
                return
            
end
            
if s==3 then
            local n 
select("Metin Map (Low)""Friedhof""Abbrechen")
            if 
n==1
                pc
.warp(591207590905)
            
end
            
if n==2
                pc
.warp(2530918225337133)
            
end
            
if n==3
                send_letter
("Teleportieren Neu")
                return
            
end
            
if s==4 then
            local r 
select("Handelsmap""Abbrechen")
            if 
r==1 then
                pc
.warp(91238459491246594)
            
end
            
if r==2
                send_letter
("Teleportieren Neu")
                return
            
end
        end    
    end        
end 
Kann mir mal wer sagen wo hier der Fehler liegen soll oder bin ich echt so blind xD