Code:
quest oxevent_manager begin
state start begin
when letter with pc.get_map_index()==113 begin
send_letter("OX verlassen")
end
when button or info begin
say_title("OX Wettbewerb")
say("Den Wettbewerb verlassen?")
local s=select("Ja", "Nein")
if s==2 then
send_letter("OX verlassen")
return
end
local empire = pc.get_empire()
if empire== 1 then
pc.warp(433300, 219600)
elseif empire == 2 then
pc.warp(431500, 209200)
elseif empire == 3 then
pc.warp(439800, 211000)
end
end
when 20011.chat."Der OX-Wettbewerb" begin
say_title("Uriel")
say("Hey du da")
say("Ja, ja, genau du - komm mal her!")
say("Es gibt einen Test, genannt")
say("OX-Wettbewerb. Dort gibt es tolle")
say("sachen zu gewinnen!")
wait()
if game.get_event_flag("oxevent_status") == 0 then
say_title("Uriel")
say("Wenn der Wettbewerb startet lass ich dich")
say("es wissen, also steh schonmal in den")
say("Schusslöchern und lern ordnetlich!")
elseif game.get_event_flag("oxevent_status") == 1 then
say_title("Uriel")
say("Möchtest du teilnehmen?")
say("Du kannst natürlich auch nur zugucken...")
local s = select("Teilnehmen", "Zugucken", "Abbrechen")
if s == 1 then
say_title("Uriel")
say("Du möchtest teilnehmen?")
say("Okay - Dann los.")
wait()
pc.warp(896500, 24600)
elseif s == 2 then
say_title("Uriel")
say("Zugucken?")
say("Okay - wenn du dir die Fragen")
say("nicht zutraust.")
wait()
pc.warp(896300, 28900)
end
elseif game.get_event_flag("oxevent_status") == 2 then
say_title("Uriel")
say("Der Wettbewerb ist bereits gestartet.")
say("Du kannst nichtmehr dran teilnehmen!")
say("Vielleicht beginnt bald ein neuer")
say("Wettbewerb.")
say("Du kannst nurnoch zugucken!")
say("Möchtest du zuschauen?")
local s = select("Zugucken", "Abbrechen")
if s == 1 then
say_title("Uriel")
say("Hmm, Hmm, du willst zuschauen?")
say("Bei diesen Wettbewerben zuzugucken bringt")
say("dir auch Vorteile!")
wait()
pc.warp(896300, 28900)
end
end
end
when 20358.chat."GM: OX-Panel" with pc.is_gm() begin
local stat = oxevent.get_status()
if stat == 0 then
say_title("OX Wettbewerb")
say("OX starten?")
local s = select("Ja", "Nein")
if s==2 then return end
local v = oxevent.open()
if v == 0 then
say_title("OX Wettbewerb")
say("Konnte die oxquiz.lua nicht laden.")
return
elseif v == 1 then
say_title("OX Wettbewerb")
say("OX wurde erfolgreich gestartet.")
server_timer("automatic1", 10*60, 113)
notice_all("Macht euch für einen OX-Wettbewerb bereit!")
notice_all("Spricht mit Uriel um dran teilzunehmen")
else
say("Error1")
return
end
elseif stat == 1 then
say_title("OX Wettbewerb")
say("Tore noch offen.")
say("Es sind "..oxevent.get_attender().." Spieler auf der Map")
say("")
local s = select("Tore schließen", "Zurück")
if s == 1 then
notice_all("Die OX Tore wurden geschlossen")
oxevent.close()
end
elseif stat == 2 then
say_title("OX Wettbewerb")
say("Auswahlmöglischkeiten:")
local s = select("OX fragen", "OX Preis", "OX schließen", "OX abbrechen", "Zurück")
if s == 1 then
local v = oxevent.quiz(1, 30)
if v == 0 then
say_title("OX Wettbewerb")
say("Error2")
return
else
say_title("OX Wettbewerb")
say("Frage erfolgreich gestellt!")
return
end
elseif s == 2 then
say_title("OX Wettbewerb")
say("Bitte Item ID eingeben.")
local item_vnum = input()
say_title("OX Wettbewerb")
say("Bitte Item Anzahl eingeben.")
local item_count = input()
oxevent.give_item(item_vnum, item_count)
say_title("OX Wettbewerb")
say("An "..oxevent.get_attender().." Spieler wurden "..item_count.."x")
say(item_name(item_vnum).." ausgegeben.")
notice_all("Wir haben einen Gewinner! Er erhielt "..item_count.."x "..item_name(item_vnum))
elseif s == 3 then
oxevent.end_event()
notice_all("Der OX-Wettbewerb ist vorbei.")
notice_all("Die Teilnehmer werden in ihre Städte teleportiert")
setskin(0)
elseif s == 4 then
say_title("OX Wettbewerb")
say("Das Abbrechen kann zu problemen führen.")
say("Wirklich abbrechen?")
local s = select("Ja", "Nein")
if s == 1 then
oxevent.end_event_force()
end
elseif s == 5 then
return
end
elseif stat == 3 then
say_title("OX Wettbewerb")
say("Momentan ist eine Frage gestellt.")
else
say_title("OX Wettbewerb")
say("Error4")
return
end
end
end
end