Danke für deine Hilfe. Ich werde jetzt die Quest nachschreiben, sodass ich meinen Fehler "verbessern" kann. Schönen Tag und danke nochmals für die Hilfe! ;)
Dieses Problem:Quote:
Welches Problem?
Quote:
Hallo Liebe Com
Hätte einer Evtl eine lösung für mich wie ich diesen fehler beheben könnte ??
Error occured on compile quest
arena_manager.quest
Aber wenn ich diese quest lösche kommt der fehler bei der nächsten quest da ich nichts brauchbares gefunden habe in der SuFu oder bei google Frage ich Einfach mal euch Währe nett wenn ihr mir da Weiter helfen könntet
Mfg 99nos1234
if pc.getqf("safe_exp") == 0 and pc.getqf("anti_exp") == 0 then
pc.setqf("safe_exp", pc.get_exp())
else
pc.give_exp2(pc.getqf("safe_exp"))
pc.setqf("safe_exp", 0)
end
pc.setqf("anti_exp", (pc.getqf("anti_exp") > 0 and pc.getqf("anti_exp")-pc.getqf("anti_exp") or 1))
chat("Erhalten von Erfahrung "..({"aktiviert","deaktiviert"})[pc.getqf("anti_exp")+1]..".")
end
when kill with not npc.is_pc() and pc.getqf("anti_exp") > 0 begin
pc.give_exp2(-pc.get_exp())
Im Vanilla Core gibt es die schöne FunktionQuote:
Hey,
habe ein Problem bei meiner Antiexp Quest. Und zwar tut sie genau das was sie nicht tun soll. Wenn man exp hat und diesen aktiviert , kriegt man komischer Weise 2 Million Exp dazu. Also sie gibt Exp und verhindert nicht das geben.
Hier die Quest:
PHP Code:if pc.getqf("safe_exp") == 0 and pc.getqf("anti_exp") == 0 then
pc.setqf("safe_exp", pc.get_exp())
else
pc.give_exp2(pc.getqf("safe_exp"))
pc.setqf("safe_exp", 0)
end
pc.setqf("anti_exp", (pc.getqf("anti_exp") > 0 and pc.getqf("anti_exp")-pc.getqf("anti_exp") or 1))
chat("Erhalten von Erfahrung "..({"aktiviert","deaktiviert"})[pc.getqf("anti_exp")+1]..".")
end
when kill with not npc.is_pc() and pc.getqf("anti_exp") > 0 begin
pc.give_exp2(-pc.get_exp())
pc.block_exp()
pc.unblock_exp()
Hab es so gefixxt bekommen:Quote:
Im Vanilla Core gibt es die schöne Funktion
PHP Code:pc.block_exp()
pc.unblock_exp()
if pc.getqf("antiexp") == 0 then
pc.setqf("antiexp", 1)
pc.block_exp()
elseif pc.getqf("antiexp") == 1 then
pc.setqf("antiexp", 0)
pc.unblock_exp()
end
chat("Erhalten von Erfahrung "..({"aktiviert","deaktiviert"})[pc.getqf("anti_exp")+1]..".")
end
Funktioniert es so nicht?Quote:
Hab es so gefixxt bekommen:
Allerdings fehlt nur der Part hier:PHP Code:if pc.getqf("antiexp") == 0 then
pc.setqf("antiexp", 1)
pc.block_exp()
elseif pc.getqf("antiexp") == 1 then
pc.setqf("antiexp", 0)
pc.unblock_exp()
end
Weiß noch nicht wie ich es machen kann, dass im Chat aktiviert oder deaktiviert erscheint.PHP Code:chat("Erhalten von Erfahrung "..({"aktiviert","deaktiviert"})[pc.getqf("anti_exp")+1]..".")
end
if pc.getqf("antiexp") == 0 then
pc.setqf("antiexp", 1)
chat("blabla on")
pc.block_exp()
elseif pc.getqf("antiexp") == 1 then
pc.setqf("antiexp", 0)
pc.unblock_exp()
chat("blabla off")
end
end
Funktioniert nun so wie es funktionieren soll ! :)Quote:
Funktioniert es so nicht?
Falls nicht kannst du es auch optional in dem If Block reinpacken. -->
PHP Code:if pc.getqf("antiexp") == 0 then
pc.setqf("antiexp", 1)
chat("blabla on")
pc.block_exp()
elseif pc.getqf("antiexp") == 1 then
pc.setqf("antiexp", 0)
pc.unblock_exp()
chat("blabla off")
end
end
quest guild_building_melt begin
state start begin
function GetOreRefineCost(cost)
if pc.empire != npc.empire then
return 5 * cost
end
if pc.get_guild() == npc.get_guild() then
return cost * 0.8
end
return cost
end
function GetMyRefineNum(race)
return race - 20060 + 50601 or
race - 20061 + 50602 or
race - 20062 + 50603 or
race - 20063 + 50604 or
race - 20064 + 50605 or
race - 20065 + 50606 or
race - 20066 + 50607 or
race - 20067 + 50608 or
race - 20068 + 50609 or
race - 20069 + 50610 or
race - 20070 + 50611 or
race - 20071 + 50612 or
race - 20072 + 50613 or
race - 25410 + 50614 or
race - 25411 + 50615 or
race - 25412 + 50616 or
race - 25413 + 50617 or
race - 25414 + 50618
end
function GetOreRefineGoodPct()
return 75
end
function GetOreRefineBadPct()
return 25
end
--function GetOreRefineJuwelesPct()
-- return 65
--end
function IsRefinableRawOre(vnum)
return vnum >= 50601 and vnum <= 50618
end
-- all another Ores
function DoRefine(pct)
local from_postfix
local from_name = item_name(item.vnum)
local to_vnum = item.vnum + 20
local to_name = item_name(to_vnum)
local to_postfix
local price = guild_building_melt.GetOreRefineCost(3000)
if under_han(from_name) then
from_postfix = ""
else
from_postfix = ""
end
if under_han(to_name) then
to_postfix = ""
else
to_postfix = ""
end
say_title(""..mob_name(20001)..".:")
say("")
say("Ich bin ein Meister im veredeln von")
say("verschiedensten Erzen.")
say("Bringe mir 100 Stk. ".. from_name .." und ich")
say("versuche es in ".. to_name .." zu veredeln.")
say("Außerdem benötigen wir noch einen Geiststein")
say("von der Stufe +0 , +1 oder +2 zum veredeln.")
say("")
if item.count >= 100 then
say("Die Wahrscheinlichkeit beträgt "..pct.."%.")
say("Eine veredelung kostet "..price.." ¥ang")
say("")
say_reward("Wollen wir es versuchen?")
local s = select("Versuchen", "Nein,danke")
if s == 1 then
if pc.get_gold() < price then
say_title(""..mob_name(20001)..".:")
say("")
say("Du hast nicht genug ¥ang.")
say("komm wieder wenn du genug ¥ang")
say("bei dir hast.Schönen Tag noch!")
return
end
local selected_item_cell = select_item()
if selected_item_cell == 0 then
say_title(""..mob_name(20001)..".:")
say("")
say("Ohne Geiststein kann ich es nicht herstellen.")
say("Bringe bitte ein Geiststein mit.")
say("")
return
end
local old_item = item.get_id()
if not item.select_cell(selected_item_cell) then
say("³o*Óª««~¨Ã¤£¥¿½T.")
return
end
if item.vnum < 28000 or item.vnum >= 28300 then
say_title(""..mob_name(20001)..".:")
say("")
say("Was ist den das,dass ist doch garkein")
say("Geiststein auf +0,+1 od. +2, nein so")
say("kann ich nicht arbeiten,bitte gib mir")
say("einen richtigen Geiststein.")
return
end
local stone_item = item.vnum
item.select(old_item)
local chance = number(1, 100)
local chance_max = pct
if chance <= chance_max then
say_title(""..mob_name(20001)..".:")
say("")
say("Die Herstellung war erfolgreich. Du erhälst")
say_item(to_name, to_vnum, "")
say("Saubere Arbeit nicht?Komm gerne wieder.")
say("")
pc.give_item2(to_vnum,1)
pc.changemoney(-price)
pc.removeitem(""..from_name.."",100)
pc.removeitem(""..stone_item.."",1)
else
say_title(""..mob_name(20001)..".:")
say("")
say("Die Herstellung ist fehlgeschlagen.")
say("Tut mir Leid für dich da waren wohl")
say("zuviele Verunreinigungen im Erz.")
pc.changemoney(-price)
pc.removeitem(""..from_name.."",100)
pc.removeitem(""..stone_item.."",1)
end
end
else
say("")
say("Zur veredelung brauche ich mindestens")
say("100 Stk. " .. from_name .. " um es in")
say("" .. to_name .. " zuverdeln.Komm wieder")
say("wenn du soviele bei dir hast!")
say("")
end
end
--Only Diamond
function DoRefineDiamond(pct)
local from_postfix
local from_name = item_name(item.vnum)
local to_vnum = item.vnum + 30574
local to_name = item_name(to_vnum)
local to_postfix
local price = guild_building_melt.GetOreRefineCost(10000)
if under_han(from_name) then
from_postfix = ""
else
from_postfix = ""
end
if under_han(to_name) then
to_postfix = ""
else
to_postfix = ""
end
say_title(""..mob_name(20001)..".:")
say("")
say("Ich bin ein Meister im veredeln von")
say("verschiedensten Erzen.")
say("Bringe mir 100 ".. from_name .." Stk. dieses")
say("Erzes und ich versuche in ".. to_name .." zu veredeln.")
if item.count >= 100 then
say("Die Wahrscheinlichkeit beträgt "..pct.."%.")
say("Eine veredelung kostet "..price.." ¥ang")
say("")
say_reward("Wollen wir es versuchen?")
local s = select("Versuchen", "Nein,danke")
if s == 1 then
if pc.get_gold() < price then
say_title(""..mob_name(20001)..".:")
say("")
say("Du hast nicht genug ¥ang.")
say("komm wieder wenn du genug ¥ang")
say("bei dir hast.Schönen Tag noch!")
return
end
local chance = number(1, 100)
local chance_max = pct
if chance <= chance_max then
say_title(""..mob_name(20001)..".:")
say("")
say("Die Herstellung war erfolgreich. Du erhälst")
say_item(to_name, to_vnum, "")
say("Saubere Arbeit nicht?Komm gerne wieder.")
say("")
pc.give_item2(to_vnum,1)
pc.changemoney(-price)
pc.removeitem(""..from_name.."",100)
else
say_title(""..mob_name(20001)..".:")
say("")
say("Die Herstellung ist fehlgeschlagen.")
say("Tut mir Leid für dich da waren wohl")
say("zuviele Verunreinigungen im Erz.")
pc.changemoney(-price)
pc.removeitem(""..from_name.."",100)
end
end
else
say("")
say("Zur veredelung brauche ich mindestens")
say("100 Stk. " .. from_name .. " um es in")
say("" .. to_name .. " zuverdeln.Komm wieder")
say("wenn du soviele bei dir hast!")
say("")
end
end
--New Mines
function DoRefineNew(pct)
local from_postfix
local from_name = item_name(item.vnum)
local to_vnum = item.vnum + 41621
local to_name = item_name(to_vnum)
local to_postfix
local price = guild_building_melt.GetOreRefineCost(15000)
if under_han(from_name) then
from_postfix = ""
else
from_postfix = ""
end
if under_han(to_name) then
to_postfix = ""
else
to_postfix = ""
end
say_title(""..mob_name(20001)..".:")
say("")
say("Ich bin ein Meister im veredeln von")
say("verschiedensten Erzen.")
say("Bringe mir 100 Stk. ".. from_name .." und ich")
say("versuche es in ".. to_name .." zu veredeln.")
say("Außerdem benötigen wir noch einen Geiststein")
say("von der Stufe +0 , +1 oder +2 zum veredeln.")
say("")
if item.count >= 100 then
say("Die Wahrscheinlichkeit beträgt "..pct.."%.")
say("Eine veredelung kostet "..price.." ¥ang")
say("")
say_reward("Wollen wir es versuchen?")
local s = select("Versuchen", "Nein,danke")
if s == 1 then
if pc.get_gold() < price then
say_title(""..mob_name(20001)..".:")
say("")
say("Du hast nicht genug ¥ang.")
say("komm wieder wenn du genug ¥ang")
say("bei dir hast.Schönen Tag noch!")
return
end
local selected_item_cell = select_item()
if selected_item_cell == 0 then
say_title(""..mob_name(20001)..".:")
say("")
say("Ohne Geiststein kann ich es nicht herstellen.")
say("Bringe bitte ein Geiststein mit.")
say("")
return
end
local old_item = item.get_id()
if not item.select_cell(selected_item_cell) then
say("³o*Óª««~¨Ã¤£¥¿½T.")
return
end
if item.vnum < 28000 or item.vnum >= 28300 then
say_title(""..mob_name(20001)..".:")
say("")
say("Was ist den das,dass ist doch garkein")
say("Geiststein auf +0,+1 od. +2, nein so")
say("kann ich nicht arbeiten,bitte gib mir")
say("einen richtigen Geiststein.")
return
end
local stone_item = item.vnum
item.select(old_item)
local chance = number(1, 100)
local chance_max = pct
if chance <= chance_max then
say_title(""..mob_name(20001)..".:")
say("")
say("Die Herstellung war erfolgreich. Du erhälst")
say_item(to_name, to_vnum, "")
say("Saubere Arbeit nicht?Komm gerne wieder.")
say("")
pc.give_item2(to_vnum,1)
pc.changemoney(-price)
pc.removeitem(""..from_name.."",100)
pc.removeitem(""..stone_item.."",1)
else
say_title(""..mob_name(20001)..".:")
say("")
say("Die Herstellung ist fehlgeschlagen.")
say("Tut mir Leid für dich da waren wohl")
say("zuviele Verunreinigungen im Erz.")
pc.changemoney(-price)
pc.removeitem(""..from_name.."",100)
pc.removeitem(""..stone_item.."",1)
end
end
else
say("")
say("Zur veredelung brauche ich mindestens")
say("100 Stk. " .. from_name .. " um es in")
say("" .. to_name .. " zuverdeln.Komm wieder")
say("wenn du soviele bei dir hast!")
say("")
end
end
--Make Juweles
--function DoRefineNewtojuwels(pct)
-- local from_postfix
-- local from_name = item_name(item.vnum)
-- local to_vnum = item.vnum + 41621--hiernoch zahländern
-- local to_name = item_name(to_vnum)
-- local to_postfix
-- local price = guild_building_melt.GetOreRefineCost(55000)
-- if under_han(from_name) then
-- from_postfix = ""
-- else
-- from_postfix = ""
-- end
-- if under_han(to_name) then
-- to_postfix = ""
-- else
-- to_postfix = ""
-- end
-- say_title(""..mob_name(20001)..".:")
-- say("")
-- say("Hallo "..pc.get_name..",")
-- say("lange nicht gesehen was!?Ich habe mich")
-- say("in letzter Zeit weitergebildet und kann jetzt")
-- say("aus einem Goldbarren und 1x "..from_name..",")
-- say("Juwelen herstellen,jedenfalls klappt es meistens.")
-- say("")
-- say("Wollen wir die Herstellung von 1x "..to_name.."")
-- say("versuchen?Wird sicherlich sohn klappen...")
-- say("")
-- if item.count >= 1 then
-- say("Die Wahrscheinlichkeit beträgt "..pct.."%.")
-- say("Eine veredelung kostet "..price.." ¥ang")
-- say("")
-- say_reward("Soll ich fortfahren?")
-- local s = select("Versuchen", "Nein,danke")
-- if s == 1 then
-- if pc.get_gold() < price then
-- say_title(""..mob_name(20001)..".:")
-- say("")
-- say("Du hast nicht genug ¥ang.")
-- say("komm wieder wenn du genug ¥ang")
-- say("bei dir hast.Schönen Tag noch!")
-- return
-- end
-- if pc.countitem("50626")>=1 then
-- local chance = number(1, 100)
-- local chance_max = pct
-- if chance <= chance_max then
-- pc.removeitem("50626",1)
-- pc.changemoney(-price)
-- pc.removeitem(""..from_name.."",100)
-- say_title(""..mob_name(20001)..".:")
-- say("")
-- say("Die Herstellung war erfolgreich. Du erhälst")
-- say_item(to_name, to_vnum, "")
-- say("Saubere Arbeit nicht?Komm gerne wieder.")
-- say("")
-- pc.give_item2(to_vnum,1)
-- else
-- pc.removeitem("50626",1)
-- pc.changemoney(-price)
-- pc.removeitem(""..from_name.."",100)
-- say_title(""..mob_name(20001)..".:")
-- say("")
-- say("Die Herstellung ist fehlgeschlagen.")
-- say("Tut mir Leid für dich da waren wohl")
-- say("zuviele Verunreinigungen im Erz.")
-- end
-- else
-- say_title(""..mob_name(20001)..".:")
-- say("")
-- say("Was ist den das,du hast doch garkein")
-- say("Goldbaaren,nein so kann ich nicht")
-- say("arbeiten,bitte gib mir einen richtigen")
-- say("Goldbaaren!Du benötigst min. 1 Stk.")
-- say_item_vnum(50626)
-- end
-- end
-- else
-- say("")
-- say("Zur veredelung brauche ich mindestens")
-- say("1x " .. from_name .. " um es in")
-- say("" .. to_name .. " zuverdeln.Komm wieder")
-- say("wenn du soviele bei dir hast!")
-- say("")
-- end
--end
--GOOD
when 20060.take or 20061.take or 20062.take or 20063.take or 20064.take or 20065.take or 20066.take or
20067.take or 20068.take or 20069.take or 20070.take or 20071.take or 20072.take or 25410.take or 25411.take or 25412.take or 25413.take or 25414.take with guild_building_melt.GetMyRefineNum(npc.race) == item.vnum begin
if item.vnum == 50601 then
guild_building_melt.DoRefineDiamond(guild_building_melt.GetOreRefineGoodPct())
else
guild_building_melt.DoRefine(guild_building_melt.GetOreRefineGoodPct())
end
end
--BAD
when 20060.take or 20061.take or 20062.take or 20063.take or 20064.take or 20065.take or 20066.take or
20067.take or 20068.take or 20069.take or 20070.take or 20071.take or
20072.take or 25410.take or 25411.take or 25412.take or 25413.take or 25414.take with guild_building_melt.IsRefinableRawOre(item.vnum) and guild_building_melt.GetMyRefineNum(npc.race) != item.vnum begin
if item.vnum == 50601 then
guild_building_melt.DoRefineDiamond(guild_building_melt.GetOreRefineBadPct())
else
guild_building_melt.DoRefine(guild_building_melt.GetOreRefineBadPct())
end
end
--New Mines Take
when 9017.take with item.vnum == 9013 or item.vnum == 9014 or item.vnum == 9015 or item.vnum == 9016 begin
if game.get_event_flag("nacht") < 1 then
guild_building_melt.DoRefineNew(guild_building_melt.GetOreRefineGoodPct())
else
guild_building_melt.DoRefineNew(guild_building_melt.GetOreRefineBadPct())
end
end
--Making Juweles
--when 9017.take with item.vnum == 50634 or item.vnum == 50635 or item.vnum ==50636 or item.vnum ==50637 or item.vnum ==50638 or item.vnum ==50639 begin
-- guild_building_melt.DoRefineNewtojuwels(guild_building_melt.GetOreRefineJuwelesPct())
--end
--Change Spezial
when 20060.click or 20061.click or 20062.click or 20063.click or 20064.click or
20065.click or 20066.click or 20067.click or 20068.click or 20069.click or
20070.click or 20071.click or 20072.click or 25410.click or 25411.click or 25412.click or 25413.click or 25414.click with npc.get_guild() == pc.get_guild() and pc.isguildmaster() begin
say_title(""..mob_name(20001)..".:")
say("")
say("Für 3.000.000 ¥ang können Sie mich zu einer")
say("Fortbildung schicken,damit kann ich mich auf")
say("die Veredelung eines anderen Erzes")
say("spezialisieren.")
say("")
wait()
if pc.get_gold() < 3000000 then
say_title(""..mob_name(20001)..".:")
say("")
say_reward("Du brauchst 3.000.000 ¥ang damit ich")
say_reward("auf die Fortbildung kann.")
else
say_yellow("Welche Spezialisierung wollen sie?")
local sel = 0
local timetable_01 = {'Diamanten', 'Bernstein', 'Fossilholz', 'Kupfer', 'Silber', 'Gold', 'Jade', 'Weiter'}
local valuetable_01 = {14043, 14044, 14045, 14046, 14047, 14048, 14049, 1, 3}
local timetable_02 = {'Ebenholz', 'Perle', 'Weissgold', 'Kristall', 'Amethyst', 'Himmelsträne', 'Zurück', 'Weiter'}
local valuetable_02 = {19397, 14051, 14052, 14053, 14054, 14055, 0, 2, 3}
local timetable_03 = {'Seelenkristall', 'Rubin', 'Granat', 'Smaragd', 'Saphir', 'Zurück', 'Keine Änderung'}
local valuetable_03 = {19393, 19394, 19395, 19396, 19397, 1, 3}
repeat
if sel == 0 then
local s = select_table(timetable_01)
sel = valuetable_01[s]
elseif sel == 1 then
local s = select_table(timetable_02)
sel = valuetable_02[s]
elseif sel == 2 then
local s = select_table(timetable_03)
sel = valuetable_03[s]
end
until sel > 2
if sel != 3 then
npc_num = sel + 20060 - 14043
if npc_num == npc.get_race() then
say_title(""..mob_name(20001)..".:")
say("")
say("Das bin ich doch bereits.")
else
pc.changegold(-3000000)
building.reconstruct(sel)
end
else
say_title(""..mob_name(20001)..".:")
say("")
say("Okay dann mache ich meinen Job so weiter,")
say("Bedenken Sie aber das die Seminarkosten")
say("in naher Zukunft auch steigen könnten.")
say("")
end
end
end
end
end
quest bio begin
state start begin
when login or levelup with pc.level>34 begin
set_state(talk_to_disciple_lv35)
end
end
state talk_to_disciple_lv35 begin
when letter begin
local v = find_npc_by_vnum(20084)
if v != 0 then target.vid("__TARGET__", v, "Biologe")
end
send_letter("Die Forschung des Biologen")
end
say("Bio Tante:")
say("Unglaublich! Du du bist Level 35")
say("Hast du auch das Item für mich?")
say("Dann bekommst du eine Belohnung.")
say("")
pc.remove_item(9999,1)
wait()
say("Welche Belohnung möchtest du?")
local s = select ("1100 TP", "140 Verteidigung", "60 Angriffswert")
if s == 3 then
say_reward("Du erhälst 300 Angriffswert.")
affect.add_collect(apply.ATT_GRADE_BONUS,300,60*60*24*365*60)
set_state(collect_end)
end
if s == 2 then
say_reward("Du erhälst 100 Verteidigung.")
affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*24*365*60)
set_state(collect_end)
end
if s == 1 then
say_reward("Du erhälst 1000 TP.")
affect.add_collect(apply.TP_GRADE_BONUS,1000,60*60*24*365*60)
set_state(collect_end)
end
end
end
end
state collect_end begin
end
end
nehm die Bio kannst se ja anpassen :)Quote:
2# Problem
Diese Quest klappt auch nicht...
Sorry for Spamm...
PHP Code:quest bio begin
state start begin
when login or levelup with pc.level>34 begin
set_state(talk_to_disciple_lv35)
end
end
state talk_to_disciple_lv35 begin
when letter begin
local v = find_npc_by_vnum(20084)
if v != 0 then target.vid("__TARGET__", v, "Biologe")
end
send_letter("Die Forschung des Biologen")
end
say("Bio Tante:")
say("Unglaublich! Du du bist Level 35")
say("Hast du auch das Item für mich?")
say("Dann bekommst du eine Belohnung.")
say("")
pc.remove_item(9999,1)
wait()
say("Welche Belohnung möchtest du?")
local s = select ("1100 TP", "140 Verteidigung", "60 Angriffswert")
if s == 3 then
say_reward("Du erhälst 300 Angriffswert.")
affect.add_collect(apply.ATT_GRADE_BONUS,300,60*60*24*365*60)
set_state(collect_end)
end
if s == 2 then
say_reward("Du erhälst 100 Verteidigung.")
affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*24*365*60)
set_state(collect_end)
end
if s == 1 then
say_reward("Du erhälst 1000 TP.")
affect.add_collect(apply.TP_GRADE_BONUS,1000,60*60*24*365*60)
set_state(collect_end)
end
end
end
end
state collect_end begin
end
end
quest bio begin
state start begin
when login or levelup with pc.level>34 begin
set_state(talk_to_disciple_lv35)
end
end
state talk_to_disciple_lv35 begin
when letter begin
local v = find_npc_by_vnum(20084)
if v != 0 then target.vid("__TARGET__", v, "Biologe")
end
send_letter("Die Forschung des Biologen")
end
say("Bio Tante:")
say("Unglaublich! Du du bist Level 35")
say("Hast du auch das Item für mich?")
say("Dann bekommst du eine Belohnung.")
say("")
pc.remove_item(9999,1)
wait()
say("Welche Belohnung möchtest du?")
local s = select ("1100 TP", "140 Verteidigung", "60 Angriffswert")
if s == 3 then
say_reward("Du erhälst 300 Angriffswert.")
affect.add_collect(apply.ATT_GRADE_BONUS,300,60*60*24*365*60)
set_state(collect_end)
end
if s == 2 then
say_reward("Du erhälst 100 Verteidigung.")
affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*24*365*60)
set_state(collect_end)
end
if s == 1 then
say_reward("Du erhälst 1000 TP.")
affect.add_collect(apply.TP_GRADE_BONUS,1000,60*60*24*365*60)
set_state(collect_end)
end
end
end
end
state collect_end begin
end
end
quest bio begin
state start begin
when login or levelup with pc.level>34 begin
set_state(talk_to_disciple_lv35)
end
end
state talk_to_disciple_lv35 begin
when letter begin
local v = find_npc_by_vnum(20084)
if v != 0 then target.vid("__TARGET__", v, "Biologe")
end
send_letter("Die Forschung des Biologen")
end
when button or info begin
say("Bio Tante:")
say("Unglaublich! Du du bist Level 35")
say("Hast du auch das Item für mich?")
say("Dann bekommst du eine Belohnung.")
say("")
if pc.count_item(9999) == 0 then
return
end
pc.remove_item(9999,1)
wait()
say("Welche Belohnung möchtest du?")
local s = select ("1100 TP", "140 Verteidigung", "60 Angriffswert")
if s == 3 then
say_reward("Du erhälst 300 Angriffswert.")
affect.add_collect(apply.ATT_GRADE_BONUS,300,60*60*24*365*60)
set_state(collect_end)
end
if s == 2 then
say_reward("Du erhälst 100 Verteidigung.")
affect.add_collect(apply.DEF_GRADE_BONUS,100,60*60*24*365*60)
set_state(collect_end)
end
if s == 1 then
say_reward("Du erhälst 1000 TP.")
affect.add_collect(apply.TP_GRADE_BONUS,1000,60*60*24*365*60)
set_state(collect_end)
end
end
end
state collect_end begin
end
end
.Quote:
Hey ich würde gerne mal eine Quest zur Kontrolle hier freigeben. Und zwar handelt es sich um die Tinktur des Namens Quest (InGame Nameswechsel). Ich habe die Befürchtung, dass die Quest beim Kontrollieren der Namen nur die Namen der Spieler checked, die online sind. Sollte aber beides überprüft werden!
Hier die Quest: