Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- quest dungeon_dt begin
- state start begin
- when 20348.chat."Wieża Demonów (Lv. 40+)" begin
- snn()
- say("Witaj,")
- say("strzegę tego miejsca przed silnymi stworami,")
- say("nie mogę dopuścić do ponownego przejęcia Imperium.")
- say("Wpuszczam tam tylko doświadczone osoby od poziomu 40.")
- say_reward("Chcesz wejść do Wieży Demonów?")
- local s = select("Tak", "Nie")
- if s == 1 then
- if pc.level < 40 then
- notice("[Strażnik Wieży Demonów] Nie posiadasz 40 poziomu.")
- elseif not pc.can_warp() then
- notice("[Strażnik Wieży Demonów] Nie możesz teraz się przenieść.")
- else
- pc.warp(216500, 727000)
- pc.setqf("go_dt", 1)
- end
- end
- end
- when login with pc.get_map_index() == 66 and pc.getqf("go_dt") > 0 begin
- pc.setqf("go_dt", 0)
- notice("[Wieża Demonów] Aby przejść na pierwsze piętro musisz pokonać Metin Twardości.")
- end
- when kill with npc.get_race() == 8015 and pc.get_map_index() == 66 begin
- if game.get_event_flag("dungeon_dt_close") == 0 then
- notice_in_map("[Wieża Demonów] Za 10 sekund przeniesiecie się na pierwsze piętro.")
- timer("go_first", 10)
- else
- notice_in_map("[Wieża Demonów] Chwilowo Wieża Demonów jest wyłączona.")
- notice_in_map("[Wieża Demonów] Powinna zostać włączona do godziny.")
- end
- end
- when go_first.timer with pc.get_map_index() == 66 begin
- d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])
- pc.setqf("dt_enter", 1)
- end
- when login with index(66) == 1 and pc.getqf("dt_enter") == 1 begin
- pc.setqf("dt_enter", 0)
- d.regen_file("data/dungeon/deviltower2_regen.txt")
- d.setf("level", 1)
- d.notice("[Wieża Demonów] Zniszczcie wszystkie potwory, aby przejść na drugie piętro.")
- end
- when kill with index(66) == 1 and d.getf("killed_first_floor") < 243 and d.getf("level") == 1 begin --245
- d.setf("killed_first_floor", d.getf("killed_first_floor")+1)
- --d.notice(d.getf("killed_first_floor"))
- if d.getf("killed_first_floor") == 243 then
- d.notice("[Wieża Demonów] Pokonaliście wszystkie potwory! Za 10 sekund przeniesiecie się na drugie piętro.")
- d.clear_regen()
- timer("go_second", 10)
- end
- end
- when go_second.timer with index(66) == 1 begin
- d.jump_all(special.devil_tower[2][1], special.devil_tower[2][2])
- d.setf("level", 2)
- d.regen_file("data/dungeon/deviltower3_regen.txt")
- d.notice("[Wieża Demonów] Zniszczcie wszystkie potwory i Króla Demonów, aby przejść na trzecie piętro.")
- end
- when kill with index(66) == 1 and d.getf("killed_second_floor") < 311 and d.getf("level") == 2 begin -- 313
- d.setf("killed_second_floor", d.getf("killed_second_floor")+1)
- --d.notice(d.getf("killed_second_floor"))
- if d.getf("killed_second_floor") == 311 then
- d.notice("[Wieża Demonów] Pokonaliście wszystkie potwory i Króla Demonów.")
- d.notice("[Wieża Demonów] Za chwilę przeniesiecie się na trzecie piętro.")
- d.clear_regen()
- timer("go_third", 10)
- end
- end
- when go_third.timer with index(66) == 1 begin
- d.spawn_mob(8016, 372, 631)
- d.jump_all(special.devil_tower[3][1], special.devil_tower[3][2])
- d.setf("level", 3)
- d.notice("[Wieża Demonów] Zniszczcie Metin Diabła.")
- end
- when kill with npc.get_race() == 8016 and index(66) == 1 begin
- d.setf("real_metin", number(1, 7))
- d.spawn_mob(8017, 368, 629)
- d.spawn_mob(8017, 419, 630)
- d.spawn_mob(8017, 428, 653)
- d.spawn_mob(8017, 422, 679)
- d.spawn_mob(8017, 395, 689)
- d.spawn_mob(8017, 369, 679)
- d.spawn_mob(8017, 361, 658)
- d.notice("[Wieża Demonów] Aby przejść na czwarte piętro musicie pokonać prawdziwy Metin Upadku.")
- end
- when kill with npc.get_race() == 8017 and index(66) == 1 begin
- d.setf("real_metin_killed", d.getf("real_metin_killed")+1)
- if d.getf("real_metin_killed") < d.getf("real_metin") then
- d.notice("[Wieża Demonów] Zniszczyliście fałszywy Kamień Metin.")
- else
- d.notice("[Wieża Demonów] Udało Wam się pokonać prawdziwy Kamień Metin!")
- d.notice("[Wieża Demonów] Za chwilę zostaniecie przeniesieni na czwarte piętro.")
- d.kill_all()
- timer("go_fourth", 10)
- end
- end
- when go_fourth.timer with index(66) == 1 begin
- d.set_regen_file("data/dungeon/deviltower4_regen.txt")
- d.spawn_mob(20073, 421, 452)
- d.spawn_mob(20073, 380, 460)
- d.spawn_mob(20073, 428, 414)
- d.spawn_mob(20073, 398, 392)
- d.spawn_mob(20073, 359, 426)
- timer("pieczecie_left_15", 60*5)
- timer("pieczecie_left_10", 60*10)
- timer("pieczecie_left_5", 60*15)
- timer("pieczecie_exit", 60*20)
- d.setf("level", 4)
- d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])
- d.notice("[Wieża Demonów] Aby przejść na piąte piętro musicie zdobyć 5x Kamień Otwarcia,")
- d.notice("[Wieża Demonów] następnie niby odblokować Pieczęcie. Macie na to 20 minut!")
- end
- when pieczecie_left_15.timer with index(66) == 1 and d.getf("level") == 4 begin
- d.notice("[Wieża Demonów] Pozostało 15 minut!")
- end
- when pieczecie_left_10.timer with index(66) == 1 and d.getf("level") == 4 begin
- d.notice("[Wieża Demonów] Pozostało 10 minut!")
- end
- when pieczecie_left_5.timer with index(66) == 1 and d.getf("level") == 4 begin
- d.notice("[Wieża Demonów] Pozostało 5 minut!")
- end
- when pieczecie_exit.timer with index(66) == 1 and d.getf("level") == 4 begin
- d.notice("[Wieża Demonów] Czas minął! Zostajecie wyrzuceni z Wieży Demonów.")
- d.exit_all()
- end
- when kill with npc.get_race() == 1062 and index(66) == 1 and d.getf("killed_fourth") < 50 and d.getf("level") == 4 begin
- d.setf("killed_fourth", d.getf("killed_fourth")+1)
- if d.getf("killed_fourth") == 30 then
- d.setf("killed_fourth", 0)
- pc.give_item2(50084, 1)
- d.notice("[Wieża Demonów] Udało Wam się zdobyć Kamień Otwarcia! W jego posiadaniu znajduje się - "..pc.get_name()..".")
- end
- end
- when 20073.take with item.vnum == 50084 and index(66) == 1 and d.getf("open_fourth") < 5 begin
- npc.purge()
- item.remove()
- d.setf("open_fourth", d.getf("open_fourth")+1)
- if d.getf("open_fourth") < 5 then
- d.notice("[Wieża Demonów] Udało Wam się odblokować Pieczęć! Pozostało: "..5-d.getf("open_fourth"))
- else
- cleartimer("pieczecie_left_15")
- cleartimer("pieczecie_left_10")
- cleartimer("pieczecie_left_5")
- cleartimer("pieczecie_exit")
- d.clear_regen()
- timer("go_fifth", 15)
- d.notice("[Wieża Demonów] Udało Wam się odblokować wszystkie Pieczęcie!")
- d.notice("[Wieża Demonów] Za 15 sekund znajdziecie się na piątym piętrze.")
- d.setf("level", 5)
- end
- end
- when go_fifth.timer with index(66) == 1 begin
- d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])
- d.regen_file("data/dungeon/deviltower5_regen.txt")
- d.notice("[Wieża Demonów] Aby przejść na szóste piętro należy pokonać Elit. Króla Demonów,")
- d.notice("[Wieża Demonów] a następnie poprosić o przejście Kowala.")
- end
- when kill with npc.get_race() == 1092 and index(66) == 1 begin
- d.kill_all()
- d.kill_all()
- timer("kowal", 5)
- d.setf("can_refine", 1)
- d.setqf("can_refine", 1)
- d.notice("[Wieża Demonów] Udało Wam się zniszczyć Elit. Króla Demonów. Za chwilę pojawi się Kowal.")
- end
- when kowal.timer with index(66) == 1 begin
- d.setqf("can_refine", 1)
- local kowal = number(20074, 20076)
- d.spawn_mob(kowal, 425, 216)
- d.setqf("can_refine", 1)
- d.spawn_mob(8018, 639, 658)
- d.spawn_mob(8018, 611, 637)
- d.spawn_mob(8018, 596, 674)
- d.spawn_mob(8018, 629, 670)
- --d.jump_all(2048+590, 6656+638)
- end
- when 20074.chat."Szóste Piętro" or 20075.chat."Szóste Piętro" or 20076.chat."Szóste Piętro" with index(66) == 1 begin
- snn()
- if d.getf("lock") == 1 then
- say("Ktoś rozmawia już z Kowalem.")
- return
- end
- d.setf("lock", 1)
- say("Mogę przenieść Was na wyższe piętra,")
- say("pamiętajcie, że to nie łatwe zadanie.")
- say("Każdy musi mieć 75 poziom.")
- say_reward("Chcesz kontynuować?")
- local s = select("Tak", "Nie")
- if s == 1 then
- if pc.level < 75 then
- notice("[Wieża Demonów] Nie posiadasz 75 poziomu.")
- d.setf("lock", 0)
- else
- d.setf("level", 6)
- -- d.spawn_mob(8018, 639, 658)
- -- d.spawn_mob(8018, 611, 637)
- -- d.spawn_mob(8018, 596, 674)
- -- d.spawn_mob(8018, 629, 670)
- d.setf("lock", 0)
- d.jump_all(2048+590, 6656+638)
- d.notice("[Wieża Demonów] Zniszcz 4 Metiny, a następnie z Metina Morderstwa,")
- d.notice("[Wieża Demonów] zdobądź unikalną Mapę Zin.")
- end
- else
- d.setf("lock", 0)
- return
- end
- end
- -- when 20075.chat."Szóste Piętro" with index(66) == 1 begin
- -- snn()
- -- say("Mogę przenieść Was na wyższe piętra,")
- -- say("pamiętajcie, że to nie łatwe zadanie.")
- -- say("Każdy musi mieć 75 poziom.")
- -- say_reward("Chcesz kontynuować?")
- -- local s = select("Tak", "Nie")
- -- if s == 1 then
- -- d.setf("level", 6)
- -- d.spawn_mob(8018, 639, 658)
- -- d.spawn_mob(8018, 611, 637)
- -- d.spawn_mob(8018, 596, 674)
- -- d.spawn_mob(8018, 629, 670)
- -- d.jump_all(2048+590, 6656+638)
- -- d.notice("[Wieża Demonów] Zniszcz 4 Metiny, a następnie z Metina Morderstwa,")
- -- d.notice("[Wieża Demonów] zdobądź unikalną Mapę Zin.")
- --end
- --end
- --when login or kill with index(66) == 1 and d.getf("level") == 6 and pc.level < 75 begin
- -- notice("[Wieża Demonów] Nie posiadasz 75 poziomu by tu przebywać!")
- -- d.exit()
- --end
- when kill with npc.get_race() == 8018 and index(66) == 1 and d.getf("killed_6_floor") < 4 begin
- d.setf("killed_6_floor", d.getf("killed_6_floor")+1)
- if d.getf("killed_6_floor") == 4 then
- d.set_regen_file("data/dungeon/deviltower6_regen.txt")
- end
- end
- when kill with npc.get_race() == 8019 and index(66) == 1 begin
- local sz_mapa_zin = number(1, 100)
- if sz_mapa_zin <= 20 then
- game.drop_item_with_ownership(30302, 1)
- d.clear_regen()
- d.notice("[Wieża Demonów] Użyj Mapy Zin, aby przejść na 7 piętro.")
- else
- game.drop_item_with_ownership(30301, 1)
- end
- end
- when 30302.use with index(66) == 1 and d.getf("level") == 6 begin
- if not pc.can_warp() then
- notice("[Wieża Demonów] Nie możesz teraz się przenieść.")
- else
- item.remove()
- d.setf("level", 7)
- d.jump_all(2048+590, 6656+403)
- d.set_regen_file("data/dungeon/deviltower7_regen.txt")
- d.spawn_mob(20366, 640, 460)
- d.notice("[Wieża Demonów] Zdobądź Klucz Zin-Bong-In z potworów, aby dostać się na 8 piętro.")
- end
- end
- when kill with npc.get_race() == 1040 and index(66) == 1 and d.getf("level") == 7 begin
- local sz_klucz_zin = number(1, 100)
- if sz_klucz_zin <= 3 then
- game.drop_item_with_ownership(30304, 1)
- d.notice("[Wieża Demonów] Przenieś Klucz Zin-Bong-In na posąg, aby dostać się do Umarłego Rozpruwacza.")
- elseif sz_klucz_zin == 5 or sz_klucz_zin == 6 or sz_klucz_zin == 4 then
- game.drop_item_with_ownership(30303, 1)
- end
- end
- when 20366.take with item.vnum == 30303 and index(66) == 1 and d.getf("level") == 7 begin
- notice("[Wieża Demonów] To nie jest odpowiedni Klucz!")
- end
- when 20366.take with item.vnum == 30304 and index(66) == 1 and d.getf("level") == 7 begin
- item.remove()
- d.setf("level", 8)
- d.jump_all(2048+590, 6656+155)
- d.regen_file("data/dungeon/deviltower8_regen.txt")
- d.notice("[Wieża Demonów] Aby wejść na 9 piętro musisz pokonać Umarłego Rozpruwacza!")
- end
- when kill with npc.get_race() == 1093 and index(66) == 1 begin
- d.kill_all()
- d.kill_all()
- d.notice("[Wieża Demonów] Za 10 sekund zostaniecie przeniesieni na piętro z Niebieską Śmiercią!")
- d.spawn_mob(1095, 607, 218)
- server_timer('a', 10, pc.get_map_index())
- end
- when a.server_timer begin
- if d.select(get_server_timer_arg()) then
- d.jump_all(2048+590, 6656+155)
- d.notice("[Wieża Demonów] Zabijcie Niebieską Śmierć!")
- end
- end
- when kill with npc.get_race() == 1095 and index(66) == 1 begin
- d.notice("[Wieża Demonów] Ukończyliście Wieżę Demonów.")
- d.notice("[Wieża Demonów] Za 60 sekund zostaniecie przeniesieni przed wejście.")
- server_timer('b', 60, pc.get_map_index())
- end
- when b.server_timer begin
- if d.select(get_server_timer_arg()) then
- d.exit_all()
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement