Catacomba diavol quest npc 20367
Am mare nevoie de un quest catacomba diavol+ map si dungeon, sa se intre cu relicva ingerului cu coasa. multumesc
Poftim :
Ai grija sa modifici index-ul questului, daca nu e compatibil cu acest index.
Cod: Selectaţi tot
quest devilcave begin
state start begin
when login begin
if pc.get_map_index() == 193 then
warp_all_to_village()
end
end
--DC Status Reset
when 30121.chat."Reseteaza statusul catacombei!" with pc.is_gm begin
say_title("Gardianul Catacombei")
say("")
say_reward("Statusul a fost resetat!")
say("")
game.set_event_flag("dc_versuche",1)
game.set_event_flag("dcgamer",0)
game.set_event_flag("dc_geschaft",0)
end
--Configuration
when 30121.chat."Configuratia catacombei!" with game.get_event_flag("block_dc_config") == 0 and pc.is_gm begin
game.set_event_flag("dc_is_ok",1)
game.set_event_flag("block_dc_config",1)
game.set_event_flag("dc_versuche",1)
end
--FaiL... Entry
--when 30121.chat."Catacomba diavolului" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 and pc.get_level() > 80 begin
--say_title("Gardianul Catacombei")
--say("")
--say_reward("Nu poti intra în catacomba.")
--say("")
--say_reward("Adu-mi o relicva a Îngerului cu coasa")
--say_reward("si da-mi-o!")
--end
--when 30121.chat."Catacomba diavolului" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 1 and pc.get_level() < 80 begin
--say_title("Gardianul Catacombei")
--say("")
--say_reward("Esti prea mic în nivel.")
--say("")
--end
--Sensenmannrelikt Abgabe!
--when 30121.take with item.vnum == 30122 and pc.getqf("can_in_dc") == 0 begin
--if pc.get_level() < 80 then
--say_title("Gardianul Catacombei")
--say("")
--say_reward("Esti prea mic pentru a intra revino când o sa ai level 80!")
--say("")
--else
--item.remove()
--say_title("Gardianul Catacombei")
--say("")
--say_reward("Acum puteti intra în Catacomba Diavolului!")
--say("")
--pc.setqf("can_in_dc", 1)
--end
--end
--Entry
when 30121.chat."Catacomba Diavolului (lv.80)" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 begin
if pc.get_level() < 80 then
say_title("Gardianul Catacombei")
say("")
say_reward("Esti prea mic pentru a intra, revino când o sa ai level 80!")
say("")
else
say_title("Gardianul Catacombei")
say("")
say("Pana în prezent "..game.get_event_flag("dcgamer").." soldati au încercat ")
say("sa il invinga pe Azrael !")
say("Din pacate "..game.get_event_flag("dc_geschaft").." soldati au murit în lupta.")
wait()
say_title("Gardianul Catacombei")
say("")
say_reward("Vrei sa încerci?")
say("Ai grija de tine sa nu ajungi pe lista celor care au murit în lupta.")
local dc_login = select("Intru", "Nu intru")
if dc_login == 1 then
pc.warp(307200,1203200)
elseif dc_login == 2 then
return
end
end
end
--Ebene 1
when login with pc.get_map_index() == 193 begin
game.set_event_flag(("dcgamer"), game.get_event_flag("dcgamer")+1)
game.set_event_flag(("dc_versuche"), game.get_event_flag("dc_versuche")+1)
say_title("Catacomba Diavolului")
say("Pentru a intra la etajul 2 trebuie sa...")
say_item("Cheie Suflet Cristalizat", 30311, "")
say("dupa ce o gasiti o trageti peste")
say("Statuia Kud!")
say("")
say_reward("Succes!")
say("")
pc.setqf("sksgedroppt", 0)
end
when kill with not npc.is_pc() and pc.get_map_index() == 193 begin
local sks = number(1,15)
if sks==1 and pc.getqf("sksgedroppt")==0 then
pc.setqf("sksgedroppt", 1)
chat("Ai primit cheia!")
game.drop_item(30311, 1)
else
chat("Acest monstru nu a avut cheia...")
end
end
when 30101.take with item.vnum == 30311 begin
item.remove()
d.new_jump_all(193, 3636, 12086)
timer("dc1", 600)
d.notice("~~~Ai 10 minute pentru a trece la etajul 3!~~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene2.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore_unten.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt")
d.spawn_mob(30104, 741, 221)
end
when dc1.timer begin
d.notice("Timpul a expirat!")
warp_all_to_village()
end
when dc20.timer begin
d.notice("Mai aveti 50 de minute!")
timer("dc3", 193)
end
when dc30.timer begin
d.notice("Mai aveti 45 de minute!")
timer("dc4", 193)
end
when dc40.timer begin
d.notice("Mai aveti 40 de minute!")
timer("dc5", 193)
end
when dc50.timer begin
d.notice("Mai aveti 35 de minute!")
timer("dc6", 193)
end
when dc60.timer begin
d.notice("Mai aveti 30 de minute!")
timer("dc7", 193)
end
when dc70.timer begin
d.notice("Mai aveti 25 de minute!")
timer("dc8", 193)
end
when dc80.timer begin
d.notice("Mai aveti 20 de minute!")
timer("dc9", 193)
end
when dc90.timer begin
d.notice("Mai aveti 15 de minute!")
timer("dc10", 193)
end
when dc100.timer begin
d.notice("Mai aveti 10 de minute!")
timer("dc11", 193)
end
when dc101.timer begin
d.notice("Mai aveti 5 de minute!")
timer("dc12", 193)
end
when dc110.timer begin
d.notice("Timpul a expirat!")
warp_all_to_village()
end
--Ebene 2
when 30104.chat."Etajul 3" begin
npc.purge()
say_reward("Inscriptia")
say("Drumul spre Azrael este foarte lung...")
wait()
d.new_jump_all(193, 4427, 12284)
d.setf("goto_ebene3", 0)
d.notice("~~Drumul catre Azrael este foarte lung...~~")
d.notice("~~Gaseste si distruge Metinul care te va duce la etajul urmator~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene3.txt")
local metindv = number(1,4)
if metindv==1 then
d.spawn_mob(8028, 1351, 348)
d.spawn_mob(8028, 1148, 350)
d.spawn_mob(8028, 1151, 155)
d.spawn_mob(8029, 1351, 149)
end
if metindv==2 then
d.spawn_mob(8028, 1351, 348)
d.spawn_mob(8028, 1148, 350)
d.spawn_mob(8029, 1151, 155)
d.spawn_mob(8028, 1351, 149)
end
if metindv==3 then
d.spawn_mob(8028, 1351, 348)
d.spawn_mob(8029, 1148, 350)
d.spawn_mob(8028, 1151, 155)
d.spawn_mob(8028, 1351, 149)
end
if metindv==4 then
d.spawn_mob(8029, 1351, 348)
d.spawn_mob(8028, 1148, 350)
d.spawn_mob(8028, 1151, 155)
d.spawn_mob(8028, 1351, 149)
end
end
when 8028.kill with pc.in_dungeon() begin
d.notice("~~Acest metin nu este cel care trebuie distrus~~")
end
when 8029.kill with pc.in_dungeon() begin
d.notice("~~Felicitari acest metin este bun, vei fi teleportat imediat~~")
timer("devils_catacomb_goto_ebene4", 5)
end
--Ebene 4 (Labyrinth)
when devils_catacomb_goto_ebene4.timer begin
d.new_jump_all(193, 3143, 12657)
d.setf("labyrinth", 1)
d.spawn_mob(20023, 500, 720)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene4_portale.txt")
d.notice("~~Gaseste calea de iesire din labirint~~")
d.notice("~~si apoi citeste inscriptia de pe stâlpul~~")
if game.get_event_flag("dc_is_wartung") == 1 then
d.spawn_mob(20023, 72, 586)
end
end
when 20023.chat."Etajul 5" with pc.in_dungeon() begin
npc.purge()
say_title(".....")
d.notice("~~Ai gasit drumul cel bun...")
timer("devils_catacomb_goto_ebene5", 5)
end
--Ebene 6 (Tartaros)
when devils_catacomb_goto_ebene5.timer begin
d.new_jump_all(193, 3917, 12925)
d.notice("~~Cauta si ucide Ucigasul Iadului pentru a obtine un Totem Schimonosit!~~")
d.notice("~~acesta se trage peste Basalt-Obelisk!~~")
d.spawn_mob(30102, 848, 739)
timer("dc4", 600)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene5.txt")
local tartaros = number(1,4)
if tartaros==1 then
d.spawn_mob(2593, 991, 848)
end
if tartaros==2 then
d.spawn_mob(2593, 999, 652)
end
if tartaros==3 then
d.spawn_mob(2593, 848, 577)
end
if tartaros==4 then
d.spawn_mob(2593, 703, 644)
end
if tartaros==5 then
d.spawn_mob(2593, 692, 817)
end
end
when 2593.kill with pc.in_dungeon() begin
d.notice("~~~Ucigasul Iadului ti-a dat un Totem Schimonosit!~~~")
d.notice("~~~Acum du-te si trage-l peste Basalt-Obelisk!~~~")
game.drop_item(30312, 1)
end
when 30102.take with item.vnum == 30312 begin
timer("dc4", 6000)
item.remove()
npc.purge()
say_reward("...")
d.notice("~~O sa fi teleportat imediat!~~")
timer("devils_catacomb_goto_ebene6", 5)
end
when dc4.timer begin
d.notice("Timpul a expirat!")
warp_all_to_village()
end
--Ebene 7 (Charon)
when devils_catacomb_goto_ebene6.timer begin
d.new_jump_all(193, 4411, 12736)
timer("dc5", 600)
d.notice("~~Pentru a putea ajunge la Azrael trebuie sa îl ucizi pe Charon~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene6.txt")
end
when 2597.kill with pc.in_dungeon() begin
timer("dc5", 6000)
d.notice("~~O sa fii teleportat imediat~~")
d.notice("~~Pregateste-te de lupta cu Azrael!~~")
timer("devils_catacomb_goto_ebene7", 10)
end
when dc5.timer begin
d.notice("Timpul a expirat!")
warp_all_to_village()
end
--Ebene 8 (Azrael)
when devils_catacomb_goto_ebene7.timer begin
d.new_jump_all(193, 3147, 13191)
d.notice("~~Ucide-l pe Azrael, doar atunci vei primi o recompensa!~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene7.txt")
end
when 2598.kill with pc.in_dungeon() begin
game.set_event_flag(("dc_geschaft"), game.get_event_flag("dc_geschaft")+1)
local level = pc.get_level()
d.notice("~~L-ai învins, si meriti o recompensa!~~")
d.kill_all()
d.kill_all()
notice_all("~~Jucatorul "..pc.get_name().." l-a învivins pe Azrael !~~")
notice_all("~~Drept rasplata a primit Lada lui Azrael!~~")
timer("goout_from_dc", 60)
d.spawn_mob(9012, 74, 1159)
pc.give_item2(50186)
end
end
endAseer scrie:Poftim :
Ai grija sa modifici index-ul questului, daca nu e compatibil cu acest index.Cod: Selectaţi tot
quest devilcave begin state start begin when login begin if pc.get_map_index() == 193 then warp_all_to_village() end end --DC Status Reset when 30121.chat."Reseteaza statusul catacombei!" with pc.is_gm begin say_title("Gardianul Catacombei") say("") say_reward("Statusul a fost resetat!") say("") game.set_event_flag("dc_versuche",1) game.set_event_flag("dcgamer",0) game.set_event_flag("dc_geschaft",0) end --Configuration when 30121.chat."Configuratia catacombei!" with game.get_event_flag("block_dc_config") == 0 and pc.is_gm begin game.set_event_flag("dc_is_ok",1) game.set_event_flag("block_dc_config",1) game.set_event_flag("dc_versuche",1) end --FaiL... Entry --when 30121.chat."Catacomba diavolului" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 and pc.get_level() > 80 begin --say_title("Gardianul Catacombei") --say("") --say_reward("Nu poti intra în catacomba.") --say("") --say_reward("Adu-mi o relicva a Îngerului cu coasa") --say_reward("si da-mi-o!") --end --when 30121.chat."Catacomba diavolului" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 1 and pc.get_level() < 80 begin --say_title("Gardianul Catacombei") --say("") --say_reward("Esti prea mic în nivel.") --say("") --end --Sensenmannrelikt Abgabe! --when 30121.take with item.vnum == 30122 and pc.getqf("can_in_dc") == 0 begin --if pc.get_level() < 80 then --say_title("Gardianul Catacombei") --say("") --say_reward("Esti prea mic pentru a intra revino când o sa ai level 80!") --say("") --else --item.remove() --say_title("Gardianul Catacombei") --say("") --say_reward("Acum puteti intra în Catacomba Diavolului!") --say("") --pc.setqf("can_in_dc", 1) --end --end --Entry when 30121.chat."Catacomba Diavolului (lv.80)" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 begin if pc.get_level() < 80 then say_title("Gardianul Catacombei") say("") say_reward("Esti prea mic pentru a intra, revino când o sa ai level 80!") say("") else say_title("Gardianul Catacombei") say("") say("Pana în prezent "..game.get_event_flag("dcgamer").." soldati au încercat ") say("sa il invinga pe Azrael !") say("Din pacate "..game.get_event_flag("dc_geschaft").." soldati au murit în lupta.") wait() say_title("Gardianul Catacombei") say("") say_reward("Vrei sa încerci?") say("Ai grija de tine sa nu ajungi pe lista celor care au murit în lupta.") local dc_login = select("Intru", "Nu intru") if dc_login == 1 then pc.warp(307200,1203200) elseif dc_login == 2 then return end end end --Ebene 1 when login with pc.get_map_index() == 193 begin game.set_event_flag(("dcgamer"), game.get_event_flag("dcgamer")+1) game.set_event_flag(("dc_versuche"), game.get_event_flag("dc_versuche")+1) say_title("Catacomba Diavolului") say("Pentru a intra la etajul 2 trebuie sa...") say_item("Cheie Suflet Cristalizat", 30311, "") say("dupa ce o gasiti o trageti peste") say("Statuia Kud!") say("") say_reward("Succes!") say("") pc.setqf("sksgedroppt", 0) end when kill with not npc.is_pc() and pc.get_map_index() == 193 begin local sks = number(1,15) if sks==1 and pc.getqf("sksgedroppt")==0 then pc.setqf("sksgedroppt", 1) chat("Ai primit cheia!") game.drop_item(30311, 1) else chat("Acest monstru nu a avut cheia...") end end when 30101.take with item.vnum == 30311 begin item.remove() d.new_jump_all(193, 3636, 12086) timer("dc1", 600) d.notice("~~~Ai 10 minute pentru a trece la etajul 3!~~~") d.regen_file("data/dungeon/devilcave/dc_regen_ebene2.txt") d.regen_file("data/dungeon/devilcave/dc_regen_tore_unten.txt") d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt") d.spawn_mob(30104, 741, 221) end when dc1.timer begin d.notice("Timpul a expirat!") warp_all_to_village() end when dc20.timer begin d.notice("Mai aveti 50 de minute!") timer("dc3", 193) end when dc30.timer begin d.notice("Mai aveti 45 de minute!") timer("dc4", 193) end when dc40.timer begin d.notice("Mai aveti 40 de minute!") timer("dc5", 193) end when dc50.timer begin d.notice("Mai aveti 35 de minute!") timer("dc6", 193) end when dc60.timer begin d.notice("Mai aveti 30 de minute!") timer("dc7", 193) end when dc70.timer begin d.notice("Mai aveti 25 de minute!") timer("dc8", 193) end when dc80.timer begin d.notice("Mai aveti 20 de minute!") timer("dc9", 193) end when dc90.timer begin d.notice("Mai aveti 15 de minute!") timer("dc10", 193) end when dc100.timer begin d.notice("Mai aveti 10 de minute!") timer("dc11", 193) end when dc101.timer begin d.notice("Mai aveti 5 de minute!") timer("dc12", 193) end when dc110.timer begin d.notice("Timpul a expirat!") warp_all_to_village() end --Ebene 2 when 30104.chat."Etajul 3" begin npc.purge() say_reward("Inscriptia") say("Drumul spre Azrael este foarte lung...") wait() d.new_jump_all(193, 4427, 12284) d.setf("goto_ebene3", 0) d.notice("~~Drumul catre Azrael este foarte lung...~~") d.notice("~~Gaseste si distruge Metinul care te va duce la etajul urmator~~") d.regen_file("data/dungeon/devilcave/dc_regen_ebene3.txt") local metindv = number(1,4) if metindv==1 then d.spawn_mob(8028, 1351, 348) d.spawn_mob(8028, 1148, 350) d.spawn_mob(8028, 1151, 155) d.spawn_mob(8029, 1351, 149) end if metindv==2 then d.spawn_mob(8028, 1351, 348) d.spawn_mob(8028, 1148, 350) d.spawn_mob(8029, 1151, 155) d.spawn_mob(8028, 1351, 149) end if metindv==3 then d.spawn_mob(8028, 1351, 348) d.spawn_mob(8029, 1148, 350) d.spawn_mob(8028, 1151, 155) d.spawn_mob(8028, 1351, 149) end if metindv==4 then d.spawn_mob(8029, 1351, 348) d.spawn_mob(8028, 1148, 350) d.spawn_mob(8028, 1151, 155) d.spawn_mob(8028, 1351, 149) end end when 8028.kill with pc.in_dungeon() begin d.notice("~~Acest metin nu este cel care trebuie distrus~~") end when 8029.kill with pc.in_dungeon() begin d.notice("~~Felicitari acest metin este bun, vei fi teleportat imediat~~") timer("devils_catacomb_goto_ebene4", 5) end --Ebene 4 (Labyrinth) when devils_catacomb_goto_ebene4.timer begin d.new_jump_all(193, 3143, 12657) d.setf("labyrinth", 1) d.spawn_mob(20023, 500, 720) d.regen_file("data/dungeon/devilcave/dc_regen_ebene4_portale.txt") d.notice("~~Gaseste calea de iesire din labirint~~") d.notice("~~si apoi citeste inscriptia de pe stâlpul~~") if game.get_event_flag("dc_is_wartung") == 1 then d.spawn_mob(20023, 72, 586) end end when 20023.chat."Etajul 5" with pc.in_dungeon() begin npc.purge() say_title(".....") d.notice("~~Ai gasit drumul cel bun...") timer("devils_catacomb_goto_ebene5", 5) end --Ebene 6 (Tartaros) when devils_catacomb_goto_ebene5.timer begin d.new_jump_all(193, 3917, 12925) d.notice("~~Cauta si ucide Ucigasul Iadului pentru a obtine un Totem Schimonosit!~~") d.notice("~~acesta se trage peste Basalt-Obelisk!~~") d.spawn_mob(30102, 848, 739) timer("dc4", 600) d.regen_file("data/dungeon/devilcave/dc_regen_ebene5.txt") local tartaros = number(1,4) if tartaros==1 then d.spawn_mob(2593, 991, 848) end if tartaros==2 then d.spawn_mob(2593, 999, 652) end if tartaros==3 then d.spawn_mob(2593, 848, 577) end if tartaros==4 then d.spawn_mob(2593, 703, 644) end if tartaros==5 then d.spawn_mob(2593, 692, 817) end end when 2593.kill with pc.in_dungeon() begin d.notice("~~~Ucigasul Iadului ti-a dat un Totem Schimonosit!~~~") d.notice("~~~Acum du-te si trage-l peste Basalt-Obelisk!~~~") game.drop_item(30312, 1) end when 30102.take with item.vnum == 30312 begin timer("dc4", 6000) item.remove() npc.purge() say_reward("...") d.notice("~~O sa fi teleportat imediat!~~") timer("devils_catacomb_goto_ebene6", 5) end when dc4.timer begin d.notice("Timpul a expirat!") warp_all_to_village() end --Ebene 7 (Charon) when devils_catacomb_goto_ebene6.timer begin d.new_jump_all(193, 4411, 12736) timer("dc5", 600) d.notice("~~Pentru a putea ajunge la Azrael trebuie sa îl ucizi pe Charon~~") d.regen_file("data/dungeon/devilcave/dc_regen_ebene6.txt") end when 2597.kill with pc.in_dungeon() begin timer("dc5", 6000) d.notice("~~O sa fii teleportat imediat~~") d.notice("~~Pregateste-te de lupta cu Azrael!~~") timer("devils_catacomb_goto_ebene7", 10) end when dc5.timer begin d.notice("Timpul a expirat!") warp_all_to_village() end --Ebene 8 (Azrael) when devils_catacomb_goto_ebene7.timer begin d.new_jump_all(193, 3147, 13191) d.notice("~~Ucide-l pe Azrael, doar atunci vei primi o recompensa!~~") d.regen_file("data/dungeon/devilcave/dc_regen_ebene7.txt") end when 2598.kill with pc.in_dungeon() begin game.set_event_flag(("dc_geschaft"), game.get_event_flag("dc_geschaft")+1) local level = pc.get_level() d.notice("~~L-ai învins, si meriti o recompensa!~~") d.kill_all() d.kill_all() notice_all("~~Jucatorul "..pc.get_name().." l-a învivins pe Azrael !~~") notice_all("~~Drept rasplata a primit Lada lui Azrael!~~") timer("goout_from_dc", 60) d.spawn_mob(9012, 74, 1159) pc.give_item2(50186) end end end
Imi intra in catacomba dar nu am mobi.
Aseer scrie:Verifica, daca ai dungeon-urile ca in quest.
d.regen_file("data/dungeon/devilcave/dc_regen_ebene4_portale.txt")
Astea nu le am deloc in dungeon
d.regen_file("data/dungeon/devilcave/dc_regen_tore_unten.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt")
Imi poti da si mie dungeon si map ?
quest devilscatacomb begin
state start begin
when logout begin
pc.remove_item(30311, pc.count_item(30311))
pc.remove_item(30312, pc.count_item(30312))
pc.remove_item(30313, pc.count_item(30313))
end
when login begin
if pc.get_map_index() == 90 then
if devilscatacomb.getLevelByCord() > 1 or not next_time_is_now() then
pc.warp((5913)*100, (993)*100, 65) -- 5913x993 591374x
end
pc.set_warp_location(65, 5913, 993)
say("Du musst den Seelenkristall-Schlüssel droppen")
say("und dann auf die Statue des Kud ziehen, um in")
say("die 2. Ebene zu gelangen...")
say("")
say_item_vnum(30311)
say("")
elseif pc.get_map_index() >= (90 * 10000) then
pc.set_warp_location(65, 5913, 993)
end
end
when 20367.chat."The Devil's Catacomb" begin --Enter the Devil Catacomb
if pc.get_level() < 75 then
say_title(mob_name(npc.get_race()) ..":")
say("Du möchtest in die Katakomben des Teufels?")
say("")
say("So einfach geht das nicht, denn du hast")
say("nicht die nötige Erfahrung dazu.")
say("Komme am Besten wieder, wenn du Level 75")
say("erreicht hast... ")
else
say_title(mob_name(npc.get_race()) ..":")
say("Du möchtest in die Katakomben des Teufels?")
say("")
say("Ich kann dich gerne teleportieren, doch")
say("ich möchte dich warnen: Es sind schon viele")
say("eingetreten aber nicht mehr zurück gekommen!")
say("")
say("Soll ich dich ernsthaft teleportieren?")
say("")
local s = select("Ja","Nein")
if s == 2 then
return
elseif s == 1 then
pc.warp(315300, 1209200)
end
end
end
when kill with pc.get_map_index() == 90 and pc.countitem(30311) < 1 begin
local rnd = number(1,100)
if rnd == 6 then
game.drop_item_with_ownership(30311, 1)
end
end
when 30101.take with item.vnum == 30311 begin --Teleport to 2nd Stage with the passenger ticket
if party.is_party() then
if party.is_leader() then
say("Das Eingangsportal wurde geöffnet.")
say("Geh schnell hindurch!")
wait()
say("Hier beginnt das wahre Abenteuer! Du hast")
say("jedoch nur eine Stunde Zeit, um die Devil's")
say("Catacomb zu erforschen.")
item.remove()
sys_log(0, "DC create try by "..pc.get_name())
d.join(90)
else
say("Nur der Leiter der Gruppe darf bestimmen.")
end
else
say("Ohne Gruppe kommst du nicht weiter.")
end
end
when login with devilscatacomb.isInCatacomb() begin
say("Zerstöre das Siegel dieses Tores, um die 3. Ebene")
say("zu erreichen!")
say("Du hast noch 60 Minute(n) Zeit.")
d.spawn_mob(30103, 740, 227)
loop_timer("item_check", 10)
if party.is_leader() then
d.set_regen_file("data/dungeon/dc/dc_regen1.txt")
d.regen_file("data/dungeon/dc/dc_doors.txt")
d.setf("level", 2)
server_timer("runtime", 6, pc.get_map_index())
elseif pc.is_gm() and not party.is_party() then
d.set_regen_file("data/dungeon/dc/dc_regen1.txt")
d.regen_file("data/dungeon/dc/dc_doors.txt")
d.setf("level", 2)
server_timer("runtime", 6, pc.get_map_index())
end
end
when item_check.timer with d.getf("level") == 3 begin
if pc.countitem(30319) >= 1 then
say("Du hast den Schrumpfkopf und wirst nun auf die")
say("3. Ebene teleportiert.")
pc.remove_item(30319, 1)
timer("item_check_end", 2)
else
d.exit_all()
end
end
when item_check_end.timer begin
cleartimer("item_check")
end
when runtime.server_timer begin
if d.select(get_server_timer_arg()) then
d.setf("time", get_time()+60*60*1)
devilscatacomb.getTimeLeft()
server_timer("runtime_end", 60*60, get_server_timer_arg())
end
end
when runtime_end.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Die Zeit ist um.")
d.exit_all()
end
end
when 30103.click with devilscatacomb.isInCatacomb() and devilscatacomb.getLevelByCord() == 2 and npc.lock() begin
say("Während du den Stein genauer untersuchst, kannst")
say("du eine Gravur erkennen.")
wait()
say("Lediglich der Besitzer des Schrumpfkopfes")
say("darf eintreten, nachdem die Siegel dreier Türen")
say("aufgebrochen wurden.")
say("Wenn du dieses Relikt nicht bei dir trägst,")
say("wirst du aus der Devil's Catacomb teleportiert.")
say("")
wait()
local s = select("Ja, lass mich eintreten!", "Nein, ich möchte nicht eintreten.")
if s == 2 then
return
elseif s == 1 then
if pc.count_item(30319) >= 1 then
npc.purge()
d.setf("level", 3)
d.purge()
d.clear_regen()
timer("dc_jump_3", 6)
else
say("Du hast keinen Schrumpfkopf und wirst nun")
say("aus der Höhle teleportiert ...")
pc.warp(591374, 99325, 65)
end
end
end
when dc_jump_3.timer begin
d.set_regen_file("data/dungeon/dc/dc_regen2.txt")
d.notice("Suche den richtigen Metinstein und zerstöre ihn!")
devilscatacomb.getTimeLeft()
d.jump_all(4451, 12282)
local positions = devilscatacomb.get3FloorStonePositions()
for i = 1, 6 do
d.set_unique("fake" .. i , d.spawn_mob(8037, positions[1], positions[2]))
end
d.set_unique("real", d.spawn_mob(8037, positions[7][1], positions[7][2]))
server_loop_timer('dc_stone3_update', 10, pc.get_map_index())
end
when dc_stone3_update.server_timer begin
if d.select(get_server_timer_arg()) then
if not d.is_unique_dead("real") then
for i = 1, 6 do
if d.getf("fakedead" .. i) == 0 then
if d.unique_get_hp_perc("fake" .. i) < 30 then
if not d.is_unique_dead("fake" .. i) then
d.purge_unique("fake" .. i)
end
d.setf("fakedead" .. i, 1)
d.notice("Du hast den falschen Metinstein zerstört. Finde den richtigen!");
end
end
end
else
server_timer("dc_stone_end3", 5, get_server_timer_arg())
d.notice("Der richtige Metinstein wurde zerstört. Du darfst nun die 4. Ebene betreten.")
end
else
server_timer('dc_stone3_stop_timer', 1, get_server_timer_arg())
end
end
when dc_stone3_stop_timer.server_timer begin
clear_server_timer('dc_stone3_update', get_server_timer_arg())
end
when dc_stone_end3.server_timer begin
if d.select(get_server_timer_arg()) then
clear_server_timer('dc_stone3_update', get_server_timer_arg())
d.setf("level", 4)
d.jump_all(3347, 12810)
d.clear_regen()
d.set_regen_file("data/dungeon/dc/dc_regen3.txt")
d.regen_file("data/dungeon/dc/dc_warps.txt")
d.spawn_mob(30104, 500, 716)
end
end
when 30104.click with devilscatacomb.isInCatacomb() and devilscatacomb.getLevelByCord() == 4 and npc.lock() begin
npc.purge()
say_in_map(pc.get_map_index(),"Du hast es geschafft! Hier ist der Ausgang des[ENTER]Labyrinths. Steige nun in die 5. Ebene hinab.")
server_timer("dc4_enter", 6, pc.get_map_index())
end
when dc4_enter.server_timer begin
if d.select(get_server_timer_arg()) then
d.jump_all(3918, 12939)
d.set_regen_file("data/dungeon/dc/dc_regen4.txt")
d.spawn_mob(30102, 848, 739)
local mob_pos = { {1006, 649}, {979, 829}, {691, 822}, {714, 653}, {848, 593} }
local rnd = number(1, 5)
d.spawn_mob(2591, mob_pos[rnd][1], mob_pos[rnd][2])
server_timer("dc4_message", 3, get_server_timer_arg())
end
end
when dc4_message.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Besiege die Dämonenwachen, um das Fratzen-Totem zu erhalten. Es dient dir als Schlüssel zur 6. Ebene.")
devilscatacomb.getTimeLeft()
end
end
when 30102.take with item.vnum == 30312 begin
say("Du hast das Fratze-Totem.")
say("Nun kannst du in die nächste Ebene!")
say("")
wait()
say("Viel Glück!")
item.remove()
npc.purge()
d.clear_regen()
timer("dc_level_5", 6)
end
when dc_level_5.timer begin
d.jump_all(4312, 12799)
timer("dc_level_5_start", 5)
end
when dc_level_5_start.timer begin
d.setf("level", 5)
d.notice("Besiege Charon und seine Schergen!")
devilscatacomb.getTimeLeft()
d.regen_file("data/dungeon/dc/dc_regen5.txt")
d.spawn_mob(2597, 1301, 699)
end
when kill begin
if devilscatacomb.isInCatacomb() then
if npc.race == 2597 then
if d.count_monster() < 1000 then
d.setf("level", 6)
d.clear_regen()
timer("dc_level_5_end", 12)
else
if d.getf("charon_spawns") < 4 then
d.spawn_mob(2597, 1301, 699)
d.setf("charon_spawns", d.getf("charon_spawns") + 1)
else
d.notice("Du hast versagt Charon hat dich mit seinen Schergen")
d.notice("überlistet. Du verlässt nun die Höhle")
local nextTime=get_time()+time_min_to_sec(1)
d.setqf("__NEXT_TIME__", nextTime)
d.exit_all()
end
end
end
if npc.race == 2598 and d.getf("level") == 6 then
clear_server_timer("runtime", pc.get_map_index())
clear_server_timer("runtime_end", pc.get_map_index())
notice_all(pc.get_name().." und "..tonumber(party.get_near_count()-1).." weitere Gruppenmitglieder haben Azrael besiegt!")
timer("glory_message", 6)
end
if npc.race == 2591 then
game.drop_item_with_ownership(30312, 1)
end
end
end
when dc_level_5_end.timer begin
say_in_map(pc.get_map_index(),"Du hast Charon besiegt! Nun wirst du[ENTER]zur letzten Ebene der Devil's Catacomb[ENTER]teleportiert.")
timer("dc_level_6", 3)
end
when dc_level_6.timer begin
d.jump_all(3145, 13187)
timer("dc_level_6_into", 3)
end
when dc_level_6_into.timer begin
d.regen_file("data/dungeon/dc/dc_regen6.txt")
d.spawn_mob(2598, 74, 1103)
d.notice("Besiege Azrael!")
end
when glory_message.timer begin
local text = "Azrael wurde besiegt. Endlich herrscht[ENTER]Frieden in der Devil's Catacomb. Du wirst nun[ENTER]an die Oberfläche teleportiert."
say_in_map(pc.get_map_index(), text)
timer("dc_end", 20)
end
when dc_end.timer begin
local nextTime=get_time()+time_min_to_sec(1)
d.setqf("__NEXT_TIME__", nextTime)
d.exit_all()
end
end
state _FUNC_ begin
function getLevelByCord()
if pc.get_local_x() > 30 and pc.get_local_y() > 45 and pc.get_local_x() < 450 and pc.get_local_y() < 450 then
return 1
elseif pc.get_local_x() > 540 and pc.get_local_y() > 39 and pc.get_local_x() < 1000 and pc.get_local_y() < 462 then
return 2
elseif pc.get_local_x() > 1048 and pc.get_local_y() > 35 and pc.get_local_x() < 1455 and pc.get_local_y() < 458 then
return 3
elseif pc.get_local_x() > 31 and pc.get_local_y() > 541 and pc.get_local_x() < 564 and pc.get_local_y() < 1058 then
return 4
elseif pc.get_local_x() > 650 and pc.get_local_y() > 540 and pc.get_local_x() < 1050 and pc.get_local_y() < 955 then
return 5
elseif pc.get_local_x() > 1175 and pc.get_local_y() > 576 and pc.get_local_x() < 1420 and pc.get_local_y() < 810 then
return 6
else
return 0
end
end
function isInCatacomb()
if pc.get_map_index() >= (90 * 10000) and pc.in_dungeon() then
return true
else
return false
end
end
function get3FloorStonePositions()
local positions =
{
{1365, 352}, {1349, 150}, {1133, 167}, {1151, 364},
{1234, 136}, {1255, 371}, {1132, 245},
}
for i = 1, 6 do
local j = number(i, 7)
if i != j then
local t = positions;
positions = positions[j];
positions[j] = t;
end
end
return positions
end
function getTimeLeft()
local secondsLeft = (d.getf("time") - get_time())
local minutesLeft = math.ceil(secondsLeft / 60)
d.notice("Du hast noch "..minutesLeft.." Minute(n) Zeit.")
end
end
end
Cine ma ajuta sa fac un quest ? asta e cel original ....vreau unu care sa ceara relicva ingerului cu coasa si sa nu mai ceara grupa .
state start begin
when logout begin
pc.remove_item(30311, pc.count_item(30311))
pc.remove_item(30312, pc.count_item(30312))
pc.remove_item(30313, pc.count_item(30313))
end
when login begin
if pc.get_map_index() == 90 then
if devilscatacomb.getLevelByCord() > 1 or not next_time_is_now() then
pc.warp((5913)*100, (993)*100, 65) -- 5913x993 591374x
end
pc.set_warp_location(65, 5913, 993)
say("Du musst den Seelenkristall-Schlüssel droppen")
say("und dann auf die Statue des Kud ziehen, um in")
say("die 2. Ebene zu gelangen...")
say("")
say_item_vnum(30311)
say("")
elseif pc.get_map_index() >= (90 * 10000) then
pc.set_warp_location(65, 5913, 993)
end
end
when 20367.chat."The Devil's Catacomb" begin --Enter the Devil Catacomb
if pc.get_level() < 75 then
say_title(mob_name(npc.get_race()) ..":")
say("Du möchtest in die Katakomben des Teufels?")
say("")
say("So einfach geht das nicht, denn du hast")
say("nicht die nötige Erfahrung dazu.")
say("Komme am Besten wieder, wenn du Level 75")
say("erreicht hast... ")
else
say_title(mob_name(npc.get_race()) ..":")
say("Du möchtest in die Katakomben des Teufels?")
say("")
say("Ich kann dich gerne teleportieren, doch")
say("ich möchte dich warnen: Es sind schon viele")
say("eingetreten aber nicht mehr zurück gekommen!")
say("")
say("Soll ich dich ernsthaft teleportieren?")
say("")
local s = select("Ja","Nein")
if s == 2 then
return
elseif s == 1 then
pc.warp(315300, 1209200)
end
end
end
when kill with pc.get_map_index() == 90 and pc.countitem(30311) < 1 begin
local rnd = number(1,100)
if rnd == 6 then
game.drop_item_with_ownership(30311, 1)
end
end
when 30101.take with item.vnum == 30311 begin --Teleport to 2nd Stage with the passenger ticket
if party.is_party() then
if party.is_leader() then
say("Das Eingangsportal wurde geöffnet.")
say("Geh schnell hindurch!")
wait()
say("Hier beginnt das wahre Abenteuer! Du hast")
say("jedoch nur eine Stunde Zeit, um die Devil's")
say("Catacomb zu erforschen.")
item.remove()
sys_log(0, "DC create try by "..pc.get_name())
d.join(90)
else
say("Nur der Leiter der Gruppe darf bestimmen.")
end
else
say("Ohne Gruppe kommst du nicht weiter.")
end
end
when login with devilscatacomb.isInCatacomb() begin
say("Zerstöre das Siegel dieses Tores, um die 3. Ebene")
say("zu erreichen!")
say("Du hast noch 60 Minute(n) Zeit.")
d.spawn_mob(30103, 740, 227)
loop_timer("item_check", 10)
if party.is_leader() then
d.set_regen_file("data/dungeon/dc/dc_regen1.txt")
d.regen_file("data/dungeon/dc/dc_doors.txt")
d.setf("level", 2)
server_timer("runtime", 6, pc.get_map_index())
elseif pc.is_gm() and not party.is_party() then
d.set_regen_file("data/dungeon/dc/dc_regen1.txt")
d.regen_file("data/dungeon/dc/dc_doors.txt")
d.setf("level", 2)
server_timer("runtime", 6, pc.get_map_index())
end
end
when item_check.timer with d.getf("level") == 3 begin
if pc.countitem(30319) >= 1 then
say("Du hast den Schrumpfkopf und wirst nun auf die")
say("3. Ebene teleportiert.")
pc.remove_item(30319, 1)
timer("item_check_end", 2)
else
d.exit_all()
end
end
when item_check_end.timer begin
cleartimer("item_check")
end
when runtime.server_timer begin
if d.select(get_server_timer_arg()) then
d.setf("time", get_time()+60*60*1)
devilscatacomb.getTimeLeft()
server_timer("runtime_end", 60*60, get_server_timer_arg())
end
end
when runtime_end.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Die Zeit ist um.")
d.exit_all()
end
end
when 30103.click with devilscatacomb.isInCatacomb() and devilscatacomb.getLevelByCord() == 2 and npc.lock() begin
say("Während du den Stein genauer untersuchst, kannst")
say("du eine Gravur erkennen.")
wait()
say("Lediglich der Besitzer des Schrumpfkopfes")
say("darf eintreten, nachdem die Siegel dreier Türen")
say("aufgebrochen wurden.")
say("Wenn du dieses Relikt nicht bei dir trägst,")
say("wirst du aus der Devil's Catacomb teleportiert.")
say("")
wait()
local s = select("Ja, lass mich eintreten!", "Nein, ich möchte nicht eintreten.")
if s == 2 then
return
elseif s == 1 then
if pc.count_item(30319) >= 1 then
npc.purge()
d.setf("level", 3)
d.purge()
d.clear_regen()
timer("dc_jump_3", 6)
else
say("Du hast keinen Schrumpfkopf und wirst nun")
say("aus der Höhle teleportiert ...")
pc.warp(591374, 99325, 65)
end
end
end
when dc_jump_3.timer begin
d.set_regen_file("data/dungeon/dc/dc_regen2.txt")
d.notice("Suche den richtigen Metinstein und zerstöre ihn!")
devilscatacomb.getTimeLeft()
d.jump_all(4451, 12282)
local positions = devilscatacomb.get3FloorStonePositions()
for i = 1, 6 do
d.set_unique("fake" .. i , d.spawn_mob(8037, positions[1], positions[2]))
end
d.set_unique("real", d.spawn_mob(8037, positions[7][1], positions[7][2]))
server_loop_timer('dc_stone3_update', 10, pc.get_map_index())
end
when dc_stone3_update.server_timer begin
if d.select(get_server_timer_arg()) then
if not d.is_unique_dead("real") then
for i = 1, 6 do
if d.getf("fakedead" .. i) == 0 then
if d.unique_get_hp_perc("fake" .. i) < 30 then
if not d.is_unique_dead("fake" .. i) then
d.purge_unique("fake" .. i)
end
d.setf("fakedead" .. i, 1)
d.notice("Du hast den falschen Metinstein zerstört. Finde den richtigen!");
end
end
end
else
server_timer("dc_stone_end3", 5, get_server_timer_arg())
d.notice("Der richtige Metinstein wurde zerstört. Du darfst nun die 4. Ebene betreten.")
end
else
server_timer('dc_stone3_stop_timer', 1, get_server_timer_arg())
end
end
when dc_stone3_stop_timer.server_timer begin
clear_server_timer('dc_stone3_update', get_server_timer_arg())
end
when dc_stone_end3.server_timer begin
if d.select(get_server_timer_arg()) then
clear_server_timer('dc_stone3_update', get_server_timer_arg())
d.setf("level", 4)
d.jump_all(3347, 12810)
d.clear_regen()
d.set_regen_file("data/dungeon/dc/dc_regen3.txt")
d.regen_file("data/dungeon/dc/dc_warps.txt")
d.spawn_mob(30104, 500, 716)
end
end
when 30104.click with devilscatacomb.isInCatacomb() and devilscatacomb.getLevelByCord() == 4 and npc.lock() begin
npc.purge()
say_in_map(pc.get_map_index(),"Du hast es geschafft! Hier ist der Ausgang des[ENTER]Labyrinths. Steige nun in die 5. Ebene hinab.")
server_timer("dc4_enter", 6, pc.get_map_index())
end
when dc4_enter.server_timer begin
if d.select(get_server_timer_arg()) then
d.jump_all(3918, 12939)
d.set_regen_file("data/dungeon/dc/dc_regen4.txt")
d.spawn_mob(30102, 848, 739)
local mob_pos = { {1006, 649}, {979, 829}, {691, 822}, {714, 653}, {848, 593} }
local rnd = number(1, 5)
d.spawn_mob(2591, mob_pos[rnd][1], mob_pos[rnd][2])
server_timer("dc4_message", 3, get_server_timer_arg())
end
end
when dc4_message.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Besiege die Dämonenwachen, um das Fratzen-Totem zu erhalten. Es dient dir als Schlüssel zur 6. Ebene.")
devilscatacomb.getTimeLeft()
end
end
when 30102.take with item.vnum == 30312 begin
say("Du hast das Fratze-Totem.")
say("Nun kannst du in die nächste Ebene!")
say("")
wait()
say("Viel Glück!")
item.remove()
npc.purge()
d.clear_regen()
timer("dc_level_5", 6)
end
when dc_level_5.timer begin
d.jump_all(4312, 12799)
timer("dc_level_5_start", 5)
end
when dc_level_5_start.timer begin
d.setf("level", 5)
d.notice("Besiege Charon und seine Schergen!")
devilscatacomb.getTimeLeft()
d.regen_file("data/dungeon/dc/dc_regen5.txt")
d.spawn_mob(2597, 1301, 699)
end
when kill begin
if devilscatacomb.isInCatacomb() then
if npc.race == 2597 then
if d.count_monster() < 1000 then
d.setf("level", 6)
d.clear_regen()
timer("dc_level_5_end", 12)
else
if d.getf("charon_spawns") < 4 then
d.spawn_mob(2597, 1301, 699)
d.setf("charon_spawns", d.getf("charon_spawns") + 1)
else
d.notice("Du hast versagt Charon hat dich mit seinen Schergen")
d.notice("überlistet. Du verlässt nun die Höhle")
local nextTime=get_time()+time_min_to_sec(1)
d.setqf("__NEXT_TIME__", nextTime)
d.exit_all()
end
end
end
if npc.race == 2598 and d.getf("level") == 6 then
clear_server_timer("runtime", pc.get_map_index())
clear_server_timer("runtime_end", pc.get_map_index())
notice_all(pc.get_name().." und "..tonumber(party.get_near_count()-1).." weitere Gruppenmitglieder haben Azrael besiegt!")
timer("glory_message", 6)
end
if npc.race == 2591 then
game.drop_item_with_ownership(30312, 1)
end
end
end
when dc_level_5_end.timer begin
say_in_map(pc.get_map_index(),"Du hast Charon besiegt! Nun wirst du[ENTER]zur letzten Ebene der Devil's Catacomb[ENTER]teleportiert.")
timer("dc_level_6", 3)
end
when dc_level_6.timer begin
d.jump_all(3145, 13187)
timer("dc_level_6_into", 3)
end
when dc_level_6_into.timer begin
d.regen_file("data/dungeon/dc/dc_regen6.txt")
d.spawn_mob(2598, 74, 1103)
d.notice("Besiege Azrael!")
end
when glory_message.timer begin
local text = "Azrael wurde besiegt. Endlich herrscht[ENTER]Frieden in der Devil's Catacomb. Du wirst nun[ENTER]an die Oberfläche teleportiert."
say_in_map(pc.get_map_index(), text)
timer("dc_end", 20)
end
when dc_end.timer begin
local nextTime=get_time()+time_min_to_sec(1)
d.setqf("__NEXT_TIME__", nextTime)
d.exit_all()
end
end
state _FUNC_ begin
function getLevelByCord()
if pc.get_local_x() > 30 and pc.get_local_y() > 45 and pc.get_local_x() < 450 and pc.get_local_y() < 450 then
return 1
elseif pc.get_local_x() > 540 and pc.get_local_y() > 39 and pc.get_local_x() < 1000 and pc.get_local_y() < 462 then
return 2
elseif pc.get_local_x() > 1048 and pc.get_local_y() > 35 and pc.get_local_x() < 1455 and pc.get_local_y() < 458 then
return 3
elseif pc.get_local_x() > 31 and pc.get_local_y() > 541 and pc.get_local_x() < 564 and pc.get_local_y() < 1058 then
return 4
elseif pc.get_local_x() > 650 and pc.get_local_y() > 540 and pc.get_local_x() < 1050 and pc.get_local_y() < 955 then
return 5
elseif pc.get_local_x() > 1175 and pc.get_local_y() > 576 and pc.get_local_x() < 1420 and pc.get_local_y() < 810 then
return 6
else
return 0
end
end
function isInCatacomb()
if pc.get_map_index() >= (90 * 10000) and pc.in_dungeon() then
return true
else
return false
end
end
function get3FloorStonePositions()
local positions =
{
{1365, 352}, {1349, 150}, {1133, 167}, {1151, 364},
{1234, 136}, {1255, 371}, {1132, 245},
}
for i = 1, 6 do
local j = number(i, 7)
if i != j then
local t = positions;
positions = positions[j];
positions[j] = t;
end
end
return positions
end
function getTimeLeft()
local secondsLeft = (d.getf("time") - get_time())
local minutesLeft = math.ceil(secondsLeft / 60)
d.notice("Du hast noch "..minutesLeft.." Minute(n) Zeit.")
end
end
end
Cine ma ajuta sa fac un quest ? asta e cel original ....vreau unu care sa ceara relicva ingerului cu coasa si sa nu mai ceara grupa .
Răspunsuri
1 Vizualizări
407
1 Vizualizări
407
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 41 vizitatori

