HTML Code:
----------------------------------------------------
--Tempel des Drachen
--By Lucifero/Kriegergeist^^
--Letzte Änderung am 10.03.2012 um 10:30Uhr
----------------------------------------------------
quest tempel_of_dragon begin
state start begin
when logout with pc.get_map_index() == 408 and pc.getqf("drachenraumerlaubnis") == 1 begin
game.set_event_flag("playerinroom", game.get_event_flag("playerinroom")-1)
pc.setqf("dpbelohnung", 0)
pc.setqf("drachenraumerlaubnis", 0)
end
when 30131.chat."Tempel des Drachen" begin
if game.get_event_flag("drachenraumstatus") == 0 then
game.set_event_flag("drachenraumstatus", 1)
say_title(""..mob_name(30131).."")
say("")
say("Ihr wollt also Beran-Setaou bekämpfen?")
say("Das ist eine schwere Stück Arbeit, ohne")
say("eine starke Gruppe oder Gilde schaffste das")
say("nicht. Wollt ihr es wirklich versuchen?")
say("")
local a = select("Wir sind bereit!", "Abbrechen")
if a == 1 then
say_title(""..mob_name(30131).."")
say("")
say("Gib hier ein Passwort ein, das auch")
say("nur deine Gruppenmitglieder oder Gildenmitglieder")
say("mit dir kämpfen können. Vergiss nicht, ihnen das")
say("Passwort zugeben.")
say_reward("Achtung: Aber nur Zahlen als Passwort eingeben!")
local passwort = tonumber(input(""))
if passwort and passwort <= 999999999 then
game.set_event_flag("drachenraum_passwort",passwort)
say_title(""..mob_name(30131).."")
say("")
say("Das Passwort lautet:")
say_reward(""..passwort.."")
chat("Das Passwort für den Drachenraum: "..passwort.."")
say("")
say("Jetzt ist es soweit!")
say("Der Kampf wird lange dauern. Aber wen ihr nicht")
say("in 30 Minuten zurück seit, hole ich euch da raus.")
say("Viel glück!")
say("")
regen_in_map(408, "data/dungeon/drachenraum/1.txt")
regen_in_map(408, "data/dungeon/drachenraum/2.txt")
game.set_event_flag("drachenraumstatus", 2)
pc.setqf("drachenraumerlaubnis", 1)
wait()
pc.warp(2801562, 2795021)
else
say_title(""..mob_name(30131).."")
say("")
say("Das Passwort ist entweder zu kurz oder zu lang!")
say("Versuch es nochmal!")
game.set_event_flag("drachenraumstatus", 0)
end
elseif a == 2 then
game.set_event_flag("drachenraumstatus", 0)
return
end
elseif game.get_event_flag("drachenraumstatus") == 2 then
say_title(""..mob_name(30131).."")
say("")
say("Tut mir Leid, der Raum ist reseviert.")
say("Willst du trotzdem gegen Beran-Setaou kämpfen?")
say("")
local b = select("Ich will kämpfen!", "Abbrechen")
if b == 1 then
say_title(""..mob_name(30131).."")
say("")
say("Mal sehen ob du das Passwort kennst!")
say("Wenn du das Passwort für den Zugang hast,")
say("dan lass ich dich eintreten.")
say("")
local passwort = tonumber(input(""))
if game.get_event_flag("drachenraum_passwort") == passwort then
say_title(""..mob_name(30131).."")
say("")
say("Das Passwort stimmt überein.")
say("Ich bringe dich in den Tempel des Drachen.")
pc.setqf("drachenraumerlaubnis", 1)
wait()
pc.warp(2801562, 2795021)
else
say_title(""..mob_name(30131).."")
say("")
say("Das Passwort stimmt nicht überein.")
return
end
elseif b == 2 then
return
end
else
say_title(""..mob_name(30131).."")
say("")
say("Siehste du nicht das ich gerade rede?")
say("Warte noch!")
end
end
when 30131.chat."Drachenraum Configuration!" with pc.is_gm() begin
say_title(""..mob_name(30131).."")
say("")
say("Ist etwa ein Fehler aufgetreten durch ein Reboot?")
say("Soll ich schnell diesen Fehler beheben?")
local z = select("Fehler beheben!", "Abbrechen")
if z == 2 then
return
elseif z == 1 then
clear_server_timer("drachenraumzu1")
clear_server_timer("drachenraumzu2")
clear_server_timer("drachenraumzu3")
clear_server_timer("drachenraumzu4")
clear_server_timer("drachenraumspawn")
clear_server_timer("drachenraumspawn1")
pc.setqf("dpbelohnung", 0)
pc.setqf("drachenraumerlaubnis", 0)
game.set_event_flag("dragondead", 0)
game.set_event_flag("drachenraumstatus", 0)
game.set_event_flag("playerinroom", 0)
kill_all_in_map(408)
kill_all_in_map(408)
warp_all_to_village(408, 1)
say_title(""..mob_name(30131).."")
say("")
say("Der Fehler müsste behoben sein.")
end
end
when login with pc.get_map_index() == 408 begin
if game.get_event_flag("drachenraumtimerset") == 1 and pc.getqf("drachenraumerlaubnis") == 1 then
notice("Schnell!")
notice("Der Kampf gegen Beran-Setaou hat schon begonnen.")
game.set_event_flag("playerinroom", game.get_event_flag("playerinroom")+1)
elseif game.get_event_flag("drachenraumtimerset") == 0 and pc.getqf("drachenraumerlaubnis") == 1 then
game.set_event_flag("drachenraumtimerset", 1)
game.set_event_flag("playerinroom", 1)
notice("Jetzt liegt es an dir und deinem Team!")
notice("Der Kampf gegen Beran-Setaou hat begonnen.")
server_timer("drachenraumspawn", 120)
server_timer("drachenraumzu1", 600)
else
warp_to_village()
end
end
when drachenraumspawn.server_timer with game.get_event_flag("drachenraumstatus") == 2 and game.get_event_flag("playerinroom") >= 1 begin
server_timer("drachenraumspawn1", 120)
regen_in_map(408, "data/dungeon/drachenraum/2.txt")
end
when drachenraumspawn1.server_timer with game.get_event_flag("drachenraumstatus") == 2 and game.get_event_flag("playerinroom") >= 1 begin
server_timer("drachenraumspawn", 120)
regen_in_map(408, "data/dungeon/drachenraum/2.txt")
end
when drachenraumzu1.server_timer with game.get_event_flag("drachenraumstatus") == 2 begin
notice_in_map(408 ,"Ihr habt noch 20 Minuten Zeit.")
notice_in_map(408 ,"Viel Glück!")
server_timer("drachenraumzu2", 600)
end
when drachenraumzu2.server_timer with game.get_event_flag("drachenraumstatus") == 2 begin
notice_in_map(408 ,"Ihr habt noch 10 Minuten Zeit.")
notice_in_map(408 ,"Viel Glück!")
server_timer("drachenraumzu3", 300)
end
when drachenraumzu3.server_timer with game.get_event_flag("drachenraumstatus") == 2 begin
notice_in_map(408 ,"Ihr habt noch 5 Minuten Zeit.")
notice_in_map(408 ,"Viel Glück!")
server_timer("drachenraumzu4", 300)
end
when drachenraumzu4.server_timer with game.get_event_flag("drachenraumstatus") == 2 begin
if game.get_event_flag("dragondead") == 1 then
pc.setqf("dpbelohnung", 0)
pc.setqf("drachenraumerlaubnis", 0)
game.set_event_flag("dragondead", 0)
game.set_event_flag("drachenraumstatus", 0)
game.set_event_flag("drachenraumtimerset", 0)
notice_in_map("Ihr braucht zu lange.")
notice_in_map("Ich hole euch jetzt da raus, es hat kein Sinn mehr.")
kill_all_in_map(408)
kill_all_in_map(408)
clear_server_timer("drachenraumzu1")
clear_server_timer("drachenraumzu2")
clear_server_timer("drachenraumzu3")
clear_server_timer("drachenraumzu4")
clear_server_timer("drachenraumspawn")
clear_server_timer("drachenraumspawn1")
warp_all_to_village(408, 2)
else
pc.setqf("dpbelohnung", 0)
pc.setqf("drachenraumerlaubnis", 0)
game.set_event_flag("dragondead", 0)
game.set_event_flag("drachenraumstatus", 0)
game.set_event_flag("drachenraumtimerset", 0)
notice_in_map("Dass kann nicht sein, er ist wiederauferstanden.")
notice_in_map("Ich hole euch jetzt da raus!")
kill_all_in_map(408)
kill_all_in_map(408)
clear_server_timer("drachenraumzu1")
clear_server_timer("drachenraumzu2")
clear_server_timer("drachenraumzu3")
clear_server_timer("drachenraumzu4")
clear_server_timer("drachenraumspawn")
clear_server_timer("drachenraumspawn1")
warp_all_to_village(408, 2)
end
end
when kill with pc.get_map_index() == 408 and game.get_event_flag("drachenraumstatus") == 2 begin
if npc.race == 2494 then
notice_in_map("Ihr habt Beran-Setaou getötet.")
notice_in_map("Seine schreckens Herrschaft ist endgültig vorbei.")
game.set_event_flag("dragondead", 1)
game.set_event_flag("playerinroom", 0)
clear_server_timer("drachenraumzu1")
clear_server_timer("drachenraumzu2")
clear_server_timer("drachenraumzu3")
clear_server_timer("drachenraumzu4")
mob.spawn(23004, 154, 173, 1)
pc.setqf("dpbelohnung", 0)
server_timer("drachenraumzu4", 60)
else
end
end
--------------------------------------
-- Dungeonpunkte verteilung
--------------------------------------
when 23004.chat."Dungeonpunkte" with pc.get_map_index() == 408 and game.get_event_flag("drachenraumstatus") == 2 begin
if pc.getqf("dpbelohnung") == 0 then
say_title("Gelehrter:")
say("")
say("Herzlichen Glückwunsch,")
say("du hast das Dungeon bezwungen, dafür bekommst")
say("du eine Belohnung.")
say("Du erhälst:")
say_reward("30 Dungeonpunkte")
say("Viel glück bei deinen Abenteuer.")
chat("Du hast 30 Dungeonpunkte erhalten!")
pc.setqf("dungeonpoint", pc.getqf("dungeonpoint")+30)
pc.setqf("dpbelohnung", 1)
wait()
say_title("Gelehrter:")
say("")
say("Wenn du willst, kann ich dich in eine der")
say("drei Städte teleportieren.")
say_reward("In welche Stadt soll ich dich teleportiren?")
local z = select("Shinsoo Reich!","Chunjo Reich!","Jinno Reich!","Abbrechen!")
if z == 1 then
pc.setqf("dpbelohnung", 0)
pc.warp (469300, 964200)
elseif z == 2 then
pc.setqf("dpbelohnung", 0)
pc.warp (55700, 157900)
elseif z == 3 then
pc.setqf("dpbelohnung", 0)
pc.warp (969600, 278400)
elseif z == 4 then
return
end
else
say_title("Gelehrter:")
say("")
say("Du hast bereits deine Belohnung erhalten.")
say("Ich kann dich aber in eine der drei")
say("Städte teleportieren")
say_reward("In welche Stadt soll ich dich teleportiren?")
local y = select("Shinsoo Reich!","Chunjo Reich!","Jinno Reich!","Abbrechen!")
if y == 1 then
pc.setqf("dpbelohnung", 0)
pc.warp (469300, 964200)
elseif y == 2 then
pc.setqf("dpbelohnung", 0)
pc.warp (55700, 157900)
elseif y == 3 then
pc.setqf("dpbelohnung", 0)
pc.warp (969600, 278400)
elseif y == 4 then
return
end
end
end
end
end