Sobald ein GM den Event startet können sich Spieler ab level 75 in die Wüste Teleportieren (Beides beim Schlachten-Verwalter).
Danach Geht es darum welches Reich als erstes 500 feindliche Spieler getötet hat. Ist das Ziel erreicht werden alle aussehr das Gewinner-Reich aus der Wüste Teleportiert und es Spawnen auf der ganzen Map verteilt Metins danach hat das Gewinner reich 30Minuten zeit diese zu töten. Ist das geschehen oder der Timer abgelaufen dann werden alle Spieler in ihr Reich zurück Teleportiert und alle Metins werden aus der Wüste entfernt.
Eventuell hat die Quest noch einige Fehler falls irgendwelche auftreten sagt es ich werde sie korrigieren ich habe leider keine Zeit sie zu testen.
MFG TheGame
PS der Ordner desert_war kommt in den Map Ordner und die Quest ist ja klar wo sie hinkommt hf
Code:
quest desert_battle begin
state start begin
when 20352.chat."Wüstenschlacht" begin
if pc.get_level()>=75 then
if game.get_event_flag("deserton") == 0 then
say("Die Wüstenschlacht findet derzeit nicht statt.")
return
elseif game.get_event_flag("deserton") == 2 then
say("Die Wüstenschlacht befindet sich in der Endphase du kannst nicht beitreten.")
return
end
say("Die Schlacht in der Wüste ist im vollen gange,")
say("möchtest du beitreten oder Informationen erhalten?")
local info = select("Auf in die Wüste", "Informationen", "Abbrechen")
if info == 3 then
return
elseif info == 2 then
say("Das Ziel der Wüstenschlacht ist es als erstes reich 500")
say("Gegner aus den anderen Reichen zu besiegen.")
say("")
say("Das Reich, welches gewinnt erhält am schluss eine Belohnung")
say("in Form einiger Metinsteine")
local teilnehmen = select("Teilnehmen", "Abbrechen")
if teilnehmen == 2 then
return
elseif teilnehmen == 1 then
if pc.get_empire() == 1 then
pc.warp(217800, 627200)
elseif pc.get_empire() == 2 then
pc.warp(221900, 502700)
elseif pc.get_empire() == 3 then
pc.warp(344000, 502500)
else
say("Bei deinem Reich gab es einen Fehler!")
end
end
elseif info == 1 then
if pc.get_empire() == 1 then
pc.warp(217800, 627200)
elseif pc.get_empire() == 2 then
pc.warp(221900, 502700)
elseif pc.get_empire() == 3 then
pc.warp(344000, 502500)
else
say("Bei deinem Reich gab es einen Fehler!")
end
end
else
say("Du bist noch nicht Level 75")
return
end
end
when kill with npc.get_empire() != pc.get_empire() and npc.is_pc() and pc.get_map_index() == X and game.get_event_flag("turnieron") == 1 begin --X durch die ID der Map ersetzen
if game.get_event_flag("turnier"..pc.get_empire().."punkte") == 0 then
game.set_event_flag("turnier"..pc.get_empire().."punkte", 1)
else
game.set_event_flag("turnier"..pc.get_empire().."punkte", game.get_event_flag("turnier"..pc.get_empire().."punkte")+1)
end
if game.get_event_flag("turnier"..pc.get_empire().."punkte") >= 500 then
game.set_event_flag("reich"..pc.get_empire().."status", 1)
if pc.get_empire() == 1 then
notice_all("Das Rote Reich hat in der Wüste dominiert.")
elseif pc.get_empire() == 2 then
notice_all("Das Gelbe Reich hat in der Wüste dominiert.")
elseif pc.get_empire() == 2 then
notice_all("Das Blaue Reich hat in der Wüste dominiert.")
end
game.set_event_flag("deserton", 2)
end
end
when game.get_event_flag("deserton") == 2 begin
notice_all("Das Turnier geht nun in die Endphase.")
notice_all("Für das Siegerreich spawnen nun Metins")
notice_all("in der Mitte der Wüste.")
regen_in_map(183, "locale /germany/map/desert_war/regen_metins.txt")
say_in_map(183, "Ihr habt nun 30 Minuten Zeit die Metins in der Wüste")
say_in_map(183, "zu finden und zu zerstören. Viel Spass!")
timer("cooldown", 60*30)
end
when login or levelup or button or info or unmount or mount or kill with game.get_event_flag("turnieron") == 2 and pc.get_map_index() == 183 begin
if game.get_event_flag("reich"..pc.get_empire().."status") == 1 then
return
elseif pc.is_gm() then
return
else
if pc.get_empire == 1 then
pc.warp(474200, 954400)
elseif pc.get_empire == 2 then
pc.warp(63200, 166100)
elseif pc.get_empire == 3 then
pc.warp(960100, 268700)
else
say("Du konntest auf grund deines Reiches nicht zurückteleportiert werden.")
say("Bitte Teleportier dich selber zurück")
end
end
end
when login or levelup or button or info or unmount or mount or kill with game.get_event_flag("turnieron") == 1 and pc.get_map_index() == 183 and pc.get_level<75 begin
if pc.get_empire == 1 then
pc.warp(474200, 954400)
elseif pc.get_empire == 2 then
pc.warp(63200, 166100)
elseif pc.get_empire == 3 then
pc.warp(960100, 268700)
end
end
when "cooldown".timer begin
cleartimer("cooldown")
game.set_event_flag("deserton", 0)
game.set_event_flag("turnier1punkte", 0)
game.set_event_flag("turnier2punkte", 0)
game.set_event_flag("turnier3punkte", 0)
game.set_event_flag("reich1status", 0)
game.set_event_flag("reich2status", 0)
game.set_event_flag("reich3status", 0)
notice_all("Die Wüstenschlacht hat ein Ende gefunden.")
wait()
warp_all_to_village(183, 1)
kill_all_in_map(183)
end
when 20352.chat."Wüstenschlacht-Einstellungen" with pc.is_gm() begin
say("Was möchtest du machen?")
local what = select("Wüstenschlacht starten", "Wüstenschlacht Beenden", "Abbrechen")
if what == 3 then
return
elseif what == 2 then
game.set_event_flag("deserton", 0)
game.set_event_flag("turnier1punkte", 0)
game.set_event_flag("turnier2punkte", 0)
game.set_event_flag("turnier3punkte", 0)
game.set_event_flag("reich1status", 0)
game.set_event_flag("reich2status", 0)
game.set_event_flag("reich3status", 0)
notice_all("Die Wüstenschlacht hat ein Ende gefunden.")
elseif what == 1 then
game.set_event_flag("deserton", 1)
notice_all("Die Wüstenschlacht wurde von "..pc.get_name.." gestartet.")
notice_all("Begebt euch zum Schlachtenverwalter.")
end
end
end






