PHP Code:
-----------------------------------------------------------------------------------------
-- Berufesystem für Level 50
--
-- Aufgaben:
-- [Berufewahl: Krieger: Jäger]
-- - 50 gemeine Soldaten töten
-- - 50 gemeine Bogenschützen töten
-- [Berufewahl: Krieger: Soldat]
-- - 50 Schwarze Orks töten
-- - Brutalen Hauptmann töten
-- [Berufewahl: Ninja: Attentäter]
-- - 20 Spieler aus anderen Reichen töten
-- - 10 Spieler aus deinem Reich töten
-- [Berufewahl: Ninja: Fischer]
-- - 10 Zander bekommen
-- - 5 Mandarinenfische bekommen
-- - 2 tote Karpfen bekommen
-- [Berufewahl: Sura: Schattenmagier]
-- - 30 Spieler aus anderen Reichen töten
-- [Berufewahl: Sura: Kraviermagier]
-- - 50 Buhmänner töten
-- [Berufewahl: Schamane: Heiliger]
-- - 10 verzaubertes Eis töten
-- - 10 Eislöwen töten
-- {Berufewahl: Schamane: Herr der Drachen]
-- - 10 Spieler aus jedem Reich töten
-- Belohnungen:
-- [Berufewahl: Krieger: Jäger]
-- - 10 mehr Vit
-- - 15% mehr Schaden gg Monster
-- - 50 mehr Verteidigung
-- [Berufewahl: Krieger: Soldat]
-- - 10 mehr Stärke
-- - 15% mehr Schaden gg Spieler
-- - 3000 mehr Leben
-- [Berufewahl: Ninja: Attentäter]
-- - 15 mehr Beweglichkeit
-- - 10% mehr Schaden gg Spieler
-- [Berufewahl: Ninja: Fischer]
-- - 20 mehr Beweglichkeit
-- - 20 mehr Vitalität
-- - Angelfertigkeit auf M1
-- - Angel+20
-- [Berufewahl: Sura: Schattenmagier]
-- - 10 mehr Intelligenz
-- - 15% mehr Schaden gg Spieler
-- [Berufewahl: Sura: Kraviermagier]
-- - 15 mehr Intelligenz
-- - 20% mehr Schaden gg Spieler
-- [Berufewahl: Schamane: Heiliger]
-- - 10 mehr Intelligenz
-- - 10 mehr Vitalität
-- - 20 mehr Verteidigung
-- [Berufequest: Schamane: Herr der Drachen]
-- - 15 mehr Intelligenz
-- - 15% mehr Schaden gg Spieler
-- Credits:
-- - Erstellet von Horny
-- - Idee von Horny
-----------------------------------------------------------------------------------------
quest berufesystem begin
state start begin
when login or levelup or letter with pc.get_level() >= 50 begin
if pc.job == 0 then
set_state("Quest_Krieger_Anfang")
elseif pc.job == 1 then
set_state("Quest_Ninja_Anfang")
elseif pc.job == 2 then
set_state("Quest_Sura_Anfang")
elseif pc.job == 3 then
set_state("Quest_Schami_Anfang")
else
say("Error: Du hast noch keinen Beruf gewählt! " .. pc.job)
end
end
end
-- Krieger Beruf-Quest
state Quest_Krieger_Anfang begin
when letter begin
local v = find_npc_by_vnum("20355")
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Wähle deinen Beruf!")
end
when button or info begin
say_title("Wähle deinen Beruf!")
say("Es ist so weit " .. pc.get_name() .. "!")
say("Du darfst jetzt deinen Beruf wählen.")
say("Dies kannst du beim Hauptmann tun.")
say("")
say_reward("Aufgabe: Gehe zum Hauptmann!")
end
when __TARGET__.target.click begin
say_title("Hauptmann:")
say("Quest by Horny")
say("Da bist du ja!")
say("Von dir wurde mir schon berichtet.")
say("Es scheint, als ob du bisher gut in dieser")
say("abenteuerlichen Welt zurecht gekommen bist.")
say("Also gut, da du Level 50 erreicht hast, darfst")
say("du nun einen Beruf auswählen.")
wait()
say("Es gibt für Krieger zwei Arten von")
say("Berufen.")
say("Der erste Beruf ist der des Jägers.")
say("Wählst du diesen Beruf, so wirst du")
say("stärker gegenüber wilden und gefährlichen")
say("Monstern und Ungeheuern werden.")
say("Ein weiterer Beruf ist der des Soldaten.")
say("Wenn du dich für diesen entscheidest,")
say("wirst du schneller einen Vorteil gegenüber")
say("Mitspielern gewinnen.")
say_reward("Über welchen Beruf möchtest du mehr erfahren?")
local mehr_infos = select("Jäger", "Soldat", "Abwarten")
if mehr_infos == 1 then
say_title("Hauptmann:")
say("Dein Ziel als Jäger ist es,")
say("an Stärke zu gewinnen, um im Kampf")
say("gegen mächtige Monster bestehen zu können.")
say("Du spezialisierst dich auf langes")
say("Überleben und eine starke Offensive gegen Monster.")
say("Deine Vitalität, dein Schaden gegen Monster")
say("sowie auch deine Verteidigung wird sich erhöhen.")
say("Außerdem erhälst du für jeden Monsterkill")
say("extra Gold sowie auch Erfahrung.")
say_reward("Möchtest du den Beruf 'Jäger' wählen?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Bevor du deine Ausbildung zum Jäger beginnen")
say("kannst, musst du erst eine Aufgabe bewältigen.")
say("Deine Aufgabe ist es, fünfzig 'Schwarze Orks'")
say("und den 'Brutalen Hauptmann' zu töten.")
say("Wenn du deine Aufgabe erledigt hast, komme zu")
say("mir zurück und beginne deine Lehre.")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Krieger_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir noch einmal!")
say("Komme zu mir zurück, sobald du entschieden hast.")
elseif job_annehmen == 3 then
return
end
elseif mehr_infos == 2 then
say("Dein Ziel als Soldat ist es,")
say("an Stärke gegen deine Mitspieler")
say("zu gewinnen.")
say("Du spezialisierst dich auf")
say("eine starke Offensive gegenüber Mitspielern.")
say("Deine Stärke, dein Schaden gegen Mitspieler")
say("sowie auch deine Lebenspunkte werden sich erhöhen.")
say_reward("Möchtest du den Beruf 'Soldat' wählen?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Um Soldat zu werden, musst du aber")
say("zuerst eine Aufgabe bewältigen.")
say("Deine Aufgabe ist es, 20 Spieler zu töten,")
say("deren Level mindestens 30 sein muss.")
say("Wenn du deine Aufgabe erfüllt hast, komme zu")
say("mir zurück und beginne deine Lehre.")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Krieger_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir nochmal!")
say("Komme zu mir zurück, sobald du eine Entscheidung")
say("getroffen hast!")
elseif jop_annehmen == 3 then
return
end
end
end
end
state Quest_Krieger_Angenommen begin
when letter begin
send_letter("Berufsausbildung")
end
when button or info begin
say_title("Berufsausbildung")
say("Deine Ausbildung hat begonnen.")
say("Um deine Ausbildung abzuschließen und den Beruf zu")
say("erlernen, musst du folgende Aufgabe bewältigen:")
if pc.getqf("Beruf_ID") == 1 then
say_reward("Töte fünfzig schwarze Orks und den brutalen Hauptmann.")
say_reward("Schwarze Orks getötet: " .. pc.getqf("Schwarze_Orks_Killed"))
say_reward("Brutaler Hauptmann getötet: " .. pc.getqf("Brutalen_Hauptmann_Killed"))
elseif pc.getqf("Beruf_ID") == 2 then
say_reward("Töte 20 Spieler, deren Level 30+ ist!")
say_reward("Spieler getötet**: " .. pc.getqf("Spieler_Killed"))
else
say("Leider konnte der Beruf nicht gefunden werden.")
say("Bitte wiederhole die Annahme des Berufs.")
pc.setqf("Beruf_ID", 0)
restart_quest()
end
end
-- Jäger
when kill with pc.getqf("Beruf_ID") == 1 begin
if npc.get_race() == 636 and pc.getqf("Schwarze_Orks_Killed") < 50 then
pc.setqf("Schwarze_Orks_Killed", pc.getqf("Schwarze_Orks_Killed") + 1)
elseif npc.get_race() == 591 then
pc.setqf("Brutaler_Hauptmann_Killed", 1)
end
if pc.getqf("Schwarze_Orks_Killed") >= 50 and pc.getqf("Brutaler_Hauptmann_Killed") == 1 then
set_state("Quest_Krieger_Ende")
end
end
-- Soldat
when kill begin
local npc_level = os.execute('mysql player --execute=\\"SELECT `level` FROM `player` WHERE `name`='.."\\'".. npc.get_name() ..'\\"')
chat(npc_level)
pc.setqf("Spieler_Killed", pc.getqf("Spieler_Killed") + 1)
if pc.getqf("Spieler_Killed") >= 20 then
set_state("Quest_Krieger_Ende")
end
end
end
state Quest_Krieger_Ende begin
when letter begin
local v = find_npc_by_vnum(20355)
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Berufsausbildung abgeschlossen")
end
when kill begin
chat("NPC NAME: " .. npc.get_name())
local npc_level = os.execute('mysql player --execute=\\"SELECT `level` FROM `player` WHERE `name`='.."\\'".. npc.get_name() ..'\\"')
chat("NPC_LEVEL:")
chat(npc_level)
pc.setqf("Spieler_Killed", pc.getqf("Spieler_Killed") + 1)
if pc.getqf("Spieler_Killed") >= 20 then
set_state("Quest_Krieger_Ende")
end
end
when button or info begin
say_title("Berufsausbildung abgeschlossen!")
say("Du hast deine Ausbildung erfolgreich abgeschlossen!")
say("Begebe dich nun erneut zum Hauptmann,")
say("um den Beruf zu meistern!")
say("")
say_reward("Auftrag: Begebe dich erneut zum Hauptmann!")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
clear_letter()
say_title("Hautpmann:")
if pc.getqf("Beruf_ID") == 1 then
set_state("__COMPLETE__")
say("Herzlichen Glückwusch zum erfolgreichen")
say("Abschluss deiner Jagdausbildung!")
say_reward("10 Vitalitätsbonus erhalten.")
say_reward("15% Schadensbonus gegen Monster erhalten.")
say_reward("50 Verteidigungsbonus erhalten.")
affect.add_collect(apply.VIT,10,60*60*365*10)
affect.add_collect(apply.ATT_BONUS_TO_MONSTER,15,60*60*365*10)
affect.add_collect(apply.DEF_GRADE_BONUS,50,60*60*365*10)
elseif pc.getqf("Beruf_ID") == 2 then
complete_quest()
say("Herzlichen Glückwusch zum erfolgreichen")
say("Abschluss deiner Soldatenausbildung!")
say_reward("10 Stärkebonus erhalten.")
say_reward("15% Schadensbonus gegen Spieler erhalten.")
say_reward("3000 Lebensbonus erhalten.")
affect.add_collect(apply.STR,10,60*60*365*10)
affect.add_collect(apply.ATTBONUS_HUMAN,10,60*60*365*10)
affect.add_collect(apply.MAX_HP,3000,60*60*365*10)
end
say("")
say_reward("Viel Glück!")
end
end
-- Ninja Beruf-Quest
state Quest_Ninja_Anfang begin
when letter begin
local v = find_npc_by_vnum("20355")
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Wähle deinen Beruf!")
end
when button or info begin
say_title("Wähle deinen Beruf!")
say("Es ist so weit " .. pc.get_name() .. "!")
say("Du darfst jetzt deinen Beruf wählen.")
say("Dies kannst du beim Hauptmann tun.")
say("")
say_reward("Aufgabe: Gehe zum Hauptmann!")
end
when __TARGET__.target.click begin
say_title("Hauptmann:")
say("Da bist du ja!")
say("Von dir wurde mir schon berichtet.")
say("Es scheint, als ob du bisher gut in dieser")
say("abenteuerlichen Welt zurecht gekommen bist.")
say("Also gut, da du nun Level 50 erreich hast, darfst")
say("du deinen Beruf wählen.")
wait()
say("Es gibt für Ninjas zwei Arten von")
say("Berufen.")
say("Der erste Beruf ist der des Attentäters.")
say("Bei diesem Beruf besteht deine Hauptaufgabe")
say("darin, andere Spieler zu töten.")
say("Dann gibt es noch den Beruf des Fischers,")
say("bei welchem du viel Geld mit dem Fangen")
say("von Fischen oder dem Abschließen von")
say("Aufträgen verdienen kannst.")
say("Über welchen Beruf möchtest du mehr erfahren?")
local mehr_infos = select("Attentäter", "Fischer", "Abwarten")
if mehr_infos == 1 then
say_title("Hauptmann:")
say("Als Attentäter musst du Spieler töten.")
say("Du erhältst einen Geschicklichkeits- sowie")
say("einen Schadensbonus gegen Mitspieler.")
say("Außerdem erhältst du noch einen Gold- und Erfahrungsbonus")
say("für jeden getöteten Spieler.")
say("Jedoch darf das Level der getöteten Spieler")
say("nicht weniger als 10 Level unter deinem Level liegen.")
say_reward("Möchtest du den Beruf 'Attentäter' wählen?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Um Attentäter zu werden, musst du aber")
say("zuerst eine Aufgabe bewältigen.")
say("Deine Aufgabe ist es, 10 Spieler aus")
say("anderen Reichen und 10 Spieler aus")
say("deinem eigenen Reich zu töten.")
say("Kehre zu mir zurück, sobald du deine")
say("Aufgabe erfüllt hast!")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Ninja_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir nochmal!")
say("Komme zu mir zurück, sobald du eine Entscheidung")
say("getroffen hast!")
elseif job_annehmen == 3 then
restart_quest()
end
elseif mehr_infos == 2 then
say_title("Hauptmann:")
say("Als Fischer erhälst du einen")
say("Bonus auf Geschicklichkeit und Lebenspunkte,")
say("damit du eine große Menge an Fischen fangen kannst.")
say("Außerdem bekommst du deine Angelfertigkeit")
say("auf die erste Meisterstufe und erhältst eine Angel+20.")
say_reward("Möchtest du den Beruf 'Fischer' wählen?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Um Fischer zu werden, musst du aber")
say("erst einmal zeigen, dass du")
say("bereit dazu bist. Fange 10 Zander,")
say("5 Mandarinfische sowie 2 tote Karpfen.")
say("Wenn du das geschafft hast, kehre zu")
say("mir zurück!")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Ninja_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir noch einmal!")
say("Komme zu mir zurück, sobald du eine Entscheidung")
say("getroffen hast.")
elseif jop_annehmen == 3 then
restart_quest()
end
end
end
end
state Quest_Ninja_Angenommen begin
when letter begin
if pc.getqf("Beruf_ID") == 2 then
local v = find_npc_by_vnum("20355")
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
end
send_letter("Berufsausbildung")
end
when button or info begin
say_title("Berufsausbildung")
say("Deine Ausbildung hat soeben begonnen.")
say("Um deine Ausbildung abzuschließen und deinen Beruf zu")
say("erlernen, musst du folgende Aufgabe bewältigen:")
if pc.getqf("Beruf_ID") == 1 then
say_reward("Töte 10 Spieler aus einem anderen Reich sowie")
say_reward("10 Spieler aus deinem eigenen Reich!")
say_reward("Andere Spieler getötet: " .. pc.getqf("Other_Country_Player_Killed"))
say_reward("Eigene Spieler getötet: " .. pc.getqf("Own_Country_Player_Killed"))
elseif pc.getqf("Beruf_ID") == 2 then
say_reward("Fange 10 Zander, 5 Mandarinenfische und")
say_reward("2 tote Karpfen!")
say_reward("Zander gefangen: " .. pc.count_item(27803))
say_reward("Mandarinenfische gefangen: " .. pc.count_item(27804))
say_reward("Tote Karpfen gefangen: " .. pc.count_item(27836))
else
say("Leider konnte der Beruf nicht gefunden werden.")
say("Bitte wiederhole die Annahme des Berufs.")
pc.setqf("Beruf_ID", 0)
restart_quest()
end
end
when kill with pc.getqf("Beruf_ID") == 1 begin
if npc.get_empire() == pc.get_empire() and pc.getqf("Own_Country_Player_Killed") < 10 then
pc.setqf("Own_Country_Player_Killed", pc.getqf("Own_Country_Player_Killed") + 1)
if pc.getqf("Own_Country_Player_Killed") >= 10 and pc.getqf("Other_Country_Player_Killed") >= 20 then
set_state("Quest_Ninja_Ende")
end
elseif npc.get_empire() != pc.get_empire() and pc.getqf("Own_Country_Player_Killed") < 10 then
pc.setqf("Other_Country_Player_Killed", pc.getqf("Other_Country_Player_Killed") + 1)
if pc.getqf("Own_Country_Player_Killed") >= 10 and pc.getqf("Other_Country_Player_Killed") >= 20 then
set_state("Quest_Ninja_Ende")
end
end
end
when __TARGET__.target.click begin
if pc.count_item(27803) >= 10 and pc.count_item(27804) >= 5 and pc.count_item(27836) >= 2 then
target.delete("__TARGET__")
clear_letter()
complete_quest()
pc.remove_item(27803, 10)
pc.remove_item(27804, 5)
pc.remove_item(27836, 2)
say_title("Hauptmann:")
say("Herzlichen Glückwunsch zum erfolgreichen")
say("Abschluss deiner Fischerausbildung!")
affect.add_collect(apply.DEX,20,60*60*365*10)
affect.add_collect(apply.CON,20,60*60*365*10)
pc.set_skill_level("129", "20")
pc.give_item2("27590", "1")
say_reward("20 DEX-Bonus erhalten.")
say_reward("20 VIT-Bonus erhalten.")
say_reward("Angelfertigkeit Meister1 erhalten.")
say_reward("Angelrute+20 erhalten.")
else
say_title("Hauptmann:")
say("Du hast noch nicht genug Fische gefangen.")
end
end
end
state Quest_Ninja_Ende begin
when letter begin
local v = find_npc_by_vnum(20355)
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Berufsausbildung abgeschlossen")
end
when button or info begin
say_title("Berufsausbildung abgeschlossen!")
say("Du hast die Ausbildung erfolgreich abgeschlossen.")
say("Begib dich zum Hauptmann, um den Beruf zu meistern.")
say("")
say_reward("Auftrag: Gehe zum Hauptmann!")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say_title("Hautpmann:")
affect.add_collect(apply.DEX,15,60*60*365*10)
affect.add_collect(apply.ATTBONUS_HUMAN,10,60*60*365*10)
say("Herzlichen Glückwusch zum erfolgreichen Abschluss")
say("deiner Attentäterausbildung.")
say_reward("15 DEX-Bonus erhalten.")
say_reward("10% Schadensbonus gegen Mitspieler erhalten.")
say("Viel Glück!")
clear_letter()
set_state("__COMPLETE__")
end
end
-- Sura Beruf-Quest
state Quest_Sura_Anfang begin
when letter begin
local v = find_npc_by_vnum("20355")
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Wähle deinen Beruf")
end
when button or info begin
say_title("Wähle deinen Beruf!")
say("Es ist so weit " .. pc.get_name() .. "!")
say("Du darfst jetzt deinen Beruf auswählen.")
say("Dies kannst du beim Hauptmann tun.")
say("")
say_reward("Aufgabe: Gehe zum Hauptmann!")
end
when __TARGET__.target.click begin
say_title("Hauptmann:")
say("Da bist du ja!")
say("Von dir wurde mir schon berichtet.")
say("Es scheint, als ob du bisher gut in dieser")
say("abenteuerlichen Welt zurecht gekommen bist.")
say("Also gut, da du nun Level 50 erreich hast, darfst")
say("du deinen Beruf wählen.")
wait()
say("Es gibt für Suras zwei Arten von")
say("Berufen.")
say("Der erste ist der des Schattenmagiers.")
say("Wenn du diesen Beruf wählst, ist es deine")
say("Bestimmung, feindliche Spieler zu töten,")
say("egal, ob diese gut oder böse sind.")
say("Der zweite Beruf ist der des Zauberers.")
say("Diese ist spezialisiert auf das")
say("Töten von mächtigen Monstern und Ungeheuern.")
say("Über welchen Beruf möchtest du mehr erfahren?")
local mehr_infos = select("Schattenmagier", "Zauberer", "Abwarten")
if mehr_infos == 1 then
say_title("Hauptmann:")
say("Als Schattenmagier ist es deine Aufgabe,")
say("deine Mitspieler zu töten.")
say("Du erhältst einen Intelligenz- sowie einen")
say("Schadensbonus gegen jegliche Mitspieler.")
say("Außerdem erhöht sich deine Magieverteidigung.")
say("Später erhältst du auch noch passive")
say("Boni, aber bis es soweit ist, wird noch")
say("viel Zeit vergehen.")
say_reward("Möchtest du den Beruf des Schattenmagiers wählen?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Um ein Schattenmagier zu werden, musst du")
say("allerdings erst eine Aufgabe erfüllen.")
say("Deine Aufgabe ist es, 20 Spieler aus")
say("anderen Reichen zu töten.")
say("Wenn du dies getan hast,")
say("kehre umgehend zu mir zurück.")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Sura_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir nochmal!")
say("Komme zu mir zurück, sobald du")
say("eine Entscheidung getroffen hast!")
elseif job_annehmen == 3 then
restart_quest()
end
elseif mehr_infos == 2 then
say_title("Hauptmann:")
say("Als Zauberer erhält man einen")
say("Bonus auf Intelligenz und Lebenspunkte,")
say("einen offensiven Boni gegen Monster")
say("und einen Verteidigungsbonus.")
say("Im Gegensatz zum Schattenmagier erhältst")
say("du als Zauberer später keine passiven Boni,")
say("dafür werden deine aktiven Boni sich später")
say("erneut erhöhen.")
say_reward("Möchtest du Zauberer werden?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Um Zauberer zu werden, musst du allerdings")
say("erst einmal zeigen, dass du stark genug bist.")
say("Töte 50 Buhmänner um")
say("Zauberer zu werden!")
say("Wenn du deine Aufgabe erfüllt hast, kehre")
say("umgehend zu mir zurück.")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Sura_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir noch einmal!")
say("Komme zu mir zurück, sobald du")
say("eine Entscheidung getroffen hast!")
elseif jop_annehmen == 3 then
restart_quest()
end
end
end
end
state Quest_Sura_Angenommen begin
when letter begin
send_letter("Berufsausbildung")
end
when button or info begin
say_title("Berufsausbildung")
say("Deine Ausbildung hat begonnen!")
say("Um deine Ausbildung abzuschließen und den Beruf zu")
say("erlernen, musst du folgende Aufgabe bewältigen:")
if pc.getqf("Beruf_ID") == 1 then
say_reward("Töte 20 Spieler aus einem anderen Reich.")
say_reward("Spieler getötet: " .. pc.getqf("Player_Killed"))
elseif pc.getqf("Beruf_ID") == 2 then
say_reward("Töte 50 Buhmänner.")
say_reward("Buhmänner getötet: " .. pc.getqf("Buhman_Killed"))
else
say("Leider konnte der Beruf nicht gefunden werden.")
say("Bitte wiederhole die Annahme des Berufs.")
pc.setqf("Beruf_ID", 0)
restart_quest()
end
end
when kill with npc.get_empire() != 0 and npc.get_empire() != pc.get_empire() and pc.getqf("Beruf_ID") == 1 begin
pc.setqf("Player_Killed", pc.getqf("Player_Killed") + 1)
if pc.getqf("Player_Killed") >= 20 then
set_state("Quest_Sura_Ende")
end
end
when 1303.kill with pc.getqf("Beruf_ID") == 2 begin
pc.setqf("Buhman_Killed", pc.getqf("Buhman_Killed") + 1)
if pc.getqf("Buhman_Killed") >= 50 then
set_state("Quest_Sura_Ende")
end
end
end
state Quest_Sura_Ende begin
when letter begin
local v = find_npc_by_vnum(20355)
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Berufsausbildung abgeschlossen!")
end
when button or info begin
say_title("Berufsausbildung abgeschlossen!")
say("Du hast deine Ausbildung erfolgreich abgeschlossen.")
say("Um den Beruf zu meistern, kehre umgehend zum Hauptmann.")
say("zurück.")
say("")
say_reward("Auftrag: Gehe zum Hauptmann!")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
clear_letter()
complete_quest()
say_title("Hautpmann:")
if pc.getqf("Beruf_ID") == 1 then
affect.add_collect(apply.INT,10,60*60*365*10)
affect.add_collect(apply.ATTBONUS_HUMAN,10,60*60*365*10)
say("Herzlichen Glückwusch zum erfolgreichen Abschluss")
say("deiner Schattenmagierausbildung!")
say_reward("10 INT-Bonus erhalten.")
say_reward("10% Schadens-Bonus gg Spieler erhalten.")
say_reward("15% Magieverteidigung erhalten.") -- *** EINFÜGEN ***
elseif pc.getqf("Beruf_ID") == 2 then
say("Herzlichen Glückwusch zum erfolgreichen Abschluss")
say("deiner Zaubererausbildung!")
affect.add_collect(apply.INT,15,60*60*365*10)
affect.add_collect(apply.ATTBONUS_ANIMAL,20,60*60*365*10)
affect.add_collect(apply.DEF_GRADE_BONUS,50,60*60*365*10)
say_reward("15 INT-Bonus erhalten.")
say_reward("20% Schadens-Bonus gg Monster erhalten.")
say_reward("50 Verteidigung erhalten.")
end
say("Viel Glück!")
end
end
-- Schami Beruf-Quest
state Quest_Schami_Anfang begin
when letter begin
local v = find_npc_by_vnum("20355")
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Wähle deinen Beruf")
end
when button or info begin
say_title("Wähle deinen Beruf!")
say("Es ist so weit " .. pc.get_name() .. "!")
say("Du darfst jetzt deinen Beruf auswählen.")
say("Dies kannst du beim Hauptmann tun.")
say("")
say_reward("Aufgabe: Gehe zum Hauptmann!")
end
when __TARGET__.target.click begin
say_title("Hauptmann:")
say("Da bist du ja!")
say("Von dir wurde mir schon berichtet.")
say("Es scheint, als ob du bisher gut in dieser")
say("abenteuerlichen Welt zurecht gekommen bist.")
say("Also gut, da du nun Level 50 erreich hast, darfst")
say("du deinen Beruf wählen.")
wait()
say("Es gibt für Schamanen zwei Arten von")
say("Berufen.")
say("Der erste ist der des Heiligen.")
say("Bei der Auswahl dieses Berufes erhältst du")
say("viele Aufgaben und bekommst viel")
say("Ansehen und Geld.")
say("Der zweite Beruf ist der 'Herr der Drachen'.")
say("Wenn du dich für ihn entscheidest,")
say("wirst du für jeden getöteten Mitspieler,")
say("extra Geld erhalten.")
say("Über welchen Beruf möchtest du mehr erfahren?")
local mehr_infos = select("Heiliger", "Herr der Drachen", "Abwarten")
if mehr_infos == 1 then
say_title("Hauptmann:")
say("Als Heiliger bist du eher der Unterstützer")
say("als Kämpfer.")
say("Du wirst beispielsweise einen passiven Yangbonus erhalten,")
say("solange du online bist.")
say("Außerdem erhälst du Lebenspunkte und einen Verteidigungsbonus")
say("sowie einen Intelligenzbonus.")
say_reward("Möchtest du Heiliger werden?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Um Heiliger zu werden, musst du aber")
say("erst eine Aufgabe bewältigen.")
say("Töte 10 'Verzaubertes Eis' und 10 'Eislöwen!")
say("")
say("Als Bonus wirst du Lebenspunkte und einen Verteidigungbonus")
say("sowie auch einen Intelligenzbonus erhalten.")
say("Kehre umgehend zu mir zurück,")
say("sobald du deine Aufgabe erfüllt hast!")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Schami_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir noch einmal!")
say("Komme zu mir zurück, sobald du deine Entscheidung")
say("getroffen hast!")
elseif job_annehmen == 3 then
restart_quest()
end
elseif mehr_infos == 2 then
say("Um 'Herr der Drachen' zu werden, musst du")
say("allerdings zuerst eine Aufgabe erfüllen..")
say("Du erhältst als Herr der Drachen einen")
say("Intelligenzbonus und bist stärker gegen deine")
say("Mitspieler.")
say("Außerdem wirst du einen Goldbonus für jeden")
say("getöteten Gegner erhalten.")
say_reward("Möchtest du 'Herr der Drachen' werden?")
local job_annehmen = select("Ja", "Nein", "Zurück")
if job_annehmen == 1 then
target.delete("__TARGET__")
say_title("Hauptmann:")
say("Um Herr der Drachen zu werden, musst du")
say("allerdings erst einmal zeigen, dass du stark")
say("genug bist.")
say("Töte 10 Spieler!")
say("")
say("Wenn du deine Aufgabe erfüllt hast, kehre")
say("umgehend zu mir zurück!")
pc.setqf("Beruf_ID", mehr_infos)
set_state("Quest_Schami_Angenommen")
elseif job_annehmen == 2 then
say_title("Hauptmann:")
say("Überleg es dir noch einmal!")
say("Komme zu mir zurück, sobald du eine")
say("Entscheidung getroffen hast!")
elseif jop_annehmen == 3 then
restart_quest()
end
end
end
end
state Quest_Schami_Angenommen begin
when letter begin
send_letter("Berufsausbildung")
end
when button or info begin
say_title("Berufsausbildung")
say("Deine Ausbildung hat begonnen!")
say("Um deine Ausbildung abzuschließen und deinen Beruf zu")
say("erlernen, musst du folgende Aufgabe bewältigen:")
if pc.getqf("Beruf_ID") == 1 then
say_reward("Töte 10 'Verzaubertes Eis' und 10 'Eislöwen'.")
say_reward("Verzaubertes Eis getötet: " .. pc.getqf("Verzaubertes_Eis_Killed"))
say_reward("Eislöwen getötet: " .. pc.getqf("Eislöwen_Killed"))
elseif pc.getqf("Beruf_ID") == 2 then
say_reward("Töte 10 Spieler aus jedem Reich!")
say_reward("Spieler getötet:")
say_reward("Blaues Reich: " .. pc.getqf("Blue_Player_Killed"))
say_reward("Gelbes Reich: " .. pc.getqf("Yellow_Player_Killed"))
say_reward("Rotes Reich: " .. pc.getqf("Red_Player_Killed"))
else
say("Leider konnte der Beruf nicht gefunden werden.")
say("Bitte wiederhole die Annahme des Berufs.")
pc.setqf("Beruf_ID", 0)
restart_quest()
end
end
when kill with pc.getqf("Beruf_ID") == 1 begin
chat(npc.get_race())
if npc.get_race() == 1101 and pc.getqf("Verzaubertes_Eis_Killed") < 10 then
pc.setqf("Verzaubertes_Eis_Killed", pc.getqf("Verzaubertes_Eis_Killed") + 1)
end
if npc.get_race() == 1104 and pc.getqf("Eislöwen_Killed") < 10 then
pc.setqf("Eislöwen_Killed", pc.getqf("Eislöwen_Killed") + 1)
end
if pc.getqf("Verzaubertes_Eis_Killed") >= 10 and pc.getqf("Eislöwen_Killed") >= 10 then
set_state("Quest_Schami_Ende")
end
end
when kill with pc.getqf("Beruf_ID") == 2 begin
if npc.get_empire() == 1 then
pc.setqf("Red_Player_Killed", pc.getqf("Red_Player_Killed") + 1)
elseif npc.get_empire() == 2 then
pc.setqf("Yellow_Player_Killed", pc.getqf("Yellow_Player_Killed") + 1)
elseif npc.get_empire() == 3 then
pc.setqf("Blue_Player_Killed", pc.getqf("Blue_Player_Killed") + 1)
end
if pc.getqf("Red_Player_Killed") >= 10 and pc.getqf("Yellow_Player_Killed") >= 10 and pc.getqf("Blue_Player_Killed") >= 10 then
set_state("Quest_Schami_Ende")
end
end
end
state Quest_Schami_Ende begin
when letter begin
local v = find_npc_by_vnum(20355)
if v == 0 then
else
target.vid("__TARGET__", v, "Hauptmann")
end
send_letter("Berufsausbildung abgeschlossen!")
end
when button or info begin
say_title("Berufsausbildung abgeschlossen!")
say("Du hast deine Ausbildung erfolgreich abgeschlossen.")
say("Um den Beruf zu meistern, kehre nun zum Hauptmann zurück.")
say("")
say_reward("Auftrag: Gehe zum Hauptmann!")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say_title("Hautpmann:")
if pc.getqf("Beruf_ID") == 1 then
affect.add_collect(apply.INT,15,60*60*365*10)
affect.add_collect(apply.CON,10,60*60*365*10)
affect.add_collect(apply.DEF_GRADE_BONUS,20,60*60*365*10)
say("Herzlichen Glückwusch zum erfolgreichen Abschluss")
say("deiner Heiligenausbildung!")
say_reward("15 INT-Bonus erhalten.")
say_reward("10 VIT-Bonus erhalten.")
say_reward("20 Verteidigung erhalten.")
say_reward("Passiven Goldbonus erhalten!")
elseif pc.getqf("Beruf_ID") == 2 then
say("Herzlichen Glückwusch zum erfolgreichen Abschluss")
say("deiner Ausbildung zum 'Herr der Drachen'!")
affect.add_collect(apply.INT,15,60*60*365*10)
affect.add_collect(apply.ATTBONUS_HUMAN,10,60*60*365*10)
say_reward("15 INT-Bonus erhalten.")
say_reward("15% Schadens-Bonus gg Spieler erhalten.")
say_reward("Passiver Goldbonus für Spielertötungen erhalten.")
end
say("Viel Glück!")
clear_letter()
complete_quest()
end
end
state __COMPLETE__ begin
-- Jäger Passive
when kill with pc.getqf("Beruf_ID") == 1 and pc.job == 0 and npc.get_empire() == 0 begin
pc.change_money(npc.get_level() * (npc.get_level() / 2) * 2 * pc.get_level())
local max_exp = pc.get_exp + pc.get_next_exp
pc.give_exp(max_exp / 10000 * npc.get_level())
end
-- Ninja Passive
when kill with pc.getqf("Beruf_ID") == 1 and pc.job == 1 and npc.get_empire() != 0 begin
if npc.get_level() >= pc.get_level - 10 then
pc.change_money(npc.get_level() * (npc.get_level() / 2) * 2 * pc.get_level())
local max_exp = pc.get_exp + pc.get_next_exp
pc.give_exp(max_exp / 10000 * npc.get_level())
else
chat("Dieser Spieler war leider nicht hoch genug.")
chat("Er muss mindestens Level " .. pc.get_level() - 10 .. " sein.")
end
end
-- Schami Passive
when kill with pc.getqf("Beruf_ID") == 2 and pc.job == 3 and npc.get_empire() != 0 begin
if npc.get_level() >= pc.get_level - 10 then
pc.change_money(npc.get_level() * (npc.get_level() / 2) * 2 * pc.get_level())
local max_exp = pc.get_exp + pc.get_next_exp
pc.give_exp(max_exp / 10000 * npc.get_level())
else
chat("Dieser Spieler war leider nicht hoch genug.")
chat("Er muss mindestens Level " .. pc.get_level() - 10 .. " sein.")
end
end
end
end