[SERVICE] Die Questkontrolle

09/21/2012 01:12 [ShiizoPhreN]™#6856
Versuch es so
Code:
quest yangspeicher1 begin
	state start begin
		when 81011.use begin
			say_title("Geldspeicher 1")
			say("")
			say("Hiermit bekommst du deine 100 Mil. Yang wieder.")
			say_reward("Falls du dein Geld auszahlen")
			say_reward("möchtest drücke dazu auf Auszahlen.")
			say_reward("Dieser Gegenstand ist auch handelbar!")
			say("")
			say_reward("Achtung: Du darfst nicht mehr als")
			say_reward("2.000.000.000 Yang im Inventar haben.")
			local main_set = select("Auszahlen", "Abbrechen")
			if main_set == 2 then
				return
			else
				chat("Du löst dein Speicher auf.")
				pc.change_money(100000000)
				pc.removeitem(81011, 1)
			end
		end
	end
end
09/21/2012 22:47 nightstalker112#6857
hey wieder ein prob:D

PHP Code:
quest kriegskeiler begin
    state start begin
        when 71114.
use with pc.getqf("mount"0begin
            pc
.mount(20115200000)
            
affect.add_collect(apply.ATT_GRADE_BONUS600,60*60*24*365*60)
            
pc.setqf("mount"1)
        
end
        
        when 71114.
use with pc.getqf("mount"1begin
            pc
.unmount()
            
affect.remove_collect()
            
pc.setqf("mount"0)
        
end
    end
end 
funtzt alles bis auf das wenn ich aufs siegel klicke er sofort wieder auf das mount steigt oder wenn ich strg+h drücke garnichts passiert hätte es aber gern so: strg+h oder klick aufs das siegel damit er absitzt

danke

mfg
09/22/2012 08:18 The2MrMetin2#6858
Hallo wenn ich diesen quest einfüge

PHP Code:
quest usercp begin 
    state start begin 
        when login with pc
.is_gm() begin 
            game
.set_event_flag(pc.get_name(), 1
        
end 
        when logout with pc
.is_gm() begin 
            game
.set_event_flag(pc.get_name(), 0
        
end        
        when 70042.
use begin 
            say_title
(col.gold("Userpanel")) 
            
say(""
            
say_reward("Wähle aus, was du tun willst:"
            
say(""
            
local a select("Das Team","Rotes Reich","Gelbes Reich","Blaues Reich","Farmmap","Abbrechen"
            if 
== 6 then 
                
return 
            elseif 
== 1 then 
                say_title 
(col.red("Das Team")) 
                
say(""
                
say("Das Team besteht aus:"
                
say (col.gold ("Serveradmins"))                
                if 
game.get_event_flag("[SA]4Live") == 1 then 
                    say_green
("(SA)4Live: Online"
                else 
                    
say_red("(SA)4Live: Offline"
                
end 
                
if game.get_event_flag("[SA]Brutally") == 1 then 
                    say_green
("(SA)Brutally: Online"
                else 
                    
say_red("(SA)Brutally: Offline"
                
end 
                local cc 
select("Weiter","Abbrechen"
                if 
cc == 2 then 
                    
return 
                
end 
                say_title 
(col.red("Das Team")) 
                
say(""
                
say("Das Team besteht aus:"
                
say (col.gold ("GameAdmin")) 
                if 
game.get_event_flag("[GA]EpiiCx3") == 1 then 
                    say_green
("(GA)EpiiCx3: Online"
                else 
                    
say_red("(GA)EpiiCx3: Offline"
                
end 
                local dd 
select("Weiter","Abbrechen"
                if 
dd == 2 then 
                    
return 
                
end 
                say_title 
(col.red("Das Team")) 
                
say(""
                
say("Das Team besteht aus:"
                
say (col.gold ("GameMaster")) 
                if 
game.get_event_flag("[GM]Blitzkid88") == 1 then 
                    say_green
("(GM)Blitzkid88: Online"
                else 
                    
say_red("(GM)Blitzkid88: Offline"
                
end 
                
if game.get_event_flag("[GM]KittY") == 1 then 
                    say_green
("(GM)KittY: Online"
                else 
                    
say_red("(GM)KittY: Offline"
                
end 
                
if game.get_event_flag("[GM]siiRoX") == 1 then 
                    say_green
("(GM)siiRoX: Online"
                else 
                    
say_red("(GM)siiRoX: Offline"
                
end 
                
if game.get_event_flag("[GM]SnoOpy") == 1 then 
                    say_green
("(GM)SnoOpy: Online"
                else 
                    
say_red("(GM)SnoOpy: Offline"
                
end 
                local ee 
select("Weiter","Abbrechen"
                if 
ee == 2 then 
                    
return 
                
end 
                say_title 
(col.red("Das Team")) 
                
say(""
                
say("Das Team besteht aus:"
                
say (col.gold ("Moderator")) 
                if 
game.get_event_flag("[MOD]LAWarriors") == 1 then 
                    say_green
("(MOD)LAWarriors: Online"
                else 
                    
say_red("(MOD)LAWarriors: Offline"
                
end 
            
elseif == 2 then 
                pc
.warp(474300954800
            elseif 
== 3 then 
                pc
.warp(63800166400)               
            elseif 
== 4 then 
                pc
.warp(959900269200
            elseif 
== 5 then 
                pc
.warp(832000
            
end 
        end 
    end 
end 
kommt dieser fehler

PHP Code:
Calls undeclared function! :
col.gold
col
.red
say_green
say_red
Abort trap 
(core dumped
09/22/2012 08:43 [ShiizoPhreN]™#6859
öffne deine datei quest_functions im quest ordner und für unten
col.gold
col.red
say_green
say_red
hinzu
dann compile die quest neu und es sollte funktionieren
zu erwähnen istn och das du prüfen solltest ob du diese function in deiner questlib.lua file hast
09/22/2012 09:59 The2MrMetin2#6860
wenn ich jetz auf das item oder auf den npc anklicke kommt nichts
09/22/2012 15:40 Ide.#6861
Moin Com.,

Habe folgendes Problemchen: syntax error string "wildhunde":10: unexpected symbol near 'when'

09/22/2012 16:49 lιкєcяαηк™#6862
Servuss Leute LikeCranK hier

Ja hab ein Problem mit der training_grandmaster_skill.quest

Ich weiß nich was los ist hab nur ein paar "say" zeilen in "say_gold" oder "say_green" geändert und jetz kann ich den Seelenstein nicht anklicken und finde das prob nicht..
weiß einer weiter? thx im vorraus

mfg likecrank

PHP Code:
quest training_grandmaster_skill begin
    state start begin
        when 50513.
use begin
            say_title
("Seelenstein")
            
local seelicount pc.count_item(50513)
            if 
pc.get_skill_group() == 0 then
                say_red
("Du besitzt keine Fertigkeiten, die")
                
say_red("gegroßmeistert werden können.")
                return
            
end
            
if get_time() < pc.getqf("next_time"then -- and not is_test_server() then
                
if pc.is_skill_book_no_delay() then
                    say_gold
("Durch den gebrauch einer Exorzismuss-")
                    
say_gold("Schriftrolle kannst du einen weiteren")
                    
say_gold("Seelenstein lesen!")                
                    
wait()
                    
say_title("Seelenstein")
                else
                    
say_red("Du hast heute bereits einen Seelenstein gelesen!")
                    return
                
end
            end
            local result 
training_grandmaster_skill.BuildGrandMasterSkillList(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_red
("Du besitzt keine Fertigkeiten, die")
                
say_red("gegroßmeistert werden können.")
                return
            
end
            say_gold
("Welche Fertigkeit möchtest du trainieren?")
            
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-30)
            
test_chat("Momentaner Rang: "..cur_alignment)
            
test_chat("Benötigter Rang: "..need_alignment)            
            
local title=string.format("%s auf G%d trainieren"skill_nameskill_level-30+1)
            if 
skill_level-30+1==10 then
                title
=string.format("%s auf P trainieren"skill_name)
            
end
            pc
.remove_item("50513"1)
            
say_title(title)
            
say_gold("Durch das Lesen von Seelensteinen müssen")
            
say_gold("dir als Zeichen des Opfers Rangpunkte")
            
say_gold("abgezogen werden.")
            
say("")
            if 
cur_alignment<-19000+need_alignment then
                say_red
("Du hast zu wenig Rangpunkte!")
                return
            
end
            
if cur_alignment<0 then
                say_red
(string.format("Benötigter Rang: %d -> %d"need_alignmentneed_alignment*2))
                
say_red("Beim erfolgreichen Einlesen des")
                
say_red("Seelensteines wird dir doppelt")
                
say_red("so viel Rangpunkte abgezogen.")
                
need_alignment=need_alignment*2
            
elseif cur_alignment<need_alignment then
                say_red
(string.format("Benötigter Rang: %d"need_alignment))
                
say_red("Beim erfolgreichen Einlesen des")
                
say_red("Seelensteines wird dir doppelt")
                
say_red("so viel Rangpunkte abgezogen.")
            else
                
say_red(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_gold("Das Lesen eines Seelensteines kostet Rang,")
                
say_gold("wenn du diesen Seelenstein ließt,")
                
say_gold("kommst du in den negativen Bereich.")
                
say_gold("Bitte Bestätige das du diesen Seelenstein")
                
say_gold("wirklich lesen möchtest! Das tust du")
                
say_gold("indem du das Wort")
                
say_green("trainieren")
                
say_gold("in das untere Textfeld eingibst.")
                
say_red("Rechtschreibung beachten!")
                
local s=input()
                if 
s!="trainieren" then
                    
return
                
end
            end
            
if get_time() < pc.getqf("next_time"then
                
if pc.is_skill_book_no_delay() then
                    pc
.remove_skill_book_no_delay()
                else
                    
say_red("Bitte an die Admins wenden!")
                    return
                
end
            end
            pc
.setqf("next_time"get_time()+time_hour_to_sec(number(812)))
            if 
need_alignment>and pc.count_item(50513)>0 then
                
if pc.learn_grand_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_green
(string.format("%s ist nun perfeckt Gemeistert."skill_name))
                        
say_green("Herzlichen Glückwunsch!")
                    else
                        
say_green(string.format("Das Großmeistern war erfolgreich!"skill_nameskill_level-30+1+1))
                    
end
                    say
("")
                    
say_green("Erfolgreich!")
                    
say_red(string.format("Es wurden %d Rangpunkte verbraucht"need_alignment))
                    
say("")
                else
                    
say_title(string.format("%s fehlgeschlagen"title))
                    
say_red("Das Großmeistern ist fehlgeschlagen.")
                    
say("")
                    
local rang number(need_alignment/3need_alignment/2)
                    
say_red("Fehlgeschlagen!")
                    
say_red("Es wurden "..rang.." Rangpunkte verbraucht")
                    
say("")
                    
pc.change_alignment(-rang)
                
end
            end
        end
        
function BuildGrandMasterSkillList(jobgroup)
            
GRAND_MASTER_SKILL_LEVEL 30
            PERFECT_MASTER_SKILL_LEVEL 
40
            local skill_list 
special.active_skill_list[job+1][group]
            
local ret_vnum_list = {}
            
local ret_name_list = {}
            
table.foreach(skill_list
            function(
iskill_vnum
            
local skill_level pc.get_skill_level(skill_vnum)
            if 
skill_level >= GRAND_MASTER_SKILL_LEVEL and skill_level PERFECT_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}
        
end
    end
end 
:D

Quote:
Originally Posted by lιкєcяαηк™ View Post
Servuss Leute LikeCranK hier

Ja hab ein Problem mit der training_grandmaster_skill.quest

Ich weiß nich was los ist hab nur ein paar "say" zeilen in "say_gold" oder "say_green" geändert und jetz kann ich den Seelenstein nicht anklicken und finde das prob nicht..
weiß einer weiter? thx im vorraus

mfg likecrank

PHP Code:
quest training_grandmaster_skill begin
    state start begin
        when 50513.
use begin
            say_title
("Seelenstein")
            
local seelicount pc.count_item(50513)
            if 
pc.get_skill_group() == 0 then
                say_red
("Du besitzt keine Fertigkeiten, die")
                
say_red("gegroßmeistert werden können.")
                return
            
end
            
if get_time() < pc.getqf("next_time"then -- and not is_test_server() then
                
if pc.is_skill_book_no_delay() then
                    say_gold
("Durch den gebrauch einer Exorzismuss-")
                    
say_gold("Schriftrolle kannst du einen weiteren")
                    
say_gold("Seelenstein lesen!")                
                    
wait()
                    
say_title("Seelenstein")
                else
                    
say_red("Du hast heute bereits einen Seelenstein gelesen!")
                    return
                
end
            end
            local result 
training_grandmaster_skill.BuildGrandMasterSkillList(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_red
("Du besitzt keine Fertigkeiten, die")
                
say_red("gegroßmeistert werden können.")
                return
            
end
            say_gold
("Welche Fertigkeit möchtest du trainieren?")
            
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-30)
            
test_chat("Momentaner Rang: "..cur_alignment)
            
test_chat("Benötigter Rang: "..need_alignment)            
            
local title=string.format("%s auf G%d trainieren"skill_nameskill_level-30+1)
            if 
skill_level-30+1==10 then
                title
=string.format("%s auf P trainieren"skill_name)
            
end
            pc
.remove_item("50513"1)
            
say_title(title)
            
say_gold("Durch das Lesen von Seelensteinen müssen")
            
say_gold("dir als Zeichen des Opfers Rangpunkte")
            
say_gold("abgezogen werden.")
            
say("")
            if 
cur_alignment<-19000+need_alignment then
                say_red
("Du hast zu wenig Rangpunkte!")
                return
            
end
            
if cur_alignment<0 then
                say_red
(string.format("Benötigter Rang: %d -> %d"need_alignmentneed_alignment*2))
                
say_red("Beim erfolgreichen Einlesen des")
                
say_red("Seelensteines wird dir doppelt")
                
say_red("so viel Rangpunkte abgezogen.")
                
need_alignment=need_alignment*2
            
elseif cur_alignment<need_alignment then
                say_red
(string.format("Benötigter Rang: %d"need_alignment))
                
say_red("Beim erfolgreichen Einlesen des")
                
say_red("Seelensteines wird dir doppelt")
                
say_red("so viel Rangpunkte abgezogen.")
            else
                
say_red(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_gold("Das Lesen eines Seelensteines kostet Rang,")
                
say_gold("wenn du diesen Seelenstein ließt,")
                
say_gold("kommst du in den negativen Bereich.")
                
say_gold("Bitte Bestätige das du diesen Seelenstein")
                
say_gold("wirklich lesen möchtest! Das tust du")
                
say_gold("indem du das Wort")
                
say_green("trainieren")
                
say_gold("in das untere Textfeld eingibst.")
                
say_red("Rechtschreibung beachten!")
                
local s=input()
                if 
s!="trainieren" then
                    
return
                
end
            end
            
if get_time() < pc.getqf("next_time"then
                
if pc.is_skill_book_no_delay() then
                    pc
.remove_skill_book_no_delay()
                else
                    
say_red("Bitte an die Admins wenden!")
                    return
                
end
            end
            pc
.setqf("next_time"get_time()+time_hour_to_sec(number(812)))
            if 
need_alignment>and pc.count_item(50513)>0 then
                
if pc.learn_grand_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_green
(string.format("%s ist nun perfeckt Gemeistert."skill_name))
                        
say_green("Herzlichen Glückwunsch!")
                    else
                        
say_green(string.format("Das Großmeistern war erfolgreich!"skill_nameskill_level-30+1+1))
                    
end
                    say
("")
                    
say_green("Erfolgreich!")
                    
say_red(string.format("Es wurden %d Rangpunkte verbraucht"need_alignment))
                    
say("")
                else
                    
say_title(string.format("%s fehlgeschlagen"title))
                    
say_red("Das Großmeistern ist fehlgeschlagen.")
                    
say("")
                    
local rang number(need_alignment/3need_alignment/2)
                    
say_red("Fehlgeschlagen!")
                    
say_red("Es wurden "..rang.." Rangpunkte verbraucht")
                    
say("")
                    
pc.change_alignment(-rang)
                
end
            end
        end
        
function BuildGrandMasterSkillList(jobgroup)
            
GRAND_MASTER_SKILL_LEVEL 30
            PERFECT_MASTER_SKILL_LEVEL 
40
            local skill_list 
special.active_skill_list[job+1][group]
            
local ret_vnum_list = {}
            
local ret_name_list = {}
            
table.foreach(skill_list
            function(
iskill_vnum
            
local skill_level pc.get_skill_level(skill_vnum)
            if 
skill_level >= GRAND_MASTER_SKILL_LEVEL and skill_level PERFECT_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}
        
end
    end
end 
:D
€dit: Fehler gefunden und behoben .. :)
09/22/2012 16:59 'oShet#6863
Habe ein problem mit dieser Quest.

ich habe alles gekillt, aber am ende passiert nichts..

Code:
quest pvm5 begin 
    state start begin 
        when login or levelup with pc.get_level() >= 80 begin 
            set_state(information) 
        end 
    end 
     
    state information begin 
        when letter begin 
            send_letter("Alte Feinde") 
        end 

        when info or button begin 
        say_title("Angriff der alten Feinde") 
        say("Hallo "..pc.get_name().."!") 
        say("Ich beobachte dich jetzt schon lange Zeit ") 
        say("und du hast dich schon oft bewiesen!") 
        say("Doch nun ist unsere Welt in großer Gefahr.") 
        say("Die alten Feinde planen einen Angriff!") 
        say("Bitte, du musst sie aufhalten!") 
        say("") 
        say("Töte die Eishexe, den Sensenmann, Metin des Zorn und Metin Jeon-Un.") 
        say_reward("Du bekommst 10% gegen Monster und 50kk Yang für deine Mühen.") 
        say("Willst du die Aufgabe annhemen?") 
        local s = select("Ja","Nein keine Zeit") 
        if s == 2 then 
                    say("Nun gut!") 
                    say("Weiterhin viel spaß beim spielen!") 
                    clear_letter() 
                    set_state (pvm5ende) 
        else 
            say("Okay los gehts!") 
            say_reward("Töte 3 x Eishexe") 
            say_reward("Töte 5 x Sensenmann") 
            say_reward("Töte 150 x Metin des Zorns")
			say_reward("Töte 102x Metin Jeon-Un")
            pc.setqf("state1", 0) 
            q.set_counter("Eishexe", 3) 
            pc.setqf("state2", 0) 
            q.set_counter("Sensenmann", 5) 
            pc.setqf("state3", 0) 
            q.set_counter("MetindesZorns", 150)
			pc.setqf("state4", 0) 
            q.set_counter("MetinJeonUn", 102) 
            set_state(kill) 
            end 
        end 
    end 
     
    state kill begin 
        when letter begin 
            send_letter("Töte die Feinde") 
        end 
     
        when info or button begin 
            say_title("Angriff der alten Feinde") 
            say("Staus:") 
            say_reward("Du hast schon "..pc.getqf("state1").." von 3 x Eishexe") 
            say_reward("Du hast schon "..pc.getqf("state2").." von 5 x Sensenmann") 
            say_reward("Du hast schon "..pc.getqf("state3").." von 150 x Metin des Zorns")
			say_reward("Du hast schon "..pc.getqf("state4").." von 102 x Metin Jeon-Un")
        end 
         
        when kill with npc.get_race() == 1191 begin 
            local count1 = pc.getqf("state1") + 1 
            if count1 <= 3 then 
                pc.setqf("state1", count1) 
                q.set_counter("Eishexe", count1) 
            end
			if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end 
         
        when kill with npc.get_race() == 1093 begin 
            local count2 = pc.getqf("state2") + 1 
            if count2 <= 5 then 
                pc.setqf("state2", count2) 
                q.set_counter("Sensenmann", count2) 
            end
			if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end 
         
        when kill with npc.get_race() == 8030 begin 
            local count3 = pc.getqf("state3") + 1 
            if count3 <= 150 then 
                pc.setqf("state3", count3) 
                q.set_counter("MetindesZorns", count3) 
            end
			if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end
		
		when kill with npc.get_race() == 8027 begin 
            local count4 = pc.getqf("state4") + 1 
            if count4 <= 102 then 
                pc.setqf("state4", count4) 
                q.set_counter("MetinJeonUn", count4) 
            end 
            if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end
		
    end 
             
    state fertig begin 
        when letter begin 
            send_letter("Aufgabe abgeschlossen!") 
        end 
         
        when info or button begin 
            say_title("Aufgabe abgeschlossen!") 
            say("Du hast deine Aufgabe vollbracht!") 
            say("Ich dachte ich hätte dir zu viel zugemutet,") 
            say("aber meine Sorgen waren wohl unbegründet.") 
            say("Du bist wahrhaftig ein großer Krieger!") 
            wait() 
            say("Natürlich willst du deine Belohnung oder?") 
            local s=select("Natürlich","Nein danke, behalt sie") 
            if s== 2 then 
                clear_letter() 
                set_state(pvm5ende) 
            else 
                say_reward("10% Stark gegen Monster") 
                say_reward("50.000.000 Yang") 
                affect.add_collect(apply.ATT_BONUS_TO_MONSTER,10,60*60*24*365*60)
                pc.change_money(50000000) 
                clear_letter() 
                set_state(pvm5ende) 
            end 
        end 
    end 

    state pvm5ende begin 
    end 
end
09/22/2012 19:35 vistamann#6864
#edited

Hab Fehler nach mehrmaligen durchsehen selbst gefunden
sry für störung =)
09/22/2012 22:02 .Seriously#6865
PHP Code:
quest tp_ring begin
    state start begin
        when 70058.
use begin
            
if pc.getqf("tp_ring_use") >= 50 then
                pc
.remove_item(700581)
                    
pc.setqf("tp_ring_use"0)
            else
            if 
pc.getqf("tp_ring") >= get_time() then
                say_title
("Teleportationsring:")
                
say("")
                
say("Du kannst mich nur alle 30 Minuten benutzen!")
                
say("")
            else
                
local empire pc.get_empire()
                
local map2_names = {
                    
"Jayang",
                    
"Bokjung",
                    
"Bakra",
                }
                
local guild_map_names = {
                    
"Jungrang",
                    
"Waryong",
                    
"Imha",
                }
                
say_title("Teleportationsring:")
                
say("")
                
say("Wohin möchtest du reisen?")
                
say("")
                
local tp_ring select(map2_nameguild_map_name"Orktal","Wüste","Eisland","Feuerland","Abbrechen")
            if 
tp_ring == 1 then
                
if empire == 1 then
                    pc
.warp(307200,819200)
                elseif 
empire == 2 then
                    pc
.warp(102400,204800)
                elseif 
empire == 3 then
                    pc
.warp(819200,204800)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                                
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 2 then
                
if empire == 1 then
                    pc
.warp(128000,0)
                elseif 
empire == 2 then
                    pc
.warp(179200,0)
                elseif 
empire == 3 then
                    pc
.warp(230400,0)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 3 then
                    pc
.warp(256000,665600)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 4 then
                    pc
.warp(204800,486400)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 5 then
                    pc
.warp(358400,153600)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 6 then
                    pc
.warp(588800,614400)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 7 then
                        
return
                            
end
                        end
                    end
                end
            end
        end
    end
end 
beim draufklicken passiert nix.
09/23/2012 10:53 Ide.#6866
Quote:
Originally Posted by .FloP View Post
PHP Code:
quest tp_ring begin
    state start begin
        when 70058.
use begin
            
if pc.getqf("tp_ring_use") >= 50 then
                pc
.remove_item(700581)
                    
pc.setqf("tp_ring_use"0)
            else
            if 
pc.getqf("tp_ring") >= get_time() then
                say_title
("Teleportationsring:")
                
say("")
                
say("Du kannst mich nur alle 30 Minuten benutzen!")
                
say("")
            else
                
local empire pc.get_empire()
                
local map2_names = {
                    
"Jayang",
                    
"Bokjung",
                    
"Bakra",
                }
                
local guild_map_names = {
                    
"Jungrang",
                    
"Waryong",
                    
"Imha",
                }
                
say_title("Teleportationsring:")
                
say("")
                
say("Wohin möchtest du reisen?")
                
say("")
                
local tp_ring select(map2_nameguild_map_name"Orktal","Wüste","Eisland","Feuerland","Abbrechen")
            if 
tp_ring == 1 then
                
if empire == 1 then
                    pc
.warp(307200,819200)
                elseif 
empire == 2 then
                    pc
.warp(102400,204800)
                elseif 
empire == 3 then
                    pc
.warp(819200,204800)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                                
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 2 then
                
if empire == 1 then
                    pc
.warp(128000,0)
                elseif 
empire == 2 then
                    pc
.warp(179200,0)
                elseif 
empire == 3 then
                    pc
.warp(230400,0)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 3 then
                    pc
.warp(256000,665600)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 4 then
                    pc
.warp(204800,486400)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 5 then
                    pc
.warp(358400,153600)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 6 then
                    pc
.warp(588800,614400)
                        
pc.setqf("tp_ring_use",pc.getqf("tp_ring_use") +1)
                            
pc.setqf("tp_ring",get_time() + 1800)
            elseif 
tp_ring == 7 then
                        
return
                            
end
                        end
                    end
                end
            end
        end
    end
end 
beim draufklicken passiert nix.
Hast du die Eigenschaften inner DB umgestellt? Ich meine die müsste man auch ändern :b

- - - - -

Habe folgendes Problemchen: syntax error string "wildhunde":10: unexpected symbol near 'when'

09/23/2012 11:20 .Seriously#6867
ja habe ich.
09/23/2012 14:29 'oShet#6868
Habe ein problem mit dieser Quest.

ich habe alles gekillt, aber am ende passiert nichts..

Code:
quest pvm5 begin 
    state start begin 
        when login or levelup with pc.get_level() >= 80 begin 
            set_state(information) 
        end 
    end 
     
    state information begin 
        when letter begin 
            send_letter("Alte Feinde") 
        end 

        when info or button begin 
        say_title("Angriff der alten Feinde") 
        say("Hallo "..pc.get_name().."!") 
        say("Ich beobachte dich jetzt schon lange Zeit ") 
        say("und du hast dich schon oft bewiesen!") 
        say("Doch nun ist unsere Welt in großer Gefahr.") 
        say("Die alten Feinde planen einen Angriff!") 
        say("Bitte, du musst sie aufhalten!") 
        say("") 
        say("Töte die Eishexe, den Sensenmann, Metin des Zorn und Metin Jeon-Un.") 
        say_reward("Du bekommst 10% gegen Monster und 50kk Yang für deine Mühen.") 
        say("Willst du die Aufgabe annhemen?") 
        local s = select("Ja","Nein keine Zeit") 
        if s == 2 then 
                    say("Nun gut!") 
                    say("Weiterhin viel spaß beim spielen!") 
                    clear_letter() 
                    set_state (pvm5ende) 
        else 
            say("Okay los gehts!") 
            say_reward("Töte 3 x Eishexe") 
            say_reward("Töte 5 x Sensenmann") 
            say_reward("Töte 150 x Metin des Zorns")
			say_reward("Töte 102x Metin Jeon-Un")
            pc.setqf("state1", 0) 
            q.set_counter("Eishexe", 3) 
            pc.setqf("state2", 0) 
            q.set_counter("Sensenmann", 5) 
            pc.setqf("state3", 0) 
            q.set_counter("MetindesZorns", 150)
			pc.setqf("state4", 0) 
            q.set_counter("MetinJeonUn", 102) 
            set_state(kill) 
            end 
        end 
    end 
     
    state kill begin 
        when letter begin 
            send_letter("Töte die Feinde") 
        end 
     
        when info or button begin 
            say_title("Angriff der alten Feinde") 
            say("Staus:") 
            say_reward("Du hast schon "..pc.getqf("state1").." von 3 x Eishexe") 
            say_reward("Du hast schon "..pc.getqf("state2").." von 5 x Sensenmann") 
            say_reward("Du hast schon "..pc.getqf("state3").." von 150 x Metin des Zorns")
			say_reward("Du hast schon "..pc.getqf("state4").." von 102 x Metin Jeon-Un")
        end 
         
        when kill with npc.get_race() == 1191 begin 
            local count1 = pc.getqf("state1") + 1 
            if count1 <= 3 then 
                pc.setqf("state1", count1) 
                q.set_counter("Eishexe", count1) 
            end
			if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end 
         
        when kill with npc.get_race() == 1093 begin 
            local count2 = pc.getqf("state2") + 1 
            if count2 <= 5 then 
                pc.setqf("state2", count2) 
                q.set_counter("Sensenmann", count2) 
            end
			if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end 
         
        when kill with npc.get_race() == 8030 begin 
            local count3 = pc.getqf("state3") + 1 
            if count3 <= 150 then 
                pc.setqf("state3", count3) 
                q.set_counter("MetindesZorns", count3) 
            end
			if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end
		
		when kill with npc.get_race() == 8027 begin 
            local count4 = pc.getqf("state4") + 1 
            if count4 <= 102 then 
                pc.setqf("state4", count4) 
                q.set_counter("MetinJeonUn", count4) 
            end 
            if count1 == 3 and count2 == 5 and count3 == 150 and count4 == 102 then 
            set_state(fertig)
            end
        end
		
    end 
             
    state fertig begin 
        when letter begin 
            send_letter("Aufgabe abgeschlossen!") 
        end 
         
        when info or button begin 
            say_title("Aufgabe abgeschlossen!") 
            say("Du hast deine Aufgabe vollbracht!") 
            say("Ich dachte ich hätte dir zu viel zugemutet,") 
            say("aber meine Sorgen waren wohl unbegründet.") 
            say("Du bist wahrhaftig ein großer Krieger!") 
            wait() 
            say("Natürlich willst du deine Belohnung oder?") 
            local s=select("Natürlich","Nein danke, behalt sie") 
            if s== 2 then 
                clear_letter() 
                set_state(pvm5ende) 
            else 
                say_reward("10% Stark gegen Monster") 
                say_reward("50.000.000 Yang") 
                affect.add_collect(apply.ATT_BONUS_TO_MONSTER,10,60*60*24*365*60)
                pc.change_money(50000000) 
                clear_letter() 
                set_state(pvm5ende) 
            end 
        end 
    end 

    state pvm5ende begin 
    end 
end
09/23/2012 16:15 vistamann#6869
Habe diese Quest in einem älteren Thread gefunden,
und finde diese recht witzig, habe die Quest eingebaut, die Items sind
ebenfalls vorhanden, nur das Problem ist das die getöteten Mobs nicht
gezählt werden dadurch hängt die Quest bei den Punkt mit den Weinflaschen

Wäre sehr nett wenn sich einer diese Quest anschauen könnte und
eventuell den Fehler findet und beheben könnte

Danke =)


PHP Code:
----------------------------------------------------
-- 
Das ......
---------------------------------------------------- 
DANKE ist keiner Hilfsbereit, muss ja auch keiner -.-
nach 2 tagen nicht mal müh -.-
09/24/2012 20:54 nightstalker112#6870
Hey leute prob: Pferd is immer bis lvl 30 lvlbar :(

PHP Code:
quest pferdlvl begin
    state start begin
    when 20349.chat
."Pferd steigern" begin
            say_title
("Stallbursche:")
            
say("")
            
say("Hallo!")
            
say("Bei mir kannst du dein Pferd steigern.")
            
say("Das Pferd zu steigern kostet dich 10kk pro Level.")
            
say("")
            
say_reward("Möchtest du dein Pferd steigern?")
            
say("")
                
            
local s select("Ja""Nein")
                
                if 
== 1 then
                    say_title
("Stallbursche:")
                    
say("")
                        if 
pc.money>=10000000 then
                        pc
.changemoney("-10000000")
            
horse.unride()
            
horse.advance()
            
horse.ride()
            
say("Dein Pferd hat nun Level "..(horse.get_level()).." erreicht.")
            
say("")
                        elseif 
horse.get_level()>=21 then
            say
("Dein Pferd hat Level 21 erreicht.")
            
say("Du kannst es nicht mehr steigern.")
            
say("")
                        elseif 
pc.money<10000000 then
            say
("Du hast nicht genug Yang um dein Pferd zu steigern.")
            
say("")
            
end
                
elseif == 2 then
                    
return
        
end
    end
           when 20349.chat
."Reitshop" begin
        npc
.open_shop(19)
                 
say("Hier findest du alle Items für ein Pferd.")
    
end
        when 20349.chat
."Information" begin
            local s
=number(17)
            if 
1>=s then -- 14.29% (1/7)
                
say("Füttere dein Pferd")
                
say("regelmässig sonst")
                
say("stirbt es.")
            elseif 
2>=s then -- 14.29% (1/7)
                
say("Das Anfängerpferd")
                
say("ist sehr schnell erschöpft.")
                
say("Bleibe nicht auf seinem Rücken stehen.")
            elseif 
3>=s then -- 14.29% (1/7)
                
say("Um dein Pferd zu verbessern")
                
say("benötigst du 1kk Yang.")
                
say("Bringe das Yang zu mir")
                
say("und ich werde dein Pferd steigern.")
            elseif 
4>=s then -- 14.29% (1/7)
                
say("Wenn dein Pferd gestorben")
                
say("ist gibt es mehrere")
                
say("Kräuter von den")
                
say("Affenkönigen um")
                
say("sie Wiederzubeleben.")
            elseif 
5>=s then -- 14.29% (1/7)
                
say("Es gibt 9 verschiedene")
                
say("Pferde Aussehen.")
                
say("Ohne Gilde, mit Gilde und als Leader.")
            elseif 
6>=s then -- 14.29% (1/7)
                
say("Das Anfängerpferd")
                
say("isst gerne Heu.")
                
say("Das Kampfpferd")
                
say("isst gerne Karotten.")
                
say("Das Militärpferd")
                
say("isst gerne Roten Ginseng.")
            elseif 
7>=s then -- 14.29% (1/7)
                
say("Lese Handbuch Pferde Zähmen")
                
say("um dein Pferd schneller zu rufen.")
            
end
        end
    end
    state __COMPLETE__ begin
        when enter begin
            q
.done()
        
end
    end
end