forked from metin2/server
420 lines
12 KiB
Plaintext
420 lines
12 KiB
Plaintext
|
quest kill_straydog begin
|
|||
|
state start begin
|
|||
|
when 20008.chat."L<>stige Wildhunde!!" with number(1, 10)==1 and pc.level>=25 begin
|
|||
|
----"12345678901234567890123456789012345678901234567890"|
|
|||
|
say_title("Octavio:")
|
|||
|
say("")
|
|||
|
say("Sei willkommen!Du hast sicher schon von der")
|
|||
|
say("Wildhund Plage geh<65>rt.Die Viecher machen uns ")
|
|||
|
say("schwer zu schaffen, sogar das Dorf haben sie")
|
|||
|
say("schon heimgesucht, man ist nirgends vor ihnen")
|
|||
|
say("sicher, deshalb habe ich einen Wettbewerb")
|
|||
|
say("ausgerufen. Jage soviele Wildhunde wie m<>glich")
|
|||
|
say("in k<>rzester Zeit. Wir erwarten hohen Besuch,")
|
|||
|
say("deshalb ist Eile geboten. Wenn Du schnell bist,")
|
|||
|
say("bekommst Du auch eine Belohnung.")
|
|||
|
local b=select("Du willst teilnehmen", "Du hast kein Interesse?")
|
|||
|
if 1==b then
|
|||
|
say("Ja, ich werde teilnehmen.")
|
|||
|
say("Ich mach mich sofort an die Arbeit.")
|
|||
|
say("Ich komme zur<75>ck, sobald ich fertig bin.")
|
|||
|
elseif 2==b then
|
|||
|
say("Ich habe schon genug zu tun.")
|
|||
|
say("Ich kann nicht noch mehr tun.")
|
|||
|
say("Ihr m<>sst schon jemand anderen finden.")
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
state recv begin
|
|||
|
when login with number(1, 10)==1 and pc.level>=25 and pc.level<=35 begin
|
|||
|
setstate(join)
|
|||
|
end
|
|||
|
when 20008.chat."Wie steht es mit der Vorbereitung um den Wettbewerb zur Wildhundejagd?" begin
|
|||
|
say_title("Octavio:")
|
|||
|
say("")
|
|||
|
say("Ich bin noch nicht soweit.")
|
|||
|
say("Das ist aber nicht einfach.")
|
|||
|
say("Ich werde Dir bald ein Ergebnis bringen")
|
|||
|
end
|
|||
|
end
|
|||
|
state join begin
|
|||
|
when letter begin
|
|||
|
setskin(NOWINDOW)
|
|||
|
makequestbutton("Einladung")
|
|||
|
q.set_title("Die Einladung zum Wettbewerb der Wildhundejagd")
|
|||
|
q.start()
|
|||
|
end
|
|||
|
when button begin
|
|||
|
say_title("Die Einladung zum Wettbewerb der Wildhundejagd")
|
|||
|
say("")
|
|||
|
say("F<>r 1000 Wildhunde, je nach Zeit,")
|
|||
|
say("gibt es folgende Geldpreise")
|
|||
|
say("")
|
|||
|
say(" 1. Rang : 300000 yang (Innerhalb von 30 Minuten)")
|
|||
|
say(" 2. Rang : 100000 yang (Innerhalb von 40 Minuten)")
|
|||
|
say(" 3. Rang : 50000 yang (Innerhalb von 50 Minuten)")
|
|||
|
say("")
|
|||
|
say(" - Der Gastgeber Octavio -")
|
|||
|
say("")
|
|||
|
say("M<>chtest du an dem Wettbewerb zur Wildhundejagd von Octavio teilnehmen?")
|
|||
|
local b=select("die Einladung", "teilnehmen", "nicht teilnehmen")
|
|||
|
if 1==b then
|
|||
|
if pc.getqf("best_time")==0 then
|
|||
|
say("Du hast noch nicht daran teilgenommen")
|
|||
|
else
|
|||
|
say("Die 1000 Wildhundejagd")
|
|||
|
say("")
|
|||
|
say("Die k<>rzeste Jagdzeit "..(math.floor(pc.getqf("best_time")/60)).." Minute")
|
|||
|
say("Die vorherige Jagdzeit "..(math.floor(pc.getqf("prev_time")/60)).." Minute")
|
|||
|
end
|
|||
|
elseif 2==b then
|
|||
|
setstate(desc)
|
|||
|
elseif 3==b then
|
|||
|
setstate(start)
|
|||
|
q.done()
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
end
|
|||
|
when info begin
|
|||
|
say_title("Die Einladung zum Wettbewerb zur Wildhundejagd")
|
|||
|
say("")
|
|||
|
say("Fur 1000 Wildhunde, je nach Zeit,")
|
|||
|
say("gibt es folgende Geldpreise")
|
|||
|
say("")
|
|||
|
say(" 1. Rang : 300000 yang (Innerhalb von 30 Minuten)")
|
|||
|
say(" 2. Rang : 100000 yang (Innerhalb von 40 Minuten)")
|
|||
|
say(" 3. Rang : 50000 yang (Innerhalb von 50 Minuten)")
|
|||
|
say("")
|
|||
|
say(" - Der Gastgeber Octavio -")
|
|||
|
say("")
|
|||
|
say("M<>chtest du an dem Wettbewerb zur Wildhundejagd von Octavio teilnehmen?")
|
|||
|
say("")
|
|||
|
local b=select("die Einladung", "teilnehmen", "nicht teilnehmen")
|
|||
|
if 1==b then
|
|||
|
if pc.getqf("best_time")==0 then
|
|||
|
say("Du hast noch nicht daran teilgenommen")
|
|||
|
else
|
|||
|
say_title("Die 1000 Wildhundejagd")
|
|||
|
say("")
|
|||
|
say("Die k<>rzeste Jagdzeit "..(math.floor(pc.getqf("best_time")/60)).." Minute")
|
|||
|
say("Die vorherige Jagdzeit "..(math.floor(pc.getqf("prev_time")/60)).." Minute")
|
|||
|
end
|
|||
|
elseif 2==b then
|
|||
|
setstate(desc)
|
|||
|
elseif 3==b then
|
|||
|
setstate(start)
|
|||
|
q.done()
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
state desc begin
|
|||
|
when letter begin
|
|||
|
setskin(NOWINDOW)
|
|||
|
makequestbutton("Anleitung")
|
|||
|
q.set_title("Die Anleitung zur Wildhundejagd")
|
|||
|
q.start()
|
|||
|
end
|
|||
|
when button begin
|
|||
|
say_title("Die Anleitung zur Wildhundejagd")
|
|||
|
say("")
|
|||
|
say("Das ist sehr einfach!")
|
|||
|
say("Jage so schnell wie m<>glich 1000 Wildhunde")
|
|||
|
say("Die ersten drei Pl<50>tze werden belohnt.")
|
|||
|
say("Bitte, mit allen Besten!")
|
|||
|
say("")
|
|||
|
say("Es gibt aber nur drei mal Chance!!")
|
|||
|
say("")
|
|||
|
say("[beginnen] wenn man beginnen dr<64>ckt, wird protokolliert")
|
|||
|
say("")
|
|||
|
local b=select("Beginnen", "Anhalten", "Aufgeben")
|
|||
|
if 1==b then
|
|||
|
pc.setqf("life", 2)
|
|||
|
setstate(game)
|
|||
|
elseif 2==b then
|
|||
|
elseif 3==b then
|
|||
|
setstate(start)
|
|||
|
q.done()
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
end
|
|||
|
when info begin
|
|||
|
say_title("Die Anleitung zur Wildhundejagd")
|
|||
|
say("")
|
|||
|
say("Das ist sehr einfach!")
|
|||
|
say("Jage so schnell wie m<>glich 1000 Wildhunde")
|
|||
|
say("Die ersten drei Pl<50>tze werden belohnt")
|
|||
|
say("Bitte, mit allen Besten!")
|
|||
|
say("")
|
|||
|
say("Es gibt aber nur drei mal Chance!!")
|
|||
|
say("")
|
|||
|
say("[beginnen] wenn man beginnen dr<64>ckt, wird protokolliert")
|
|||
|
say("")
|
|||
|
local b=select("Beginnen", "Anhalten", "Aufgeben")
|
|||
|
if 1==b then
|
|||
|
pc.setqf("life", 2)
|
|||
|
setstate(game)
|
|||
|
elseif 2==b then
|
|||
|
elseif 3==b then
|
|||
|
setstate(start)
|
|||
|
q.done()
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
state game begin
|
|||
|
when 101.party_kill begin
|
|||
|
pc.setqf("kill_count", pc.getqf("kill_count")+1)
|
|||
|
q.set_counter("Die Zahl der restlichen Wildhunde", 1000-pc.getqf("kill_count"))
|
|||
|
end
|
|||
|
when enter begin
|
|||
|
pc.setqf("start_time", get_time())
|
|||
|
pc.setqf("kill_count", 0)
|
|||
|
end
|
|||
|
when leave begin
|
|||
|
q.done()
|
|||
|
end
|
|||
|
when letter begin
|
|||
|
setskin(NOWINDOW)
|
|||
|
makequestbutton("Jage die 1000 Wildhunde!")
|
|||
|
q.set_title("Jage die 1000 Wildhunde!")
|
|||
|
q.start()
|
|||
|
end
|
|||
|
when button begin
|
|||
|
say_title("Jage die 1000 Wildhunde!")
|
|||
|
say("")
|
|||
|
say("Nachdem die 1000 Wildhundejagd beendet ist,")
|
|||
|
say("meldet man sich bei Octavio und erh<72>lt den Preis.")
|
|||
|
say("")
|
|||
|
say("gejagte Zahl "..(pc.getqf("kill_count")).."")
|
|||
|
say("Verlaufszeit "..(math.floor((get_time()-pc.getqf("start_time"))/60)).."")
|
|||
|
say("")
|
|||
|
say("(<28>brige Chance "..(pc.getqf("life"))..")")
|
|||
|
local b=select("Fortfahren", "Neu beginnen", "Aufgeben")
|
|||
|
if 1==b then
|
|||
|
elseif 2==b then
|
|||
|
if pc.getqf("life")>0 then
|
|||
|
say("Bei erneutem Versuch wird das alte Ergebniss gel<65>scht")
|
|||
|
say("M<>chtest du wirklich neu beginnen?")
|
|||
|
say("")
|
|||
|
local b=select("Ja", "Nein")
|
|||
|
if 1==b then
|
|||
|
setstate(game)
|
|||
|
q.done()
|
|||
|
elseif 2==b then
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
else
|
|||
|
say("Leider ist es letzte Chance!")
|
|||
|
end
|
|||
|
elseif 3==b then
|
|||
|
say("M<>chtest du wirklich die Wildhundejagd beenden?")
|
|||
|
say("")
|
|||
|
local b=select("Ja", "Nein")
|
|||
|
if 1==b then
|
|||
|
setstate(start)
|
|||
|
q.done()
|
|||
|
elseif 2==b then
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
end
|
|||
|
when info begin
|
|||
|
say_title("Jage die 1000 Wildhunde!")
|
|||
|
say("")
|
|||
|
say("Nachdem die 1000 Wildhundejagd beendet ist,")
|
|||
|
say("meldet man sich bei Octavio und erh<72>lt seinen Preis.")
|
|||
|
say("")
|
|||
|
say("gejagte Zahl "..(pc.getqf("kill_count")).."")
|
|||
|
say("Verlaufszeit "..(math.floor((get_time()-pc.getqf("start_time"))/60)).."")
|
|||
|
say("")
|
|||
|
say("(<28>brige Chance "..(pc.getqf("life"))..")")
|
|||
|
say("")
|
|||
|
local b=select("fortfahren", "neu beginnen", "aufgeben")
|
|||
|
if 1==b then
|
|||
|
elseif 2==b then
|
|||
|
if pc.getqf("life")>0 then
|
|||
|
say("bei Neubeginn wird das bisherige Ergebnis gel<65>scht.")
|
|||
|
say("trotzdem neu versuchen?")
|
|||
|
say("")
|
|||
|
local b=select("Ja", "Nein")
|
|||
|
if 1==b then
|
|||
|
setstate(game)
|
|||
|
q.done()
|
|||
|
elseif 2==b then
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
else
|
|||
|
say("leider ist es die letzte Chance!")
|
|||
|
end
|
|||
|
elseif 3==b then
|
|||
|
say("M<>chtst du wirklich die Wildhundejagd beenden?")
|
|||
|
say("")
|
|||
|
local b=select("Ja", "Nein")
|
|||
|
if 1==b then
|
|||
|
setstate(start)
|
|||
|
q.done()
|
|||
|
elseif 2==b then
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
else
|
|||
|
say("UNKNOWN BUTTON ["..b.."]")
|
|||
|
end
|
|||
|
end
|
|||
|
when 101.party_kill with pc.getqf("kill_count") >= 1000 begin
|
|||
|
pc.setqf("game_time", (get_time()-pc.getqf("start_time")))
|
|||
|
setstate(report)
|
|||
|
end
|
|||
|
end
|
|||
|
state report begin
|
|||
|
when letter begin
|
|||
|
local v=find_npc_by_vnum(20008)
|
|||
|
if 0==v then
|
|||
|
else
|
|||
|
target.vid("__TARGET__", v, "")
|
|||
|
end
|
|||
|
end
|
|||
|
when letter begin
|
|||
|
setskin(NOWINDOW)
|
|||
|
makequestbutton("Durchf<68>hrung der 1000 Wildhundejagd!!")
|
|||
|
q.set_title("Durchf<68>hrung der 1000 Wildhundejagd!!")
|
|||
|
q.start()
|
|||
|
end
|
|||
|
when button begin
|
|||
|
say_title("Durchf<68>hrung der 1000 Wildhundejagd!!")
|
|||
|
say("")
|
|||
|
say("die Wildhunde "..(pc.getqf("kill_count")).."Du hast die Wildhunde gejagt")
|
|||
|
say("Melde Dich bei Octavio")
|
|||
|
say("")
|
|||
|
say("Verlaufszeit "..(math.floor(pc.getqf("game_time")/60)).."")
|
|||
|
say("")
|
|||
|
end
|
|||
|
when info begin
|
|||
|
say_title("Durchf<68>hrung der 1000 Wildhundejagd!!")
|
|||
|
say("")
|
|||
|
say("die Wildhunde "..(pc.getqf("kill_count")).."Du hast die Wildhunde gejagt")
|
|||
|
say("Melde Dich bei Octavio")
|
|||
|
say("")
|
|||
|
say("Verlaufszeit"..(math.floor(pc.getqf("game_time")/60)).."")
|
|||
|
say("")
|
|||
|
end
|
|||
|
when __TARGET__.target.click begin
|
|||
|
target.delete("__TARGET__")
|
|||
|
if pc.getqf("kill_count")>=1000 then
|
|||
|
if 30*60>pc.getqf("game_time") then
|
|||
|
say_title("Octavio:")
|
|||
|
say("")
|
|||
|
say("Du hast die Wildhundejagd innerhalb von 30")
|
|||
|
say("Minuten durchgef<65>hrt!")
|
|||
|
say("Das ist wirklich sehr schnell!")
|
|||
|
say("Ich gratuliere Dir")
|
|||
|
setstate(reward_1st)
|
|||
|
elseif 40*60>pc.getqf("game_time") then
|
|||
|
say_title("Octavio:")
|
|||
|
say("")
|
|||
|
say("Du hast die Wildhundejagd innerhalb von")
|
|||
|
say("40 Minuten durchgef<65>hrt!")
|
|||
|
say("Das ist wirklich sehr schnell!")
|
|||
|
say("Ich gratuliere dir")
|
|||
|
setstate(reward_2st)
|
|||
|
elseif 50*60>pc.getqf("game_time") then
|
|||
|
say_title("Octavio:")
|
|||
|
say("")
|
|||
|
say("Du hast die Wildhundejagd innerhalb von")
|
|||
|
say("50 Minuten durchgef<65>hrt!")
|
|||
|
say("Du stehst in der Rangliste. Gratuliere ")
|
|||
|
setstate(reward_3st)
|
|||
|
else
|
|||
|
say_title("Octavio:")
|
|||
|
say("")
|
|||
|
say("Es tut mir leid. Du bist nicht in der")
|
|||
|
say("Rangliste.")
|
|||
|
say("Vielen Dank")
|
|||
|
setstate(__COMPLETE__)
|
|||
|
q.done()
|
|||
|
end
|
|||
|
else
|
|||
|
say("Du musst die 1000 Wildhunde jagen")
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
state reward_1st begin
|
|||
|
when letter begin
|
|||
|
setskin(NOWINDOW)
|
|||
|
makequestbutton("Der erste Platz beim Wettbewerb")
|
|||
|
q.set_title("Der erste Platz beim Wettbewerb")
|
|||
|
q.start()
|
|||
|
end
|
|||
|
when button begin
|
|||
|
say_title("Der erste Platz beim Wettbewerb")
|
|||
|
say("")
|
|||
|
say("der erste Platz unter der zeitlichen Begrenzung... ")
|
|||
|
say("ich hatte selbst nicht daran geglaubt, aber")
|
|||
|
say("ich war einfach froh, als ich den Preis")
|
|||
|
say("erhalten habe. Heute sieht der Kahlkopf")
|
|||
|
say("von Octavio besonders s<>ss aus")
|
|||
|
pc.changemoney(300000)
|
|||
|
setstate(__COMPLETE__)
|
|||
|
q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state reward_2st begin
|
|||
|
when letter begin
|
|||
|
setskin(NOWINDOW)
|
|||
|
makequestbutton("Der zweite Platz beim Wettbewerb")
|
|||
|
q.set_title("Der zweite Platz beim Wettbewerb")
|
|||
|
q.start()
|
|||
|
end
|
|||
|
when button begin
|
|||
|
say_title("Der zweite Platz beim Wettbewerb")
|
|||
|
say("")
|
|||
|
say("Der zweite Platz unter der zeitlichen Begrenzung... ")
|
|||
|
say("ich hatte selbst nicht daran geglaubt, aber")
|
|||
|
say("ich war einfach froh, als ich den Preis")
|
|||
|
say("erhalten habe. Heute sieht der Kahlkopf")
|
|||
|
say("von Octavio besonders s<>ss aus")
|
|||
|
pc.changemoney(100000)
|
|||
|
setstate(__COMPLETE__)
|
|||
|
q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state reward_3st begin
|
|||
|
when letter begin
|
|||
|
setskin(NOWINDOW)
|
|||
|
makequestbutton("Der dritte Platz beim Wettbewerb")
|
|||
|
q.set_title("Der dritte Platz beim Wettbewerb")
|
|||
|
q.start()
|
|||
|
end
|
|||
|
when button begin
|
|||
|
say_title("Der dritte Platz beim Wettbewerb")
|
|||
|
say("")
|
|||
|
say("der dritte Platz unter der zeitlichen Begrenzung... ")
|
|||
|
say("ich hatte selbst nicht daran geglaubt, aber")
|
|||
|
say("es war schwerer als ich gedacht habe,")
|
|||
|
say("doch ich bin zufrieden.")
|
|||
|
say("")
|
|||
|
pc.changemoney(50000)
|
|||
|
setstate(__COMPLETE__)
|
|||
|
q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
state __COMPLETE__ begin
|
|||
|
when enter begin
|
|||
|
q.done()
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|