forked from metin2/server
739 lines
21 KiB
Plaintext
739 lines
21 KiB
Plaintext
quest arne_test begin
|
|
state start begin
|
|
when login begin
|
|
NpcName=mob_name(20095) --SeonHae
|
|
-- notice("Script läuft.")
|
|
-- notice("Npc heisst: "..NpcName..". Right on!")
|
|
-- notice(string.format("Geschlecht ist: %s", pc.get_sex()))
|
|
-- mob.spawn(20095, 356, 483, 1, 1, 1)
|
|
pc.give_item2(10)
|
|
-- set_state(talk_seon)
|
|
end
|
|
end
|
|
|
|
state talk_seon begin
|
|
|
|
function challenge_main_menu_proto(SelectionList)
|
|
local selected = 0
|
|
local s = select_table (SelectionList)
|
|
-- local s = select ("1", "2", "3", "4", "5")
|
|
-- always 5 deep
|
|
-- say_title("ChallengeX")
|
|
if s == 1 then
|
|
selected = 1
|
|
else
|
|
if s == 2 then
|
|
selected = 2
|
|
else
|
|
if s == 3 then
|
|
selected = 3
|
|
else
|
|
if s == 4 then
|
|
selected = 4
|
|
else
|
|
selected = 5
|
|
end
|
|
end
|
|
end
|
|
end
|
|
return selected
|
|
end
|
|
|
|
function challenge_calculate_rewards(TargetChallenge, AmountChallenge, TimeChallenge)
|
|
local NewChallenge
|
|
local NewRewards = {1,2,3}
|
|
local BetRewardTable= {
|
|
[1] = {[1] = 50, [2] = 100,},
|
|
[2] = {[1] = 250, [2] = 500,},
|
|
[3] = {[1] = 300, [2] = 1200,},
|
|
[4] = {[1] = 400, [2] = 5000,},
|
|
}
|
|
|
|
NewChallenge = (TargetChallenge + (2*AmountChallenge))*TimeChallenge
|
|
notice("Challenge computed")
|
|
if NewChallenge >= 30 then
|
|
BetMoney = BetRewardTable[4][1]
|
|
Reward = BetRewardTable[4][2]
|
|
NewRewards = {NewChallenge, BetMoney, Reward}
|
|
else
|
|
if NewChallenge >= 15 then
|
|
BetMoney = BetRewardTable[3][1]
|
|
Reward = BetRewardTable[3][2]
|
|
NewRewards = {NewChallenge, BetMoney, Reward}
|
|
else
|
|
if NewChallenge >= 8 then
|
|
BetMoney = BetRewardTable[2][1]
|
|
Reward = BetRewardTable[2][2]
|
|
NewRewards = {NewChallenge, BetMoney, Reward}
|
|
else
|
|
BetMoney = BetRewardTable[1][1]
|
|
Reward = BetRewardTable[1][2]
|
|
NewRewards = {NewChallenge, BetMoney, Reward}
|
|
end
|
|
end
|
|
end
|
|
return NewRewards
|
|
end
|
|
|
|
when login or enter begin
|
|
HuntAmount=5
|
|
GatherAmount=5
|
|
pc.setqf("kill_count_1", 0)
|
|
pc.setqf("collect_count", 0)
|
|
-- local find_npc_vnum = 20095
|
|
-- local v=find_npc_by_vnum(find_npc_vnum) -- alter Mann
|
|
-- if 0==v then
|
|
-- notice("Id 0")
|
|
-- else
|
|
-- notice("NPC da")
|
|
-- target.vid("__TARGET__", v, "Seon-Hae")
|
|
-- send_letter("Sprecht mit Seon-Hae")
|
|
-- end
|
|
end
|
|
|
|
when button or info begin
|
|
say_title("Sprecht mit Seon-Hae")
|
|
say("Ihr habt einen alten Mann an der Brücke gesehen, der völlig aufgelöst ist und wahrscheinlich Hilfe braucht.")
|
|
end
|
|
|
|
|
|
when 20095.Chat."Teleport Command" begin
|
|
pc.setqf("pcx", pc.get_x())
|
|
pc.setqf("pcy", pc.get_y())
|
|
set_state(teleport)
|
|
end
|
|
|
|
when 20095.Chat."ChallengeX" begin
|
|
|
|
local MainMenuList =
|
|
{
|
|
"Ziel Wählen",
|
|
"Menge Wählen",
|
|
"Zeit Wählen",
|
|
"Quest Starten",
|
|
"Abbruch",
|
|
}
|
|
local TargetMenuList =
|
|
{
|
|
"Wildhunde",
|
|
"Wölfe",
|
|
"Tiger",
|
|
}
|
|
local AmountMenuList =
|
|
{
|
|
"10",
|
|
"30",
|
|
"50",
|
|
}
|
|
local TimeMenuList =
|
|
{
|
|
"60 min",
|
|
"30 min",
|
|
"10 min",
|
|
}
|
|
TargetList =
|
|
{
|
|
101,
|
|
102,
|
|
114,
|
|
}
|
|
AmountList =
|
|
{
|
|
10,
|
|
30,
|
|
50,
|
|
}
|
|
TimeList =
|
|
{
|
|
3600,
|
|
1800,
|
|
600,
|
|
}
|
|
|
|
local Selected = 0
|
|
|
|
|
|
if BeenHere != 1 then
|
|
ChallengeIndex = 0
|
|
BetMoney = 0
|
|
Reward = 0
|
|
TargetChallenge = 0
|
|
AmountChallenge = 0
|
|
TimeChallenge = 0
|
|
TargetSelector = 0
|
|
AmountSelector = 0
|
|
TimeSelector = 0
|
|
BeenHere = 1
|
|
end
|
|
repeat
|
|
Selected = arne_test.challenge_main_menu_proto(MainMenuList)
|
|
if Selected == 1 then
|
|
TargetSelector = arne_test.challenge_main_menu_proto(TargetMenuList)
|
|
TargetChallenge = TargetSelector
|
|
end
|
|
if Selected == 2 then
|
|
AmountSelector = arne_test.challenge_main_menu_proto(AmountMenuList)
|
|
AmountChallenge = AmountSelector
|
|
end
|
|
if Selected == 3 then
|
|
TimeSelector = arne_test.challenge_main_menu_proto(TimeMenuList)
|
|
TimeChallenge = TimeSelector
|
|
end
|
|
if Selected == 4 then
|
|
local NewRewardsTable = {}
|
|
NewRewardsTable = arne_test.challenge_calculate_rewards(TargetChallenge, AmountChallenge, TimeChallenge)
|
|
say_title("Quest starten")
|
|
say("Quest mit folgenden Parametern starten?")
|
|
say(string.format("Jage %s x %s in %s Minuten",AmountList[AmountSelector],mob_name(TargetList[TargetSelector]),TimeList[TimeSelector]/60))
|
|
say(string.format("Challenge: %s Einsatz: %s Belohnung: %s Yang", NewRewardsTable[1], NewRewardsTable[2], NewRewardsTable[3]))
|
|
local x = select("Ja", "Nein")
|
|
if x == 1 then
|
|
pc.setqf("challenge_duration", get_time())
|
|
FinalTarget = TargetList[TargetSelector]
|
|
Selected = 5
|
|
pc.setqf("FinalTarget",TargetList[TargetSelector])
|
|
pc.setqf("FinalAmount",AmountList[AmountSelector])
|
|
pc.setqf("FinalTime",TimeList[TimeSelector])
|
|
set_state(start_2quest)
|
|
else
|
|
Selected = 5
|
|
set_state(bounceback)
|
|
end
|
|
end
|
|
if Selected == 5 then
|
|
set_state(bounceback)
|
|
end
|
|
until Selected == 5
|
|
end
|
|
end
|
|
|
|
|
|
state bounceback begin
|
|
when enter or login begin
|
|
notice(string.format("%s ,%s ,%s", TimeChallenge, AmountChallenge, TargetChallenge))
|
|
set_state(talk_seon)
|
|
end
|
|
end
|
|
|
|
state start_2quest begin
|
|
when enter or login begin
|
|
q.start()
|
|
local timeToWait = pc.getqf("FinalTime")
|
|
local timeLeft = 0
|
|
timeLeft = timeToWait - (get_time() - pc.getqf("challenge_duration"))
|
|
send_letter(string.format("Jage %s x %s in %s Minuten",pc.getqf("FinalAmount"),mob_name(pc.getqf("FinalTarget")),pc.getqf("FinalTime")/60))
|
|
q.set_title(string.format("Jage %s x %s in %s Minuten",pc.getqf("FinalAmount"),mob_name(pc.getqf("FinalTarget")),pc.getqf("FinalTime")/60))
|
|
q.set_clock("Zeit:", timeLeft)
|
|
if get_time() - pc.getqf("challenge_duration") >= timeToWait then
|
|
q.done()
|
|
notice("Challenge Zeit Abgelaufen")
|
|
set_state(challenge_failed)
|
|
end
|
|
end
|
|
|
|
when FinalTarget.kill begin
|
|
if pc.getqf("kill_count_1") < AmountSelector then
|
|
local index =pc.getqf("kill_count_1") + 1
|
|
pc.setqf("kill_count_1",index)
|
|
-- q.set_counter_value(AmountSelector - pc.getqf("kill_count_1"))
|
|
if AmountSelector == pc.getqf("kill_count_1") and get_time() - pc.getqf("challenge_duration") < timeToWait then
|
|
q.done()
|
|
notice("Challenge Erfolg")
|
|
set_state(challenge_success)
|
|
end
|
|
end
|
|
end
|
|
|
|
end
|
|
--
|
|
--
|
|
--
|
|
-- when 20095.Chat."Challenge" begin
|
|
-- if BeenHere != 1 then
|
|
-- ChallengeIndex = 0
|
|
-- BetMoney = 0
|
|
-- Reward = 0
|
|
-- TargetChallenge = 0
|
|
-- AmountChallenge = 0
|
|
-- TimeChallenge = 0
|
|
-- TargetSelector = 0
|
|
-- AmountSelector = 0
|
|
-- TimeSelector = 0
|
|
-- BeenHere = 1
|
|
-- end
|
|
-- say_title("Challenge")
|
|
-- local s = select("Ziel auswählen", "Anzahl auswählen", "Zeit auswählen")
|
|
-- if s == 1 then
|
|
-- say_title("Ziel auswählen")
|
|
-- local t = select("Wildhunde", "Wölfe", "Tiger")
|
|
-- if t == 1 then
|
|
-- TargetSelector = Target1
|
|
-- TargetChallenge = 1
|
|
-- else
|
|
-- if t== 2 then
|
|
-- TargetSelector = Target2
|
|
-- TargetChallenge = 2
|
|
-- else
|
|
-- TargetSelector = Target3
|
|
-- TargetChallenge = 4
|
|
-- end
|
|
-- end
|
|
-- else
|
|
-- if h == 2 then
|
|
-- say_title("Anzahl festlegen")
|
|
-- local a = select("10", "30", "50")
|
|
-- if a == 1 then
|
|
-- AmountSelector = 10
|
|
-- AmountChallenge = 1
|
|
-- else
|
|
-- if a== 2 then
|
|
-- AmountSelector = 30
|
|
-- AmountChallenge = 2
|
|
-- else
|
|
-- AmountSelector = 50
|
|
-- AmountChallenge = 4
|
|
-- end
|
|
-- end
|
|
-- else
|
|
-- say_title("Zeit festlegen")
|
|
-- local i = select("60 Minuten", "30 Minuten", "10 Minuten")
|
|
-- if i == 1 then
|
|
-- TimeSelector = Time1
|
|
-- TimeChallenge = 1
|
|
-- else
|
|
-- if i== 2 then
|
|
-- TimeChallenge = 2
|
|
-- set_state(bounceback)
|
|
-- else
|
|
-- TimeSelector = Time3
|
|
-- TimeChallenge = 4
|
|
-- end
|
|
-- end
|
|
-- end
|
|
-- end
|
|
-- end
|
|
--
|
|
--
|
|
--
|
|
-- when 20095.Chat."Dem alten Mann helfen" begin
|
|
-- target.delete("__TARGET__")
|
|
-- say_title("Hilfe für Seon-Hae")
|
|
-- say("Wehe! Diese verflixten Kläffer! Hungrige Wildunde haben meinen kleinen Hund Fu verschlungen! Mit zwei Bissen war er weg, der arme Kleine!")
|
|
-- wait()
|
|
-- say(string.format("Rächt meinen Fu! Erschlagt %s hungrige Wildhunde und seine kleine Hundeseele wird mit Genugtuung in das Geisterreich eingehen können! Der arme Kleine ...",HuntAmount))
|
|
-- set_state(hunting)
|
|
-- end
|
|
--
|
|
-- when 20095.Chat."Dem alten Mann Ehre erweisen" begin
|
|
-- target.delete("__TARGET__")
|
|
-- say_title("Tee für Seon-Hae")
|
|
-- say("*Der alte Mann Seon-Hae nickt euch zu, als ihr euch zur Begrüßung verbeugt. Er scheint von Sorgen geplagt.*")
|
|
-- wait()
|
|
-- say("*Die Tradition würde gebieten, ihm einen Glockenblumentee zu reichen. Dies demonstriert eure Achtung und beruhigt seine Seele.*")
|
|
-- wait()
|
|
-- say(string.format("*Sammelt %s Glockenblumen. Die Wildhunde erschnüffeln sie gere im Gras, von ihnen könnt ihr welche erbeuten.*", GatherAmount))
|
|
-- set_state(gather)
|
|
-- end
|
|
--
|
|
-- when 20095.Chat."Den alten Mann ausrauben" begin
|
|
-- target.delete("__TARGET__")
|
|
-- say_title("Überfall auf Seon-Hae")
|
|
-- say("Rüpel! Ein alter Mann ist in Trauer um seinen besten Freund und ihr haltet ihm noch eine Klinge unter die Nase! Aber glaubt nur nicht das ihr damit davonkommt! Der Geist meines toten Hundes wird mir Schutz senden!")
|
|
-- wait()
|
|
-- say("Fass, Fu! Fass!")
|
|
-- set_state(fighting)
|
|
-- end
|
|
--
|
|
--
|
|
--
|
|
state teleport begin
|
|
when enter or login begin
|
|
if pc.get_map_index() >= 1120000 and pc.get_map_index() <= 1129999 then
|
|
say_in_map("proper state")
|
|
set_state(arena_relocate)
|
|
else
|
|
notice("teleport begin")
|
|
command("private 112")
|
|
set_state(arena_relocate)
|
|
end
|
|
end
|
|
end
|
|
|
|
state arena_relocate begin
|
|
when enter or login begin
|
|
if pc.get_map_index() >= 1120000 then
|
|
notice("relocate")
|
|
command("go 88 88")
|
|
-- say_in_map("proper state")
|
|
set_state(spawn_arena)
|
|
end
|
|
end
|
|
end
|
|
|
|
state spawn_arena begin
|
|
when enter or login begin
|
|
mob.spawn(101, 101, 101, 1,1, 3)
|
|
notice("spawn")
|
|
set_state(arena_combat)
|
|
end
|
|
end
|
|
|
|
|
|
|
|
state arena_combat begin
|
|
when enter or login begin
|
|
notice("combat")
|
|
-- if pc.is_dead() == true then
|
|
-- set_state(return_from_arena)
|
|
-- end
|
|
end
|
|
|
|
when 101.kill begin
|
|
local index = pc.getqf("killcount")+1
|
|
pc.setqf("killcount", index)
|
|
|
|
if pc.getqf("killcount") >= 3 then
|
|
notice("final kill")
|
|
set_state(return_from_arena)
|
|
end
|
|
end
|
|
end
|
|
|
|
state return_from_arena begin
|
|
when enter or login begin
|
|
local CordX = pc.getqf("pcx")*100
|
|
local CordY = pc.getqf("pcy")*100
|
|
pc.setqf("killcount", 0)
|
|
say_title("Round Over")
|
|
say("Return home.")
|
|
local s = select("OK")
|
|
if s == 1 then
|
|
pc.warp(CordX, CordY)
|
|
notice("timer over")
|
|
set_state(talk_seon)
|
|
end
|
|
end
|
|
end
|
|
|
|
state hunting begin
|
|
when enter begin
|
|
q.start()
|
|
q.set_title("Hundejagd")
|
|
notice("Erlege hungrige Wildhunde.")
|
|
send_letter("Erlegt hungrige Wildhunde.")
|
|
q.set_counter("Noch übrig", HuntAmount)
|
|
end
|
|
|
|
when button or info begin
|
|
say_title("Erlege Wildhunde")
|
|
say(string.format("Erlegt %s hungrige Wildhunde um Fu zu rächen.", HuntAmount))
|
|
end
|
|
|
|
|
|
-----Kill 171#Hungringer wildhund-----
|
|
when 171.kill begin
|
|
if pc.getqf("kill_count_1") < HuntAmount then
|
|
local index =pc.getqf("kill_count_1") + 1
|
|
pc.setqf("kill_count_1",index)
|
|
q.set_counter_value(HuntAmount - pc.getqf("kill_count_1"))
|
|
if HuntAmount == pc.getqf("kill_count_1") then
|
|
q.done()
|
|
notice("Das sollten genug Hunde gewesen sein, kehrt zu Seon-Hae zurück.")
|
|
set_state(back_to_npc)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
state back_to_npc begin
|
|
when enter begin
|
|
q.start()
|
|
q.set_title("Zurück zu Seon-Hae")
|
|
send_letter("Zurück zu Seon-Hae")
|
|
local v=find_npc_by_vnum(20095) -- Seon-Hae
|
|
if 0==v then
|
|
else
|
|
target.vid("__TARGET2__", v, "Seon-Hae")
|
|
end
|
|
end
|
|
|
|
when button or info begin
|
|
say_title("Zurück zu Seon-Hae")
|
|
say("Kehrt zu Seon-Hae zurück.")
|
|
end
|
|
|
|
when __TARGET2__.target.click begin
|
|
target.delete("__TARGET2__")
|
|
say("Gute Arbeit, ihr habt es den Biestern gezeigt! Mein kleiner Fu kann nun getrost ins Geisterreich übergehen.") -- white font text
|
|
wait()
|
|
say("Hier, dieses Geld hatte ich gespart um seine Leckereien zu kaufen. Ich schätze es gebührt euch.")
|
|
say_reward("Ihr erhaltet:")
|
|
say("Einen großen Beutel Yang")
|
|
q.done()
|
|
pc.change_money(10000)
|
|
pc.give_exp2(500)
|
|
end
|
|
end
|
|
|
|
state gather begin
|
|
|
|
when enter begin
|
|
q.start()
|
|
q.set_title("Glockenblumen")
|
|
notice("Erlegt Wildhunde um Glockenblumen zu sammeln")
|
|
send_letter("Erlegt Wildhunde um Glockenblumen zu sammeln.")
|
|
q.set_counter("Noch übrig", GatherAmount)
|
|
end
|
|
|
|
when button or info begin
|
|
say_title("Glockenblumen von Wildhunden")
|
|
say(string.format("Erbeutet %s Glockenblumen von den Wildhunden der Umgebung", GatherAmount))
|
|
end
|
|
|
|
when 101.kill begin -- yy unfinished yy
|
|
if pc.count_item(50702)< GatherAmount - pc.getqf("collect_count") then
|
|
pc.give_item2(50702, 1)
|
|
local index = pc.getqf("collect_count") + 1
|
|
q.set_counter_value(GatherAmount - pc.getqf("collect_count"))
|
|
pc.setqf("collect_count",index)
|
|
notice("Ihr habt eine Glockenblume gefunden")
|
|
else
|
|
q.done()
|
|
-- set_state(return_flowers)
|
|
end
|
|
end
|
|
end
|
|
|
|
-- state return_flowers
|
|
-- when enter begin
|
|
-- q.start()
|
|
-- q.set_title("Der Tee für Seon-Hae")
|
|
-- notice("Kehrt zu Seon-Hae zurück")
|
|
-- send_letter("Kehrt zu Seon-Hae zurück")
|
|
-- if 0!=v then
|
|
-- target.vid("__TARGET3__", v, "Seon-Hae")
|
|
-- end
|
|
-- end
|
|
--
|
|
-- when button or info begin
|
|
-- say_title("Glockenblumen für Seon-Hae")
|
|
-- say("Kehrt mit dne Glockenblumen zu Seon-Hae zurück.")
|
|
-- end
|
|
--
|
|
-- when __TARGET3__.target.click begin
|
|
-- target.delete("__TARGET3__")
|
|
-- say("*Es dauert nicht lange, aus den Glockenblumen einen Tee zuzubereiten. Seon-Hae betrachtet euch wohlwollend als ihr ihm die Schale überreicht.*") -- white font text
|
|
-- wait()
|
|
-- say("Das nenne ich gute Erziehung! Das war genau das,w as ich in dieser schweren Zeit brauchte. Ihr seid noch ein junger Mensch mit Manieren. Selten anzutreffen bei euch Abenteurern.")
|
|
-- say_reward("*Seon-Hae steckt euch etwas zu:*")
|
|
-- say("Einige Yang")
|
|
-- q.done()
|
|
-- pc.change_money(100)
|
|
-- pc.give_exp2(1000)
|
|
-- end
|
|
--
|
|
-- end
|
|
|
|
state fighting begin
|
|
when enter begin
|
|
q.start()
|
|
q.set_title("Besiegt den Wolf")
|
|
send_letter("Besiegt den Wolf")
|
|
mob.spawn(102, 356, 483, 1, 1, 1)
|
|
end
|
|
|
|
when button or info begin
|
|
say_title("Besiegt den Wolf")
|
|
say("Besiegt den Wolfsgeist, der Seon-Ha zur Hilfe geeilt ist.")
|
|
end
|
|
|
|
when 102.kill begin
|
|
q.done()
|
|
set_state(robbing)
|
|
end
|
|
|
|
end
|
|
|
|
state robbing begin
|
|
when enter begin
|
|
q.start()
|
|
q.set_title("Holt das Geld von Seon-Hae")
|
|
send_letter("Holt das Geld von Seon-Hae")
|
|
local v=find_npc_by_vnum(20095) -- Seon-Hae
|
|
if 0==v then
|
|
else
|
|
target.vid("__TARGET2__", v, "Seon-Hae")
|
|
end
|
|
end
|
|
|
|
when button or info begin
|
|
say_title("Seon-Hae ausrauben")
|
|
say("Ihr habt Seon-Haes Wächter beseigt, nun ist es an der Zeit sich sein Geld zu schnappen.")
|
|
end
|
|
|
|
when __TARGET2__.target.click begin
|
|
target.delete("__TARGET2__")
|
|
say_title("Das Geld von Seon-Ha")
|
|
say("Ihr... Ihr habt ihn erschlagen! Bitte, tut mir nicht das gleiche an, ihr sollt alles bekommen, was ich habe!") -- white font text
|
|
wait()
|
|
say("Da, nehmt meinen Besitz! Möge euch höchstpersönlich ein Metinstein auf den Kopf fallen, ehrloser Schurke!")
|
|
say_reward("Seon-Ha übergibt euch:")
|
|
say_item_vnum(11)
|
|
say("und einen großen Beutel Yang")
|
|
q.done()
|
|
pc.change_money(10000)
|
|
pc.give_item2(11, 1)
|
|
pc.give_exp2(100)
|
|
end
|
|
end
|
|
|
|
|
|
-- when 20095.Chat."Ziele festlegen" begin
|
|
-- say_title("Challenge")
|
|
-- local s = select("Ziel auswählen", "Anzahl auswählen", "Zeit auswählen")
|
|
-- if s == 1 then
|
|
-- say_title("Ziel auswählen")
|
|
-- local t = select("Wildhunde", "Wölfe", "Tiger")
|
|
-- if t == 1 then
|
|
-- TargetSelector = Target1
|
|
-- TargetChallenge = 1
|
|
-- else
|
|
-- if t== 2 then
|
|
-- TargetSelector = Target2
|
|
-- TargetChallenge = 2
|
|
-- else
|
|
-- TargetSelector = Target3
|
|
-- TargetChallenge = 4
|
|
-- end
|
|
-- end
|
|
-- else
|
|
-- if h == 2 then
|
|
-- say_title("Anzahl festlegen")
|
|
-- local a = select("10", "30", "50")
|
|
-- if a == 1 then
|
|
-- AmountSelector = 10
|
|
-- AmountChallenge = 1
|
|
-- else
|
|
-- if a== 2 then
|
|
-- AmountSelector = 30
|
|
-- AmountChallenge = 2
|
|
-- else
|
|
-- AmountSelector = 50
|
|
-- AmountChallenge = 4
|
|
-- end
|
|
-- end
|
|
-- else
|
|
-- say_title("Zeit festlegen")
|
|
-- local i = select("60 Minuten", "30 Minuten", "10 Minuten")
|
|
-- if i == 1 then
|
|
-- TimeSelector = Time1
|
|
-- TimeChallenge = 1
|
|
-- else
|
|
-- if i== 2 then
|
|
-- TimeChallenge = 2
|
|
-- else
|
|
-- TimeSelector = Time3
|
|
-- TimeChallenge = 4
|
|
-- end
|
|
-- end
|
|
-- end
|
|
--
|
|
-- end
|
|
--
|
|
-- when 20095.Chat."Anzahl festlegen" begin
|
|
-- say_title("Anzahl festlegen")
|
|
-- local s = select("10", "30", "50")
|
|
-- if s == 1 then
|
|
-- AmountSelector = 10
|
|
-- AmountChallenge = 1
|
|
-- set_state(bounceback)
|
|
-- else
|
|
-- if s== 2 then
|
|
-- AmountSelector = 30
|
|
-- AmountChallenge = 2
|
|
-- set_state(bounceback)
|
|
-- else
|
|
-- AmountSelector = 50
|
|
-- AmountChallenge = 4
|
|
-- set_state(bounceback)
|
|
-- end
|
|
-- end
|
|
-- end
|
|
--
|
|
--
|
|
-- when 20095.Chat."Zeit festlegen" begin
|
|
-- say_title("Zeit festlegen")
|
|
-- local s = select("60 Minuten", "30 Minuten", "10 Minuten")
|
|
-- if s == 1 then
|
|
-- TimeSelector = Time1
|
|
-- TimeChallenge = 1
|
|
-- set_state(bounceback)
|
|
-- else
|
|
-- if s== 2 then
|
|
-- TimeSelector = Time2
|
|
-- TimeChallenge = 2
|
|
-- set_state(bounceback)
|
|
-- else
|
|
-- TimeSelector = Time3
|
|
-- TimeChallenge = 4
|
|
-- set_state(bounceback)
|
|
-- end
|
|
-- end
|
|
-- end
|
|
|
|
|
|
|
|
|
|
state bounceback begin
|
|
when enter or login begin
|
|
notice(string.format("%s ,%s ,%s", TimeChallenge, AmountChallenge, TargetChallenge))
|
|
set_state(talk_seon)
|
|
end
|
|
end
|
|
|
|
state start_quest begin
|
|
when enter or login begin
|
|
q.start()
|
|
timeToWait = TimeList[TimeSelector]
|
|
timeLeft = timeToWait - (get_time() - pc.getqf("challenge_duration"))
|
|
send_letter(string.format("Jage %s x %s in %s Minuten",AmountList[AmountSelector],mob_name(TargetList[TargetSelector]),TimeList[TimeSelector]/60))
|
|
q.set_title(string.format("Jage %s x %s in %s Minuten",AmountList[AmountSelector],mob_name(TargetList[TargetSelector]),TimeList[TimeSelector]/60))
|
|
q.set_clock("Zeit:", timeLeft)
|
|
if get_time() - pc.getqf("challenge_duration") >= timeToWait then
|
|
q.done()
|
|
notice("Challenge Zeit Abgelaufen")
|
|
set_state(challenge_failed)
|
|
end
|
|
end
|
|
|
|
when FinalTarget.kill begin
|
|
if pc.getqf("kill_count_1") < AmountSelector then
|
|
local index =pc.getqf("kill_count_1") + 1
|
|
pc.setqf("kill_count_1",index)
|
|
-- q.set_counter_value(AmountSelector - pc.getqf("kill_count_1"))
|
|
if AmountSelector == pc.getqf("kill_count_1") and get_time() - pc.getqf("challenge_duration") < timeToWait then
|
|
q.done()
|
|
notice("Challenge Erfolg")
|
|
set_state(challenge_success)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
|
|
state challenge_failed begin
|
|
when enter or login begin
|
|
notice("Challenge fehlgeschlagen")
|
|
set_state(talk_seon)
|
|
end
|
|
end
|
|
|
|
state challenge_success begin
|
|
when enter or login begin
|
|
notice(string.format("Du erhälst", Reward))
|
|
pc.change_money(Reward)
|
|
set_state(talk_seon)
|
|
end
|
|
end
|
|
|
|
end |