[SERVICE] Die Questkontrolle

07/12/2013 02:49 TheMad#8521
Ich brauche nochmal eure hilfe^^


Und zwar will ich aus der quest datenbank eine
Code:
game.set_event_flag
komplett rauslöschen, ich habe es so versucht

Code:
local name = pc.get_name()
locale del = mysql_query("DELETE FROM player.quest WHERE ""..name.."kg")
funzt aber nicht, gibt in der console dann einen error.

wer von euch kann mir diesmal aus der patsche helfen? ^-^
07/12/2013 04:05 DAS IST VEGAAZ#8522
Ich hätte wieder gerne eine Quest kontrolliert, da ich sie selbst nicht testen kann.
Tut mir leid wegen der Umstände.
Code:
quest Gruppenarbeit begin
	state start begin	
		when pc.get_level == 155 begin
			say_title ("Gruppenarbeit")
			say ("Hey! Man braucht deine Hilfe, doch du alleine")
			say (" reichst nicht. Bewältige MAPNAME in einer Gruppe")
			say (" und erreiche Level 170 um eine Belohnung zu erhalten.")
			set_state(170)
		end
	end
	
	state 170 begin
		when pc.get_level == 170 begin
			say_titel ("Erfolg!")
			say ("Du hast die Aufgabe bewältigt.")
			say ("Als Belohnung erhälst du 10 Goldklumpen!")
			say ("Viel Spaß noch weiterhin.")
			pc.give_item2(VNUM)
		end
	end
end
Außerdem wollte ich fragen wann ich "return" benutzen muss und wann nicht.
Würde bei meiner Quest das Fenster von alleine weg gehen und kann man das so überhaupt machen, das einfach aus dem Nichts ein Fenster auftaucht?

Mfg,
Vegaaz
07/12/2013 05:18 Mr. 'Avenue™#8523
Quote:
Originally Posted by Vegaaz View Post
Ich hätte wieder gerne eine Quest kontrolliert, da ich sie selbst nicht testen kann.
Tut mir leid wegen der Umstände.
Code:
quest Gruppenarbeit begin
	state start begin	
		when pc.get_level == 155 begin
			say_title ("Gruppenarbeit")
			say ("Hey! Man braucht deine Hilfe, doch du alleine")
			say (" reichst nicht. Bewältige MAPNAME in einer Gruppe")
			say (" und erreiche Level 170 um eine Belohnung zu erhalten.")
			set_state(170)
		end
	end
	
	state 170 begin
		when pc.get_level == 170 begin
			say_titel ("Erfolg!")
			say ("Du hast die Aufgabe bewältigt.")
			say ("Als Belohnung erhälst du 10 Goldklumpen!")
			say ("Viel Spaß noch weiterhin.")
			pc.give_item2(VNUM)
		end
	end
end
Außerdem wollte ich fragen wann ich "return" benutzen muss und wann nicht.
Würde bei meiner Quest das Fenster von alleine weg gehen und kann man das so überhaupt machen, das einfach aus dem Nichts ein Fenster auftaucht?

Mfg,
Vegaaz

Code:
quest gruppenarbeit begin
	state start begin	
		when levelup begin
			if pc.get_level() == 155 then
				say_title ("Gruppenarbeit")
				say ("Hey! Man braucht deine Hilfe, doch du alleine")
				say (" reichst nicht. Bewältige MAPNAME in einer Gruppe")
				say (" und erreiche Level 170 um eine Belohnung zu erhalten.")
			elseif pc.get_level() == 170 then
				say_titel ("Erfolg!")
				say ("Du hast die Aufgabe bewältigt.")
				say ("Als Belohnung erhälst du 10 Goldklumpen!")
				say ("Viel Spaß noch weiterhin.")
				pc.give_item2(VNUM, ANZAHL)
			end
		end
	end
end
  • Questname darf NIE großgeschrieben werden, also NICHT Gruppenarbeit sondern gruppenarbeit
  • Du kannst keine variable direkt abfragen (in dem fall pc.get_level()) sondern musst erst eine vorvariable oder so abrufen (levelup in dem Fall)

Zu deiner Frage:
- du kannst return zum zurückgeben eines Werts & zum abbrechen benutzen.

Beispiele:
zurückgeben eines Werts (Zahl - number) (questflag)
PHP Code:
return tonumber(pc.getqf("kills")) 
abbrechen
PHP Code:
local x select("Bla","Abbrechen")
if 
== 1 then
    chat
("blabla")
elseif 
== 2 then
    
return
end 
07/12/2013 11:29 xMichiix#8524
PHP Code:
quest test_123 begin
    state start begin
        when login 
or levelup with pc.get_level() == 40 begin
            set_state
gotoinfomation )
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
                
say("")
                ----
"123456789012345678901234567890123456789012345678901234567890"|
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
wait()
            
set_stategotoguard )
            
end
        end
    end
    state gotoguard begin
        when letter begin
            local v
=find_npc_by_vnum(20355)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Gehe zum Hauptmann")
            
end
        end
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
            
say("Suche den Hauptmann auf der Karte.")
            
say("")
            ----------
"12345678901234567890123456789012345678901234567890"|
            
say_reward("")
            
say_reward("")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Hauptmann:")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("")
            
say("")
            
wait()
            
say("Hauptmann:")
            
say("")
            
clear_letter()

            
set_statestone )
        
end
    state stone begin
        when letter begin
            send_letter
("Zerstöre die Steine")
        
end
        when button 
or info begin
                say_title
("Der ewige Kampf")
                
say("Zerstöre Metinsteine im")
                
say("Orktal um die Lage unter")
                
say("Kontrolle zu bekommen.")
            
end
            when 8001.kill begin
                local pct 
number(1,200)
                if 
pct==5 then
                    clear_letter
()
                    
chat("Genug für den Anfang...")
                    
set_state(guard2)
                
end
            end
        end
    end
    state guard2 begin
        when letter begin
            send_letter
("Zurück zum Hauptmann")
                
local v find_npc_by_vnum(20355)
                if 
!= 0 then
                    target
.vid("target2"v"Hauptmann")
                
end
            end
            when button 
or info begin
                say_title
("")
                
say("Du hast genug Steine zerstört,")
            
end
            when target2
.target.click or 20355.chat."blablabla" begin    
                target
.delete("target2")
                
say_title("")
                
say("")
                
pc.give_item2(192)
                
pc.give_item2(292)
                
pc.give_item2(392)
                
clear_letter()
            
end
        end
    set_state 
__COMPLETE__ )
    
set_quest_state("test_12345","run")
    
end
    state __COMPLETE__ begin
    end
end 
die quest will irgendwie nicht was ist den daran flasch ?
07/12/2013 12:31 Fliegex3#8525
Quote:
Originally Posted by Michi1994 View Post
PHP Code:
quest test_123 begin
    state start begin
        when login 
or levelup with pc.get_level() == 40 begin
            set_state
gotoinfomation )
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
                
say("")
                ----
"123456789012345678901234567890123456789012345678901234567890"|
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
wait()
            
set_stategotoguard )
            
end
        end
    end
    state gotoguard begin
        when letter begin
            local v
=find_npc_by_vnum(20355)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Gehe zum Hauptmann")
            
end
        end
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
            
say("Suche den Hauptmann auf der Karte.")
            
say("")
            ----------
"12345678901234567890123456789012345678901234567890"|
            
say_reward("")
            
say_reward("")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Hauptmann:")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("")
            
say("")
            
wait()
            
say("Hauptmann:")
            
say("")
            
clear_letter()

            
set_statestone )
        
end
    state stone begin
        when letter begin
            send_letter
("Zerstöre die Steine")
        
end
        when button 
or info begin
                say_title
("Der ewige Kampf")
                
say("Zerstöre Metinsteine im")
                
say("Orktal um die Lage unter")
                
say("Kontrolle zu bekommen.")
            
end
            when 8001.kill begin
                local pct 
number(1,200)
                if 
pct==5 then
                    clear_letter
()
                    
chat("Genug für den Anfang...")
                    
set_state(guard2)
                
end
            end
        end
    end
    state guard2 begin
        when letter begin
            send_letter
("Zurück zum Hauptmann")
                
local v find_npc_by_vnum(20355)
                if 
!= 0 then
                    target
.vid("target2"v"Hauptmann")
                
end
            end
            when button 
or info begin
                say_title
("")
                
say("Du hast genug Steine zerstört,")
            
end
            when target2
.target.click or 20355.chat."blablabla" begin    
                target
.delete("target2")
                
say_title("")
                
say("")
                
pc.give_item2(192)
                
pc.give_item2(292)
                
pc.give_item2(392)
                
clear_letter()
            
end
        end
    set_state 
__COMPLETE__ )
    
set_quest_state("test_12345","run")
    
end
    state __COMPLETE__ begin
    end
end 
die quest will irgendwie nicht was ist den daran flasch ?
PHP Code:
quest test_123 begin
    state start begin
        when login 
or levelup with pc.get_level() == 40 begin
            set_state
gotoinfomation )
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
                
say("")
                ----
"123456789012345678901234567890123456789012345678901234567890"|
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
wait()
            
set_stategotoguard )
            
end
        end
    end
    state gotoguard begin
        when letter begin
            local v
=find_npc_by_vnum(20355)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Gehe zum Hauptmann")
            
end
        end
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
            
say("Suche den Hauptmann auf der Karte.")
            
say("")
            ----------
"12345678901234567890123456789012345678901234567890"|
            
say_reward("")
            
say_reward("")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Hauptmann:")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("")
            
say("")
            
wait()
            
say("Hauptmann:")
            
say("")
            
clear_letter()

            
set_statestone )
        
end
    state stone begin
        when letter begin
            send_letter
("Zerstöre die Steine")
        
end
        when button 
or info begin
                say_title
("Der ewige Kampf")
                
say("Zerstöre Metinsteine im")
                
say("Orktal um die Lage unter")
                
say("Kontrolle zu bekommen.")
            
end
            when 8001.kill begin
                local pct 
number(1,200)
                if 
pct==5 then
                    clear_letter
()
                    
chat("Genug für den Anfang...")
                    
set_state(guard2)
                
end
            end
        end
    end
    state guard2 begin
        when letter begin
            send_letter
("Zurück zum Hauptmann")
                
local v find_npc_by_vnum(20355)
                if 
!= 0 then
                    target
.vid("target2"v"Hauptmann")
                
end
            end
            when button 
or info begin
                say_title
("")
                
say("Du hast genug Steine zerstört,")
            
end
            when target2
.target.click or 20355.chat."blablabla" begin    
                target
.delete("target2")
                
say_title("")
                
say("")
                
pc.give_item2(192)
                
pc.give_item2(292)
                
pc.give_item2(392)
                
clear_letter()
            
end
        end
    set_state 
__COMPLETE__ )
    
set_quest_state("test_12345","run")
    
end
    state __COMPLETE__ begin
    end
end
end 
Versuchs mal so.
07/12/2013 12:46 xMichiix#8526
test_123.quest:28:must start with 'quest'
Error occured on compile test_123.quest

ne geht nicht
07/12/2013 14:15 GoldenLegend#8527
hab nen problem mit ner quest :(

[Only registered and activated users can see links. Click Here To Register...]

Code:
quest tausch begin
	state start begin
		when 9010.chat."Tauschsystem" begin
			say("Hier kannst du die legendaeren Saende gegen")
			say("Rohdiamanten eintauschen")
		local s = select("Blauer Sand","Roter Sand","Gruener Sand","Weisser Sand","Schwarzer Sand","Orangener Sand","Abbrechen")
			if s==1 then
				if pc.countitem(102101) >=5 then
					pc.removeitem(102101,5)
					pc.give_item2(102041, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stück hast!")
				return
			end
			elseif s==2 then
				if pc.countitem(102102) >=5 then
					pc.removeitem(102102,5)
					pc.give_item2(102042, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==3 then
				if pc.countitem(102103) >=5 then
					pc.removeitem(102103,5)
					pc.give_item2(102043, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==4 then
				if pc.countitem(102104) >=5 then
					pc.removeitem(102104,5)
					pc.give_item2(102044, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==5 then
				if pc.countitem(102105) >=5 then
					pc.removeitem(102105,5)
					pc.give_item2(102045, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==6 then
				if pc.countitem(102100) >=5 then
					pc.removeitem(102100,5)
					pc.give_item2(102040, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			else
				return
			end
		end
	end
end
07/12/2013 14:28 |★|554#8528
Quote:
Originally Posted by GoldenLegend View Post
hab nen problem mit ner quest :(

[Only registered and activated users can see links. Click Here To Register...]

Code:
quest tausch begin
	state start begin
		when 9010.chat."Tauschsystem" begin
			say("Hier kannst du die legendaeren Saende gegen")
			say("Rohdiamanten eintauschen")
		local s = select("Blauer Sand","Roter Sand","Gruener Sand","Weisser Sand","Schwarzer Sand","Orangener Sand","Abbrechen")
			if s==1 then
				if pc.countitem(102101) >=5 then
					pc.removeitem(102101,5)
					pc.give_item2(102041, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stück hast!")
				return
			end
			elseif s==2 then
				if pc.countitem(102102) >=5 then
					pc.removeitem(102102,5)
					pc.give_item2(102042, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==3 then
				if pc.countitem(102103) >=5 then
					pc.removeitem(102103,5)
					pc.give_item2(102043, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==4 then
				if pc.countitem(102104) >=5 then
					pc.removeitem(102104,5)
					pc.give_item2(102044, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==5 then
				if pc.countitem(102105) >=5 then
					pc.removeitem(102105,5)
					pc.give_item2(102045, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			elseif s==6 then
				if pc.countitem(102100) >=5 then
					pc.removeitem(102100,5)
					pc.give_item2(102040, 1)
				end
			else
				say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
				say_reward("5 Stueck hast!")
				return
			end
			else
				return
			end
		end
	end
end
PHP Code:
quest tausch begin
    state start begin
        when 9010.chat
."Tauschsystem" begin
            say
("Hier kannst du die legendaeren Saende gegen")
            
say("Rohdiamanten eintauschen")
            
local s select("Blauer Sand","Roter Sand","Gruener Sand","Weisser Sand","Schwarzer Sand","Orangener Sand","Abbrechen")
            if 
s==1 then
                
if pc.countitem(102101) >=5 then
                    pc
.removeitem(102101,5)
                    
pc.give_item2(1020411)
                else
                    
say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
                    
say_reward("5 Stück hast!")
                    return
                
end
            
elseif s==2 then
                
if pc.countitem(102102) >=5 then
                    pc
.removeitem(102102,5)
                    
pc.give_item2(1020421)
                else
                    
say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
                    
say_reward("5 Stueck hast!")
                    return
                
end
            
elseif s==3 then
                
if pc.countitem(102103) >=5 then
                    pc
.removeitem(102103,5)
                    
pc.give_item2(1020431)
                else
                    
say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
                    
say_reward("5 Stueck hast!")
                    return
                
end
            
elseif s==4 then
                
if pc.countitem(102104) >=5 then
                    pc
.removeitem(102104,5)
                    
pc.give_item2(1020441)
                else
                    
say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
                    
say_reward("5 Stueck hast!")
                    return
                
end
            
elseif s==5 then
                
if pc.countitem(102105) >=5 then
                    pc
.removeitem(102105,5)
                    
pc.give_item2(1020451)
                else
                    
say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
                    
say_reward("5 Stueck hast!")
                    return
                
end
            
elseif s==6 then
                
if pc.countitem(102100) >=5 then
                    pc
.removeitem(102100,5)
                    
pc.give_item2(1020401)
                else
                    
say_reward("Du hast nicht genug Sand komme wieder wenn du mindestens")
                    
say_reward("5 Stueck hast!")
                    return
                
end
            
else
                return
            
end
        end
    end
end 
07/12/2013 15:56 rakuz123456#8529
[Only registered and activated users can see links. Click Here To Register...]
PHP Code:
quest tausch begin 
    state start begin 
        when 20011.chat
."Ninja Ruesstung Eintauschen" begin  
            say_title
("Eintauschen"
            
say("Hallo lieber user von ..!"
            
say("Ich bin der Tausch Haendler,"
            
say("Ich tausche bestimmte Ruestungen"
                
wait() 
            
say("Ich habe noch ein paar Dinge zu erledigen"
            
say("deswegen Entscheide dich bitte schnell."
            
say("Du kannst desoefteren zu mir um deine Sachen"
            
say("einzutauschen denn das wuerde mich sehr freuen,"
            
say("da ich ein sehr erfreuter Anti Haendler bin."
            
say(""
            
say(""
            
say(""
            
say(""
                
wait() 
            
say("Also was moechtest du eintauschen ?"
            
local v select ("VIP-Ninja-Zu-VIP-Krieger""VIP-Ninja-Zu-VIP-Sura""VIP-Ninja-Zu-VIP-Schamane""VIP-Krieger-Zu-VIP-Ninja""VIP-Krieger-Zu-VIP-Sura""VIP-Krieger-Zu-VIP-Schamane""Weiter")
            if 
== 1 then 
                
if pc.count_item(12029) >= 1 then 
                    pc
.remove_item(120291
                    
pc.give_item2(120191
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Krieger erhalten"
                else 
                    return 
                
end                     
            
elseif == 2 then 
                
if pc.count_item(12029) >= 1 then 
                    pc
.remove_item(120291
                    
pc.give_item2(120391
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Sura erhalten"
                else 
                    return 
                
end                     
            
elseif == 3 then 
                
if pc.count_item(12029) >= 1 then 
                    pc
.remove_item(120291
                    
pc.give_item2(120491
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Schamane erhalten"
                else 
                    return 
                
end 
            
elseif == 4 then 
                
if pc.count_item(12019) >= 1 then 
                    pc
.remove_item(120191
                    
pc.give_item2(120291
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Ninja erhalten"
                else 
                    return 
                
end 
            
elseif == 5 then 
                
if pc.count_item(12019) >= 1 then 
                    pc
.remove_item(120191
                    
pc.give_item2(120391
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Sura erhalten"
                else 
                    return 
                
end 
            
elseif == 6 then 
                
if pc.count_item(12019) >= 1 then 
                    pc
.remove_item(120191
                    
pc.give_item2(120491
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Schamane erhalten"
                else 
                    return 
                
end 
            
elseif == 7 then 
                local v 
select ("VIP-Sura-Zu-VIP-Krieger""VIP-Sura-Zu-VIP-Ninja""VIP-Sura-Zu-VIP-Schamane""Schamane-Zu-VIP-Ninja""VIP-Schamane-Zu-VIP-Sura""VIP-Schamane-Zu-VIP-Krieger""Abbrechen")
                if 
== 1 then 
                    
if pc.count_item(12039 >= 1 then 
                        pc
.remove_item(120391
                        
pc.give_item2(120191
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Krieger erhalten"
                    else 
                        return 
                    
end 
                
elseif == 2 then 
                    
if pc.count_item(12039) >= 1 then 
                        pc
.remove_item(120391
                        
pc.give_item2(120291
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Ninja erhalten"
                    else 
                        return 
                    
end                     
                
elseif == 3 then 
                    
if pc.count_item(12039) >= 1 then 
                        pc
.remove_item(120391
                        
pc.give_item2(120491
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Schamane erhalten"
                    else 
                        return 
                    
end 
                
elseif == 4 then 
                    
if pc.count_item(12049) >= 1 then 
                        pc
.remove_item(120491
                        
pc.give_item2(120291
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Ninja erhalten"
                    else 
                        return 
                    
end 
                
elseif == 5 then 
                    
if pc.count_item(12049) >= 1 then 
                        pc
.remove_item(120491
                        
pc.give_item2(120391
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Sura erhalten"
                    else 
                        return 
                    
end 
                
elseif == 6 then 
                    
if pc.count_item(12049) >= 1 then 
                        pc
.remove_item(120491
                        
pc.give_item2(120191
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Krieger erhalten"
                    else 
                        return 
                    
end 
                
elseif == 7 then 
                    
return 
                
end 
            end 
        end 
    end 
end 
07/12/2013 16:03 ProfessorEnte#8530
Quote:
Originally Posted by rakuz123456 View Post
[Only registered and activated users can see links. Click Here To Register...]
PHP Code:
quest tausch begin 
    state start begin 
        when 20011.chat
."Ninja Ruesstung Eintauschen" begin  
            say_title
("Eintauschen"
            
say("Hallo lieber user von Kiyoshi2!"
            
say("Ich bin der Tausch Haendler,"
            
say("Ich tausche bestimmte Ruestungen"
                
wait() 
            
say("Ich habe noch ein paar Dinge zu erledigen"
            
say("deswegen Entscheide dich bitte schnell."
            
say("Du kannst desoefteren zu mir um deine Sachen"
            
say("einzutauschen denn das wuerde mich sehr freuen,"
            
say("da ich ein sehr erfreuter Anti Haendler bin."
            
say(""
            
say(""
            
say(""
            
say(""
                
wait() 
            
say("Also was moechtest du eintauschen ?"
            
local v select ("VIP-Ninja-Zu-VIP-Krieger""VIP-Ninja-Zu-VIP-Sura""VIP-Ninja-Zu-VIP-Schamane""VIP-Krieger-Zu-VIP-Ninja""VIP-Krieger-Zu-VIP-Sura""VIP-Krieger-Zu-VIP-Schamane""Weiter")
            if 
== 1 then 
                
if pc.count_item(12029) >= 1 then 
                    pc
.remove_item(120291
                    
pc.give_item2(120191
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Krieger erhalten"
                else 
                    return 
                
end                     
            
elseif == 2 then 
                
if pc.count_item(12029) >= 1 then 
                    pc
.remove_item(120291
                    
pc.give_item2(120391
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Sura erhalten"
                else 
                    return 
                
end                     
            
elseif == 3 then 
                
if pc.count_item(12029) >= 1 then 
                    pc
.remove_item(120291
                    
pc.give_item2(120491
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Schamane erhalten"
                else 
                    return 
                
end 
            
elseif == 4 then 
                
if pc.count_item(12019) >= 1 then 
                    pc
.remove_item(120191
                    
pc.give_item2(120291
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Ninja erhalten"
                else 
                    return 
                
end 
            
elseif == 5 then 
                
if pc.count_item(12019) >= 1 then 
                    pc
.remove_item(120191
                    
pc.give_item2(120391
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Sura erhalten"
                else 
                    return 
                
end 
            
elseif == 6 then 
                
if pc.count_item(12019) >= 1 then 
                    pc
.remove_item(120191
                    
pc.give_item2(120491
                    
say("Ich freue mich das wir ein Geschaeft"
                    
say("machen konnten. Lass dich mal wieder"
                    
say("bei mir blicken falls du etwas"
                    
say("eintauschen moechtest"
                    
say(""
                    
say(""
                    
say_reward("VIP-Schamane erhalten"
                else 
                    return 
                
end 
            
elseif == 7 then 
                local v 
select ("VIP-Sura-Zu-VIP-Krieger""VIP-Sura-Zu-VIP-Ninja""VIP-Sura-Zu-VIP-Schamane""Schamane-Zu-VIP-Ninja""VIP-Schamane-Zu-VIP-Sura""VIP-Schamane-Zu-VIP-Krieger""Abbrechen")
                if 
== 1 then 
                    
if pc.count_item(12039 >= 1 then 
                        pc
.remove_item(120391
                        
pc.give_item2(120191
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Krieger erhalten"
                    else 
                        return 
                    
end 
                
elseif == 2 then 
                    
if pc.count_item(12039) >= 1 then 
                        pc
.remove_item(120391
                        
pc.give_item2(120291
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Ninja erhalten"
                    else 
                        return 
                    
end                     
                
elseif == 3 then 
                    
if pc.count_item(12039) >= 1 then 
                        pc
.remove_item(120391
                        
pc.give_item2(120491
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Schamane erhalten"
                    else 
                        return 
                    
end 
                
elseif == 4 then 
                    
if pc.count_item(12049) >= 1 then 
                        pc
.remove_item(120491
                        
pc.give_item2(120291
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Ninja erhalten"
                    else 
                        return 
                    
end 
                
elseif == 5 then 
                    
if pc.count_item(12049) >= 1 then 
                        pc
.remove_item(120491
                        
pc.give_item2(120391
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Sura erhalten"
                    else 
                        return 
                    
end 
                
elseif == 6 then 
                    
if pc.count_item(12049) >= 1 then 
                        pc
.remove_item(120491
                        
pc.give_item2(120191
                        
say("Ich freue mich das wir ein Geschaeft"
                        
say("machen konnten. Lass dich mal wieder"
                        
say("bei mir blicken falls du etwas"
                        
say("eintauschen moechtest"
                        
say(""
                        
say(""
                        
say_reward("VIP-Krieger erhalten"
                    else 
                        return 
                    
end 
                
elseif == 7 then 
                    
return 
                
end 
            end 
        end 
    end 
end 
Hey,

PHP Code:
local v select ("VIP-Sura-Zu-VIP-Krieger""VIP-Sura-Zu-VIP-Ninja""VIP-Sura-Zu-VIP-Schamane""Schamane-Zu-VIP-Ninja""VIP-Schamane-Zu-VIP-Sura""VIP-Schamane-Zu-VIP-Krieger""Abbrechen")
                if 
== 1 then 
                    
if pc.count_item(12039 >= 1 then 
den Part solltest zu dem aendern:

PHP Code:
local a select ("VIP-Sura-Zu-VIP-Krieger""VIP-Sura-Zu-VIP-Ninja""VIP-Sura-Zu-VIP-Schamane""Schamane-Zu-VIP-Ninja""VIP-Schamane-Zu-VIP-Sura""VIP-Schamane-Zu-VIP-Krieger""Abbrechen")
                if 
== 1 then 
                    
if pc.count_item(12039) >= 1 then 
Die variable war falsch und du hast eine Klammer vergessen.

Mfg,
ProfessorEnte
07/12/2013 16:04 rakuz123456#8531
THX Die quest war von einem Freund Danke sollte die bearbeiten aber fail xD
07/12/2013 16:15 xMichiix#8532
PHP Code:
quest test_123 begin
    state start begin
        when login 
or levelup with pc.get_level() == 40 begin
            set_state
gotoinfomation )
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
                
say("")
                ----
"123456789012345678901234567890123456789012345678901234567890"|
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
wait()
            
set_stategotoguard )
            
end
        end
    end
    state gotoguard begin
        when letter begin
            local v
=find_npc_by_vnum(20355)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Gehe zum Hauptmann")
            
end
        end
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
            
say("Suche den Hauptmann auf der Karte.")
            
say("")
            ----------
"12345678901234567890123456789012345678901234567890"|
            
say_reward("")
            
say_reward("")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Hauptmann:")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("")
            
say("")
            
wait()
            
say("Hauptmann:")
            
say("")
            
clear_letter()

            
set_statestone )
        
end
    state stone begin
        when letter begin
            send_letter
("Zerstöre die Steine")
        
end
        when button 
or info begin
                say_title
("Der ewige Kampf")
                
say("Zerstöre Metinsteine im")
                
say("Orktal um die Lage unter")
                
say("Kontrolle zu bekommen.")
            
end
            when 8001.kill begin
                local pct 
number(1,200)
                if 
pct==5 then
                    clear_letter
()
                    
chat("Genug für den Anfang...")
                    
set_state(guard2)
                
end
            end
        end
    end
    state guard2 begin
        when letter begin
            send_letter
("Zurück zum Hauptmann")
                
local v find_npc_by_vnum(20355)
                if 
!= 0 then
                    target
.vid("target2"v"Hauptmann")
                
end
            end
            when button 
or info begin
                say_title
("")
                
say("Du hast genug Steine zerstört,")
            
end
            when target2
.target.click or 20355.chat."blablabla" begin    
                target
.delete("target2")
                
say_title("")
                
say("")
                
pc.give_item2(192)
                
pc.give_item2(292)
                
pc.give_item2(392)
                
clear_letter()
            
end
        end
    set_state 
__COMPLETE__ )
    
set_quest_state("test_12345","run")
    
end
    state __COMPLETE__ begin
    end
end 
die quest will irgendwie nicht was ist den daran flasch ?

brauch immernoch hilfe
07/12/2013 16:20 ProfessorEnte#8533
Quote:
Originally Posted by Michi1994 View Post
PHP Code:
quest test_123 begin
    state start begin
        when login 
or levelup with pc.get_level() == 40 begin
            set_state
gotoinfomation )
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
                
say("")
                ----
"123456789012345678901234567890123456789012345678901234567890"|
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
say("")
                
wait()
            
set_stategotoguard )
            
end
        end
    end
    state gotoguard begin
        when letter begin
            local v
=find_npc_by_vnum(20355)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Gehe zum Hauptmann")
            
end
        end
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
            
say("Suche den Hauptmann auf der Karte.")
            
say("")
            ----------
"12345678901234567890123456789012345678901234567890"|
            
say_reward("")
            
say_reward("")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Hauptmann:")

            ----
"12345678901234567890123456789012345678901234567890"|
            
say("")
            
say("")
            
wait()
            
say("Hauptmann:")
            
say("")
            
clear_letter()

            
set_statestone )
        
end
    state stone begin
        when letter begin
            send_letter
("Zerstöre die Steine")
        
end
        when button 
or info begin
                say_title
("Der ewige Kampf")
                
say("Zerstöre Metinsteine im")
                
say("Orktal um die Lage unter")
                
say("Kontrolle zu bekommen.")
            
end
            when 8001.kill begin
                local pct 
number(1,200)
                if 
pct==5 then
                    clear_letter
()
                    
chat("Genug für den Anfang...")
                    
set_state(guard2)
                
end
            end
        end
    end
    state guard2 begin
        when letter begin
            send_letter
("Zurück zum Hauptmann")
                
local v find_npc_by_vnum(20355)
                if 
!= 0 then
                    target
.vid("target2"v"Hauptmann")
                
end
            end
            when button 
or info begin
                say_title
("")
                
say("Du hast genug Steine zerstört,")
            
end
            when target2
.target.click or 20355.chat."blablabla" begin    
                target
.delete("target2")
                
say_title("")
                
say("")
                
pc.give_item2(192)
                
pc.give_item2(292)
                
pc.give_item2(392)
                
clear_letter()
            
end
        end
    set_state 
__COMPLETE__ )
    
set_quest_state("test_12345","run")
    
end
    state __COMPLETE__ begin
    end
end 
die quest will irgendwie nicht was ist den daran flasch ?

brauch immernoch hilfe
Ab Zeile 27 beendest du die ganze Quest einfach.
Du solltest mal aufs einruecken etwas mehr achten, dann wirkt alles uebersichtlicher und sowas kann dir nichtmehr passieren! :P

Kurz und knapp, ein end zuviel in Zeile 25. Weiter hab ich noch nicht geschaut.

EDIT:

Bittesehr, waren noch einige end Fehler und manchmal schreibst du außerhalb eines states Befehle...:

PHP Code:
quest test_123 begin
    state start begin
        when login 
or levelup with pc.get_level() == 40 begin
            set_state
gotoinfomation )
        
end
    end
    state gotoinfomation begin
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
            
say("")
            ----
"123456789012345678901234567890123456789012345678901234567890"|
            
say("")
            
say("")
            
say("")
            
say("")
            
say("")
            
say("")
            
say("")
            
say("")
            
wait()
            
set_stategotoguard )
        
end
    end
    state gotoguard begin
        when letter begin
            local v
=find_npc_by_vnum(20355)
            if 
0==v then
            
else
                
target.vid("__TARGET__"v"Gehe zum Hauptmann")
            
end
        end
        when letter begin
            send_letter
("Gehe zum Hauptmann")
        
end
        when button 
or info begin
            say_title
("Gehe zum Hauptmann")
            
say("Suche den Hauptmann auf der Karte.")
            
say("")
            ----------
"12345678901234567890123456789012345678901234567890"|
            
say_reward("")
            
say_reward("")
            
say("")
        
end
        when __TARGET__
.target.click begin
            target
.delete("__TARGET__")
            
say("Hauptmann:")
            ----
"12345678901234567890123456789012345678901234567890"|
            
say("")
            
say("")
            
wait()
            
say("Hauptmann:")
            
say("")
            
clear_letter()
            
set_statestone )
        
end
    end
    state stone begin
        when letter begin
            send_letter
("Zerstöre die Steine")
        
end
        when button 
or info begin
            say_title
("Der ewige Kampf")
            
say("Zerstöre Metinsteine im")
            
say("Orktal um die Lage unter")
            
say("Kontrolle zu bekommen.")
        
end
        when 8001.kill begin
            local pct 
number(1,200)
            if 
pct==5 then
                clear_letter
()
                
chat("Genug für den Anfang...")
                
set_state(guard2)
            
end
        end
    end
    
    state guard2 begin
        when letter begin
            send_letter
("Zurück zum Hauptmann")
            
local v find_npc_by_vnum(20355)
            if 
!= 0 then
                target
.vid("target2"v"Hauptmann")
            
end
        end
        when button 
or info begin
            say_title
("")
            
say("Du hast genug Steine zerstört,")
        
end
        when target2
.target.click or 20355.chat."blablabla" begin    
            target
.delete("target2")
            
say_title("")
            
say("")
            
pc.give_item2(192)
            
pc.give_item2(292)
            
pc.give_item2(392)
            
clear_letter()
            
set_state __COMPLETE__ )
            
set_quest_state("test_12345","run")
        
end
    end
    
    state __COMPLETE__ begin
    end
end 
-nicht getestet nur die ersichtlichen Fehler behoben vom schreiben her.

Mfg,
ProfessorEnte
07/12/2013 19:22 .LuckyStrike#8534
Habe mir gerade ne Quest geschrieben und bekomme folgenden Fehler
Code:
 when doesn't have begin-end clause. (wit)
pvm_quest.quest:3:Error occured on compile pvm_quest.quest
Hier mal die Quest:

PHP Code:
quest pvm_quest begin
    state start begin
        when login 
or levelup wit pc.get_level() >= 85 begin
            set_state
(information)
        
end
    end
    state information begin
        when letter begin
            send letter
("Töte Bosse")
        
end
        when button 
or info begin
            say_title
("Töte Bosse")
            
say("Hallo Abenteurer,")
            
say("Du hast, wie es aussieht, nun die Stärke")
            
say("ein paar Bosse zu Töten, um deine Stärke zu")
            
say("beweisen. Töte 5x den Wasserdrachen, und du")
            
say("wirst kräftig belohnt.")
            
say_reward("Möchtest du die herrausforderung annehmen?")
            
local s select("Ja""Nein")
            if 
== 2 then
                        say
("Okay, schade.")
                        
clear_letter()
                        
set_state (aufgeben)
            else
                
say("Viel Glück!")
                
say_reward("Töte 5 x Wasserdrache")
                
pc.setqf("state1"0)
                
q.set_counter("Wasserdrache"5)
                
set_state(kill)
                
end
            end
        end
        
        state kill begin
            when letter begin
                send_letter
("Töte Bosse")
            
end
            
            when info 
or button begin
                say_title
("Töte Bosse")
                
say_reward("Du hast "..pc.getqf("state1").." von 5 Wasserdrachenn getötet.")
            
end
            
            when 2493.kill begin
                local count1 
pc.getqf("state1") + 1
                
if count <= 5 then
                    pc
.setqf("state1"count1)
                    
q.set_counter("Wasserdrache"count1)
                
end
                
if count1 == 5 then
                set_state
(fertig)
                
end
            end
            
            state fertig begin
                when letter begin
                    send_letter
("Töte Bosse Abgeschlossen")
                
end
                
                when info 
or button begin
                    say_title
("Aufgabe abgeschlossen!")
                    
say("Du hast 5 x Wasserdrache getötet!")
                    
say("Welche Belohung möchtest du wählen?")
                    
local s=select("10% gegen Monster","5% Durchbohren")
                    if 
s== 1 then
                        say_reward
("Du has 10% Stärke gegen Monster bekommen.")
                        
affect.add_collect(apply.ATT_BONUS_TO_MONSTER,5,60*60*24*365*60) -----¡V60¦~
                    else
                        
say_reward("Du hast 5% Durchbohrender Treffer Bonus erhalten.")
                        
affect.add_collect(apply.PENETRATE_PCT,5,60*60*24*365*60) -----¡V60¦~
                    
end
                end
            end
            
            state aufgeben begin
            end
            
            end
        end
    end
end 



LG
07/12/2013 19:38 .Lowbob#8535
Quote:
Originally Posted by .LuckyStrike View Post
Habe mir gerade ne Quest geschrieben und bekomme folgenden Fehler
Code:
 when doesn't have begin-end clause. (wit)
pvm_quest.quest:3:Error occured on compile pvm_quest.quest
Hier mal die Quest:

PHP Code:
quest pvm_quest begin
    state start begin
        when login 
or levelup wit pc.get_level() >= 85 begin
            set_state
(information)
        
end
    end
    state information begin
        when letter begin
            send letter
("Töte Bosse")
        
end
        when button 
or info begin
            say_title
("Töte Bosse")
            
say("Hallo Abenteurer,")
            
say("Du hast, wie es aussieht, nun die Stärke")
            
say("ein paar Bosse zu Töten, um deine Stärke zu")
            
say("beweisen. Töte 5x den Wasserdrachen, und du")
            
say("wirst kräftig belohnt.")
            
say_reward("Möchtest du die herrausforderung annehmen?")
            
local s select("Ja""Nein")
            if 
== 2 then
                        say
("Okay, schade.")
                        
clear_letter()
                        
set_state (aufgeben)
            else
                
say("Viel Glück!")
                
say_reward("Töte 5 x Wasserdrache")
                
pc.setqf("state1"0)
                
q.set_counter("Wasserdrache"5)
                
set_state(kill)
                
end
            end
        end
        
        state kill begin
            when letter begin
                send_letter
("Töte Bosse")
            
end
            
            when info 
or button begin
                say_title
("Töte Bosse")
                
say_reward("Du hast "..pc.getqf("state1").." von 5 Wasserdrachenn getötet.")
            
end
            
            when 2493.kill begin
                local count1 
pc.getqf("state1") + 1
                
if count <= 5 then
                    pc
.setqf("state1"count1)
                    
q.set_counter("Wasserdrache"count1)
                
end
                
if count1 == 5 then
                set_state
(fertig)
                
end
            end
            
            state fertig begin
                when letter begin
                    send_letter
("Töte Bosse Abgeschlossen")
                
end
                
                when info 
or button begin
                    say_title
("Aufgabe abgeschlossen!")
                    
say("Du hast 5 x Wasserdrache getötet!")
                    
say("Welche Belohung möchtest du wählen?")
                    
local s=select("10% gegen Monster","5% Durchbohren")
                    if 
s== 1 then
                        say_reward
("Du has 10% Stärke gegen Monster bekommen.")
                        
affect.add_collect(apply.ATT_BONUS_TO_MONSTER,5,60*60*24*365*60) -----¡V60¦~
                    else
                        
say_reward("Du hast 5% Durchbohrender Treffer Bonus erhalten.")
                        
affect.add_collect(apply.PENETRATE_PCT,5,60*60*24*365*60) -----¡V60¦~
                    
end
                end
            end
            
            state aufgeben begin
            end
            
            end
        end
    end
end 



LG
PHP Code:
quest pvm_quest begin
    state start begin
        when login 
or levelup wit pc.get_level() >= 85 begin
            set_state
(information)
        
end
    end
    state information begin
        when letter begin
            send letter
("Töte Bosse")
        
end
        when button 
or info begin
            say_title
("Töte Bosse")
            
say("Hallo Abenteurer,")
            
say("Du hast, wie es aussieht, nun die Stärke")
            
say("ein paar Bosse zu Töten, um deine Stärke zu")
            
say("beweisen. Töte 5x den Wasserdrachen, und du")
            
say("wirst kräftig belohnt.")
            
say_reward("Möchtest du die herrausforderung annehmen?")
            
local s select("Ja""Nein")
            if 
== 2 then
                        say
("Okay, schade.")
                        
clear_letter()
                        
set_state (aufgeben)
            else
                
say("Viel Glück!")
                
say_reward("Töte 5 x Wasserdrache")
                
pc.setqf("state1"0)
                
q.set_counter("Wasserdrache"5)
                
set_state(kill)
                
end
            end
        end
    end
        
        state kill begin
            when letter begin
                send_letter
("Töte Bosse")
            
end
            
            when info 
or button begin
                say_title
("Töte Bosse")
                
say_reward("Du hast "..pc.getqf("state1").." von 5 Wasserdrachenn getötet.")
            
end
            
            when 2493.kill begin
                local count1 
pc.getqf("state1") + 1
                
if count <= 5 then
                    pc
.setqf("state1"count1)
                    
q.set_counter("Wasserdrache"count1)
                
end
                
if count1 == 5 then
                set_state
(fertig)
                
end
            end
        end
            
            state fertig begin
                when letter begin
                    send_letter
("Töte Bosse Abgeschlossen")
                
end
                
                when info 
or button begin
                    say_title
("Aufgabe abgeschlossen!")
                    
say("Du hast 5 x Wasserdrache getötet!")
                    
say("Welche Belohung möchtest du wählen?")
                    
local s=select("10% gegen Monster","5% Durchbohren")
                    if 
s== 1 then
                        say_reward
("Du has 10% Stärke gegen Monster bekommen.")
                        
affect.add_collect(apply.ATT_BONUS_TO_MONSTER,5,60*60*24*365*60) -----¡V60¦~
                    else
                        
say_reward("Du hast 5% Durchbohrender Treffer Bonus erhalten.")
                        
affect.add_collect(apply.PENETRATE_PCT,5,60*60*24*365*60) -----¡V60¦~
                    
end
                end
            end
            
            state aufgeben begin
            end
        end
    end
end