|
You last visited: Today at 07:02
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
10/17/2013, 14:41
|
#9181
|
elite*gold: 0
Join Date: May 2013
Posts: 605
Received Thanks: 580
|
Quote:
Originally Posted by TeRRoRSiZex3
Da die Grotte der Verbannung z.B ab 70 wie müsste der Code aussehen?
Sorry ich gebs sogar selber zu das ich ein Noob im Questen bin  aber jeder fängt mal klein an also killt mich nich 
|
PHP Code:
function normmaps3()
say_title(item.get_name().." : Normale Maps")
local normmaps3 = select("Roter Wald","Orktal","Große Wüste","Grotte der Verbannung(1 Etage - Anfang)(LvL 70)","Weiter","Zurück")
if normmaps3 == 1 then
pc.warp(1119500, 70300)
elseif normmaps3 == 2 then
pc.warp(270400, 739900)
elseif normmaps3 == 3 then
pc.warp(221900, 502700)
elseif normmaps3 == 4 then -- grotte
if pc.get_level()>=70 then
pc.warp(10000, 1214200)
else
say"du musst lvl 70 sein"
return
end
elseif normmaps3 == 5 then
warpring.normmaps4()
elseif normmaps3 == 6 then
warpring.normmaps2()
end
end
|
|
|
10/17/2013, 21:56
|
#9182
|
elite*gold: 71
Join Date: Dec 2011
Posts: 598
Received Thanks: 149
|
PHP Code:
quest erfahrung begin state start begin when kill with not npc.is_pc() begin local a = mysql_query("SELECT gold_max FROM player.mob_proto where vnum = '"..npc.get_race().."';") pc.changegold(a) end end end
Die Query funktioniert nicht :S
|
|
|
10/17/2013, 22:25
|
#9183
|
elite*gold: 0
Join Date: Oct 2013
Posts: 194
Received Thanks: 83
|
Quote:
Originally Posted by MrPlayboy
PHP Code:
quest erfahrung begin
state start begin
when kill with not npc.is_pc() begin
local a = mysql_query("SELECT gold_max FROM player.mob_proto where vnum = '"..npc.get_race().."';")
pc.changegold(a)
end
end
end
Die Query funktioniert nicht :S
|
PHP Code:
quest erfahrung begin
state start begin
when kill with not npc.is_pc() begin
local a = mysql_query("SELECT gold_max FROM player.mob_proto where vnum = "..npc.get_race()..";").gold_max[1]
pc.changegold(a)
end
end
end
|
|
|
10/17/2013, 22:32
|
#9184
|
elite*gold: 71
Join Date: Dec 2011
Posts: 598
Received Thanks: 149
|
Nope funzt nicht
|
|
|
10/18/2013, 00:31
|
#9185
|
elite*gold: 0
Join Date: May 2013
Posts: 605
Received Thanks: 580
|
Quote:
Originally Posted by .ProjektX²
PHP Code:
quest erfahrung begin
state start begin
when kill with not npc.is_pc() begin
local a = mysql_query("SELECT gold_max FROM player.mob_proto where vnum = "..npc.get_race()..";").gold_max[1]
pc.changegold(a)
end
end
end
|
PHP Code:
quest erfahrung begin
state start begin
when kill with not npc.is_pc() begin
local a = mysql_query("SELECT gold_max FROM player.mob_proto where vnum = "..npc.get_race()..";")[1][1]
local ok,err = pcall(pc.changegold(tonumber(a)))
if not ok then print"error by execute changegold function" print(err)end
end
end
end
|
|
|
10/18/2013, 14:06
|
#9186
|
elite*gold: 71
Join Date: Dec 2011
Posts: 598
Received Thanks: 149
|
Geht leider immernoch nicht
Edit: funktion pcall und print ist nicht in der questlib definiert
|
|
|
10/19/2013, 11:48
|
#9187
|
elite*gold: 0
Join Date: Feb 2012
Posts: 49
Received Thanks: 19
|
[NPC nicht Anklickbar]
Hi Com.
Ich habe einen neuen NPC eingefügt wollte ihn natürlich auch direkt
mit einer Quest ausstatten nur möchte der gute Herr "Wächter" sich nicht anklicken lassen
One_click 1 sowie 2 auch schon probiert
quest:
Code:
quest pvp_kills_rank begin
state start begin
when login begin
local pid = mysql_query("select id from player.player where name='"..pc.get_name().."' LIMIT 1")
table.foreachi(pid,function(i,l)
pc.setqf("pid", l[1])
end)
local set = mysql_query("INSERT INTO pvp_kills (name, kills, pid) VALUES ('"..pc.get_name().."', 0, "..pc.getqf("pid")..")")
pc.setqf("pvp_kills_rank", 0)
set_state(select_kills)
end
end
state select_kills begin
when login begin
local get1 = mysql_query("select name from pvp_kills where pid= "..pc.getqf("pid").." LIMIT 1")
if get1 ~= pc.get_name() then
mysql_query("UPDATE pvp_kills SET name = '"..pc.get_name().."' WHERE pid = '"..pc.getqf("pid").."' LIMIT 1")
end
end
when kill with npc.is_pc() begin
mysql_query("UPDATE pvp_kills SET kills = kills+1 WHERE pid = '"..pc.getqf("pid").."' LIMIT 1")
pp = mysql_query("select name,kills from pvp_kills ORDER BY kills desc LIMIT 15")
table.foreachi(pp,function(i,l)
if l[1]== pc.get_name() then
if pc.getqf("pvp_kills_rank") ~= i then
pc.setqf("pvp_kills_rank", i)
chat("Du bist nun auf Rang "..i.." der PvP Rangliste")
if i==1 then
notice_all(pc.get_name().." ist nun auf Platz 1 der PvP Rangliste")
end
end
end
end)
end
when 60002.chat."PvP-Rangliste" begin
say_title("Ranglisten")
say_black("Was möchtest du tun?")
local s = select("Gesamte Liste", "Mein Rang", "Spieler suchen", "Abbrechen")
if s == 4 then
return
end
if s == 1 then
pp = mysql_query("select name,kills from pvp_kills ORDER BY kills desc LIMIT 15")
say_black("Rang - Name - Kills")
pc.setqf("pvp_kills_rank",0)
table.foreachi(pp,function(i,l)
say_red(i.." - "..l[1].." - "..l[2])
end)
elseif s == 2 then
pp = mysql_query("select name,kills from pvp_kills where pid="..pc.getqf("pid").." ORDER BY kills desc LIMIT 1")
say_title("Mein Rang")
say_black("Rang - Name - Kills")
pc.setqf("pvp_kills_rank",0)
table.foreachi(pp,function(i,l)
say_red(i.." - "..l[1].." - "..l[2])
end)
elseif s == 3 then
say_title("Spieler suchen")
say_black("Gib den Namen des zu suchenden ein")
local name = input()
if name == '' then
say_title("Fehler")
say_black("Das Eingabefeld ist leer")
else
pp = mysql_query("select name,kills from pvp_kills where name='"..name.."' ORDER BY kills desc LIMIT 1")
say_title("Spieler suchen")
say_black("Rang - Name - Kills")
pc.setqf("pvp_kills_rank",0)
table.foreachi(pp,function(i,l)
say_red(i.." - "..l[1].." - "..l[2])
end)
end
end
end
end
end
|
|
|
10/19/2013, 16:53
|
#9188
|
elite*gold: 0
Join Date: May 2013
Posts: 180
Received Thanks: 8
|
Moin die quest bei mir geht nicht was tun?
|
|
|
10/19/2013, 18:05
|
#9189
|
elite*gold: 0
Join Date: Dec 2008
Posts: 2,825
Received Thanks: 1,538
|
Quote:
Originally Posted by [SA]ProtoTyp
Moin die quest bei mir geht nicht was tun?

|
ohne neue game die die funktionnen unterstützt wird das nix...
|
|
|
10/20/2013, 13:20
|
#9190
|
elite*gold: 0
Join Date: Jul 2012
Posts: 22
Received Thanks: 0
|
Please help !
Error :
Quest :
Quote:
quest achievement_update begin
state start begin
-- // shop
when 20094.chat."Achievement Shop" begin
local points = pc.getqf("achieve")
local category = {"Waffen","Rüstungen","Pvm - Equipment","Uppitems","Truhen","Ringe"}
local list = {
-- Kategorie 1
{
-- Name Vnum reward points
{"Giftschwert+9", 9985, 3500},
{"Grollschwert+9", 9986, 3500},
{"Orchideenglocke+9", 9987, 3500},
{"Löwenschwert+9", 9988, 3500},
{"Teufelsflügel-Chakram+9", 9989, 3500},
},
-- Kategorie 2
{
{"Schwarzstahlpanzer+9", 11299, 1000},
{"Schwarzwindanzug+9", 11499, 1000},
{"Magieplattenpanzer+9", 11699, 1000},
{"Schwarze Kleidung+9", 11899, 1000},
},
-- Kategorie 3
{
{"Smaragtarmband", 14549, 5000},
{"Smaragthalskette", 16549, 5000},
{"Smaragtohrringe", 17549, 5000},
},
-- Kategorie 4
{
{"Stück Kristall", 30204, 100},
{"Wasserstein", 27991, 500},
},
-- Kategorie 5
{
{"Truhe der Macht", 38050, 500},
{"Truhe des ewigen Winters", 38053, 3000},
{"Truhe der Könige", 38052, 3000},
},
-- Kategorie 6
{
{"Halbmondring", 10008, 400},
{"Ring des Kampfes", 71143, 1500},
{"Ring des Feuers", 71149, 2500},
{"Ring des Wassers", 71148, 2500},
{"Lolli", 71136, 5000},
}
}
local s = select3(category)
local menu = {}
for i = 1, table.getn(list[s]) do
table.insert(menu, list[s][i][1])
end
say_title("Achievement Shop")
say("Wähle ein Item aus:")
say()
local t = select3(menu)
local reward_item = list[s][t][2]
local reward_count = list[s][t][3]
say_title("Achievement Shop")
say_reward("Achievementpoints: "..points)
say()
say("Gewähltes Item: "..item_name(reward_item))
say_reward(string.format("Das Item kostet %d Achievementpoints", reward_count))
say()
if points < reward_count then
return say("Du hast nicht genügend Achievementpoints")
end
if select("Eintauschen","Abbrechen") == 2 then return end
pc.setqf("achieve", points - reward_count)
pc.give_item2(reward_item)
end
-- // get points
when login begin
mob_data = {
-- Vnum Points qf cmdchat
{691, 20, "691", "achievement ".. mob_name(691) .."_getötet#".. pc.getqf("691") + 1 .."%".. pc.getqf("achieve") + 20},
{791, 20, "791", "achievement ".. mob_name(791) .."_getötet#".. pc.getqf("791") + 1 .."%".. pc.getqf("achieve") + 20},
{792, 20, "792", "achievement ".. mob_name(792) .."_getötet#".. pc.getqf("792") + 1 .."%".. pc.getqf("achieve") + 20},
{1192, 150, "1192", "achievement ".. mob_name(1192) .."_getötet#".. pc.getqf("1192") + 1 .."%".. pc.getqf("achieve") + 20},
}
item_data = {
{12019, 50, "12019", "achievement Blaustahlpanzer+9%".. pc.getqf("achieve") + 50},
{12029, 50, "12029", "achievement Drachenanzug+9%".. pc.getqf("achieve") + 50},
{12039, 50, "12039", "achievement Auraplattenpanzer+9%".. pc.getqf("achieve") + 50},
{12049, 50, "12049", "achievement Drachenkleidung+9%".. pc.getqf("achieve") + 50},
}
level_data = {
-- Level points qf cmdchat
{50, 50, "level50", "achievement Level_50_erreicht%".. pc.getqf("achieve") + 50},
{60, 50, "level60", "achievement Level_60_erreicht%".. pc.getqf("achieve") + 50},
{70, 50, "level70", "achievement Level_70_erreicht%".. pc.getqf("achieve") + 50},
{80, 50, "level80", "achievement Level_80_erreicht%".. pc.getqf("achieve") + 50},
{90, 50, "level90", "achievement Level_90_erreicht%".. pc.getqf("achieve") + 50},
{99, 50, "level99", "achievement Level_99_erreicht%".. pc.getqf("achieve") + 50},
}
end
when kill with not npc.is_pc() begin
local vid = npc.get_vid()
local function in_table(arg)
for i = 1, table.getn(mob_data) do
if mob_data[i][1] == arg then
return i
end
end
return false
end
local d = in_table(vid)
if d ~= false then
pc.setqf(mob_data[d][3], pc.getqf(mob_data[d][3]) + tonumber(mob_data[d][2]))
cmdchat(mob_data[d][4])
end
end
when use begin
local vnum = item.get_vnum()
local function in_table(arg)
for i = 1, table.getn(mob_data) do
if mob_data[i][1] == arg then
return i
end
end
return false
end
local d = in_table(vnum)
if d ~= false and pc.getqf(tostring(item_data[d][3]) == 0 then
pc.setqf(item_data[d][3], 1)
pc.setqf(item_data[d][3], pc.getqf(item_data[d][3]) + tonumber(item_data[d][2]))
cmdchat(item_data[d][4])
end
end
when levelup begin
local lvl = pc.get_level()
local function in_table(arg)
for i = 1, table.getn(mob_data) do
if mob_data[i][1] == arg then
return i
end
end
return false
end
local d = in_table(lvl)
if d ~= false and pc.getqf(tostring(level_data[d][3]) == 0 then
pc.setqf(level_data[d][3], 1)
pc.setqf(level_data[d][3], pc.getqf(level_data[d][3]) + tonumber(level_data[d][2]))
cmdchat(level_data[d][4])
end
end
end
end
|
|
|
|
10/20/2013, 21:27
|
#9191
|
elite*gold: 0
Join Date: Jan 2009
Posts: 267
Received Thanks: 103
|
wo habe ich den Fehler??
Wäre nett wenn ihr mir helfen könntet
PHP Code:
quest beta begin state start begin when 29999.chat."Neue Maps" begin say_title("Neue Maps") say("") say("Bitte wähle aus wohin du geportet werden möchtest!") say("") local s = select("Kap des Drachenfeuers", "Nephritbucht", "Donnerberge","Gautamakliff", "Abbrechen") if s == 1 then pc.warp(10240, 16640) end if s == 2 then pc.warp(11264, 15104) end if s == 3 then pc.warp(11776, 16640) end if s ==4 then pc.warp(10496, 15104) if s == 5 then return end end end
server sagt:
|
|
|
10/20/2013, 22:11
|
#9192
|
elite*gold: 0
Join Date: Oct 2013
Posts: 194
Received Thanks: 83
|
Quote:
Originally Posted by holosko74
wo habe ich den Fehler??
Wäre nett wenn ihr mir helfen könntet
PHP Code:
quest beta begin
state start begin
when 29999.chat."Neue Maps" begin
say_title("Neue Maps")
say("")
say("Bitte wähle aus wohin du geportet werden möchtest!")
say("")
local s = select("Kap des Drachenfeuers", "Nephritbucht", "Donnerberge","Gautamakliff", "Abbrechen")
if s == 1 then
pc.warp(10240, 16640)
end
if s == 2 then
pc.warp(11264, 15104)
end
if s == 3 then
pc.warp(11776, 16640)
end
if s ==4 then
pc.warp(10496, 15104)
if s == 5 then
return
end
end
end
server sagt:

|
end fehlt
|
|
|
10/20/2013, 22:12
|
#9193
|
elite*gold: 15
Join Date: May 2013
Posts: 1,718
Received Thanks: 245
|
Dir fehlen ein paar ends.
|
|
|
10/21/2013, 07:35
|
#9194
|
elite*gold: 191
Join Date: May 2009
Posts: 1,214
Received Thanks: 2,597
|
PHP Code:
quest beta begin state start begin when 29999.chat."Neue Maps" begin say_title("Neue Maps") say("") say("Bitte wähle aus wohin du geportet werden möchtest!") say("") local s = select("Kap des Drachenfeuers", "Nephritbucht", "Donnerberge","Gautamakliff", "Abbrechen") if s == 1 then pc.warp(10240, 16640) end if s == 2 then pc.warp(11264, 15104) end if s == 3 then pc.warp(11776, 16640) end
if s ==4 then pc.warp(10496, 15104) end if s == 5 then return end end end end
Eine praktische Gewohnheit ist es, Blöcke sofort zu schließen, wenn man sie öffnet, und erst dann den Inhalt zu schreiben c:
Zusätzlich solltest du dich in die if clauses etwas einlesen - elseif ist recht nützlich
Greets
Mijago
|
|
|
10/21/2013, 22:22
|
#9195
|
elite*gold: 0
Join Date: Oct 2013
Posts: 18
Received Thanks: 3
|
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
Zählt die Kills nich (Invoice Files)
|
|
|
All times are GMT +1. The time now is 07:02.
|
|