Merhaba nemereyi kolaylaştırmak istiyorum.
1. 2.katı ilk dusen anahtarla açmak.
2. 5.katta kupleri tek kuzey yıldızıyla kuzey yıldızı yok olmadan sırası önemsenmeden hızlı hızlı geçmesini sağlamak.
3. 8.kat Buz cicegi anahahtarı ilk dusende %100 geçmesini sağlamak.
Yardımcı olursanız çok sevinirim özellikle 2. için. sorunlu sanırım.
1. 2.katı ilk dusen anahtarla açmak.
2. 5.katta kupleri tek kuzey yıldızıyla kuzey yıldızı yok olmadan sırası önemsenmeden hızlı hızlı geçmesini sağlamak.
3. 8.kat Buz cicegi anahahtarı ilk dusende %100 geçmesini sağlamak.
Yardımcı olursanız çok sevinirim özellikle 2. için. sorunlu sanırım.
Lua (Quest):
quest snow_dungeon begin
state start begin
function get_settings()
local snow_dungeon_settings = {}
snow_dungeon_settings.map_index = 352 --Mapindex
snow_dungeon_settings.base_cord = {5120, 1536 } --Base Kordinaten
snow_dungeon_settings.outside_entry_pos = {61,4327,1668} --Mapindex, Exit Position (Eisland)
snow_dungeon_settings.need_level = 90 --Ab wann ist der Dungeon betretbar.
snow_dungeon_settings.need_level_group = 90 --Benötigte Level für Gruppenmitglieder
snow_dungeon_settings.WaitBeforOutAllOnExit = 60 --Wartezeit bevor alle alle herausteleportiert werden bei einem erfolgreichen Run. (Empfohlen 60)
snow_dungeon_settings.NextJumpTime = 5 --Wann man zur nächsten ebene Gejumpt wird (timer) (Empfohlen 5)
snow_dungeon_settings.DurationLoopTimer = 15 --Welchen intervall die Level und Missionen geprüft werden sollen. (Empfohlen 45)
snow_dungeon_settings.wait_duration = 60*60*2 --Ab wann der Dungeon wieder betretbar ist (PartyLeader)
snow_dungeon_settings.maxlife_time_on_dungeon = 60*60*2 --Maximale Zeit für den Dungeon.
snow_dungeon_settings.DurationMaxOnReJoinGroup = 60*5 --Maximale Zeit innerhalb wann man wieder in die Gruppe joinen kann.
snow_dungeon_settings.key_level_2 = 30331 --KeyVnum für die 2.Ebene --Frostschlüssel
snow_dungeon_settings.NpcVnum_level_5 = 20398 --MobVnum von 5.Ebene --Würfel des Arktos
snow_dungeon_settings.StoneCount_level_5 = 6 --Wie viele Würfel des Arktos sollen erscheinen?
snow_dungeon_settings.Key_on_level_5 = 30332 --KeyVnum von 5.Ebene --Nordstern
snow_dungeon_settings.StoneCords_level_5 = {
{432,508},{437,493},{448,492},{448,476},{467,475},{466,464},
{462,450},{458,428},{446,439},{431,431},{415,416},{402,427},
{397,438},{375,434},{374,456},{390,468},{385,492},{402,505},
{404,489},{386,482}
} --Positionen von Würfel des Arktos
snow_dungeon_settings.MobVnum_level_6 = 8058 --MobVnum von 6.Ebene --Metin der Kälte
snow_dungeon_settings.MobVnum_level_7 = 6151 --MobVnum von 7.Ebene --Szel
snow_dungeon_settings.SzelCords_level_7 = {
{752,499},{758,479},{772,452},{763,444},{750,451},{728,441},
{726,455},{718,482},{715,491},{731,473},{748,429}
} --Positionen von Szel
snow_dungeon_settings.Key_on_level_8 = 30333 --KeyVnum von 8.Ebene --Eisblumenschlüssel
snow_dungeon_settings.NpcVnum_level_9 = 20399 --MobVnum von 9.Ebene --Säule des Norddrachen
snow_dungeon_settings.BossVnumGroup = 6062 --GroupMobVnum vom Boss --(Group.txt)
snow_dungeon_settings.BossVnum = 6191 --MobVnum von 10.Ebene --Nemere(6191)
snow_dungeon_settings.Position_level_1 = { 171,271 } --Position ebene 1 --Startposition --Töte alle Monster auf dieser Ebene.
snow_dungeon_settings.Position_level_2 = { 761,270 } --Position ebene 2 --Finde den richtigen Frostschlüssel, nur ein Schamane kann ihn benutzen.
snow_dungeon_settings.Position_level_3 = { 187,491 } --Position ebene 3 --Töte alle Monster auf dieser Ebene.
snow_dungeon_settings.Position_level_4 = { 421,259 } --Position ebene 4 --Töte alle Monster auf dieser Ebene.
snow_dungeon_settings.Position_level_5 = { 419,530 } --Position ebene 5 --Öffnet die Siegel an den Würfel des Arktos in der richtigen Reihenfolge. (Zieht Nordstern auf die Würfel)
snow_dungeon_settings.Position_level_6 = { 571,706 } --Position ebene 6 --Töte alle Monster auf dieser Ebene. Danach Zersöre den Metin der Kälte (Nur ein Schamane kann ihn Schaden)
snow_dungeon_settings.Position_level_7 = { 746,534 } --Position ebene 7 --Töte alle Monster auf dieser Ebene und Szel
snow_dungeon_settings.Position_level_8 = { 303,710 } --Position ebene 8 --Der Eisblumenschlüssel muss gedroppt werden, jedoch kann dieser nur von Schamanen und Ninja benutzt werden.
snow_dungeon_settings.Position_level_9 = { 848,693 } --Position ebene 9 --Zerstört die Säule des Norddrachen. Nur Ninjas und Schamanen können ihm Schaden zufügen.
snow_dungeon_settings.Position_level_10 = { 927,391 } --Position ebene 10 (BossZone) --Besiege Nemere, den König über Frost und Eis.
snow_dungeon_settings.Enable_TestServerMode = false --Ob TestServer mode aktiviert ist. Wenn ja werden die Aufgaben schneller beendet.
snow_dungeon_settings.IsNewga_me_re_vi_sion = true --Need ga_me_re_vi_sion 40301
return snow_dungeon_settings
end
function is_TestServerMode()
local set = snow_dungeon.get_settings()
return set.Enable_TestServerMode
end
function is_nemeres_dungeon()
local set = snow_dungeon.get_settings()
local map = pc.get_map_index()
if map >= (set.map_index * 10000) and map < (set.map_index * 10000 + 9000) then
return true
else
return false
end
end
-- --------------------- #Zindana devam et ------------------------
-- pc.setf("snow_dungeon","dungeon_turn",1)
-- pc.setf("snow_dungeon","dungeon_turn",0)
-- ----------------------------------------------------------------
-- --------------------- #Zindana devam et ------------------------
-- function is_nemere_dungeon_turn_back()
-- if pc.getf("snow_dungeon","dungeon_turn") == 1 and game.get_event_flag("nemere_dungeon_turn_back") == 0 and game.get_event_flag("dungeon_turn_back") == 0 then
-- return true
-- else
-- return false
-- end
-- end
-- when 20395.chat."Nemereye devam et..." with snow_dungeon.is_nemere_dungeon_turn_back() begin
-- say_npc()
-- say_reward_center("Görünüse göre yarim kalan bir macera var")
-- say_reward_center("seni içeri tekrar göndermemi ister misin ?")
-- say("")
-- local s = select("Beni içeri gönder !","Kapat")
-- if s == 1 then
-- pc.dungeon_turn_back_warp(352)
-- end
-- end
-- ----------------------------------------------------------------
when 20395.chat."Nemere'nin Kulesi (Bireysel)" begin
addimage(35,35,'nemere.tga')
if party.is_leader() or party.is_party() then
say_title_center(mob_name(20395))
say("")
say("")
say("")
say("")
say("")
say_reward_center("Bu zindana grup halinde giremezsin")
say_reward_center("lütfen önce bulundugun grupdan ayril !")
return
end
-- sys_log(0,"snow_dungeon quest open")
local set = snow_dungeon.get_settings()
local need_level = 90
say_title_center(mob_name(20395))
addimage(35,35,'nemere.tga')
say("")
say("")
say("")
say("")
say("")
say_center("Nemerenin kulesine tek basina giris yapabilirsin")
say_center("Biraz tehlikeli bir yolculuk olacak gibi duruyor!")
say("")
say_reward_center("Nemere'nin Gözetleme Kulesi'ne girmek")
say_reward_center("istiyor musun?")
if select("Gir","Girme") == 2 then
return
end
-- ------------ Dungeon Turn Back System ----------------------
-- pc.remove_turn_back_dungeon()
-- ------------------------------------------------------------
if (game.get_event_flag("enable_time_snow") == 1 and pc.getf("snow_dungeon","duration") >= get_global_time()) then
say_title_center(mob_name(20395))
addimage(35,35,'nemere.tga')
say("")
say("")
say("")
say("")
say("")
say("Beta Server; süreyi sıfırlamak mı istiyorsun?")
if select("Evet","Hayır") == 1 then
pc.setf("snow_dungeon","duration",0)
return
end
end
if pc.get_level() < need_level then
say_title_center(mob_name(20395))
addimage(35,35,'nemere.tga')
say("")
say("")
say("")
say("")
say("")
say_center("Kuleye girebilmek için en az "..need_level..".")
say_center("seviyede olmalısın.")
return
end
if pc.getf("snow_dungeon","duration") >= get_global_time() then
say_title_center(mob_name(npc.get_race()))
addimage(35,35,'nemere.tga')
say("")
say("")
say("")
say("")
say("")
say_center("Nemere'nin Gözetleme Kulesi'ne yeniden giriş ")
say_center("için bekleme süresi henüz dolmamış.")
say_center("Kalan süre: "..dungeon_get_duration(pc.getf("snow_dungeon","duration") - get_global_time()).."")
return
end
if pc.count_item(71174) < 1 then
say_title_center(mob_name(20395))
addimage(35,35,'nemere.tga')
say("")
say("")
say("")
say("")
say("")
say_center("Envanterinde yeterli miktarda yok:")
say_center(string.format("%s.", item_name(71174)))
say("")
return
end
pc.remove_item(71174, 1)
timer("make_dungeon",2)
end
when 20397.chat."Zindani Canlandir !" with d.getf("level") == 0 begin --Eisiger Löwe
say("Nemere'nin Gözetleme kulesine girdin. Burada")
say("en fazla bir saat bulunabilirsin. Kuleden")
say("çıktığında dört saat bekledikten sonra tekrar")
say("girebilirsin.")
wait()
local set = snow_dungeon.get_settings()
local loop_durr = set.DurationLoopTimer
local wait_durations = set.wait_duration
local t = get_global_time()
d.setf("LastTimeGetOutPut",0)
server_loop_timer("CheckLevelAndCountKillOnMobs",loop_durr,d.get_map_index())
d.regen_file("data/dungeon/ice_dungeon/zone_1.txt")
d.setf("Start_Time",t + set.maxlife_time_on_dungeon)
server_timer("Jp_OutAllFailNotice",(t + set.maxlife_time_on_dungeon) - t,d.get_map_index())
--pc.setqf("duration",t + wait_durations)
d.setqf2("snow_dungeon","duration",t + wait_durations)
d.setf("level",1)
d.notice("Bütün düşmanları mağlup edin!")
npc.purge()
snow_dungeon._GetLastTime()
setskin(NOWINDOW)
end
when 20397.chat."Nemere Taht Salonu" with d.getf("level") == 9 begin --Eisiger Löwe
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local level = d.getf("level")
local stone_level_6 = set.MobVnum_level_6
local stone_level_9 = set.NpcVnum_level_9
local boss_vnum = set.BossVnum
local wait_time = set.WaitBeforOutAllOnExit
local mobvnum = npc.get_race()
say("Nemere Taht Salonu'na girmek istiyor musun?")
local s = select("Gir","Belki sonra")
if s == 2 then
return
end
server_timer("Jp_Boss",next_jump_time,d.get_map_index())
local v = set.BossVnumGroup
d.regen_file("data/dungeon/ice_dungeon/zone_boss.txt")
d.spawn_group(v, 928, 335, 5 ,1, 1)
npc.purge()
setskin(NOWINDOW)
end
when make_dungeon.timer begin
local set = snow_dungeon.get_settings()
local cord = set.base_cord
local start_pos = set.Position_level_1
local t = get_global_time()
pc.setf("snow_dungeon","dungeon_turn",0)
-- d.new_jump(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2]))
pc.setf("snow_dungeon","turn_back_time", 0)
d.new_jump(set.map_index,(cord[1] + start_pos[1]) * 100, (cord[2] + start_pos[2]) * 100)
snow_dungeon._ClearAlls()
d.setf("party_leader_pid",pc.get_player_id())
pc.setf("ice_dungeon_map_index",d.get_map_index())
d.spawn_mob_dir(20397, 173,262,1) --Eisiger Löwe
end
function _ClearAlls()
local d_index = d.get_map_index()
clear_server_timer("CheckLevelAndCountKillOnMobs",d_index)
clear_server_timer("Jp_1",d_index)
clear_server_timer("Jp_2",d_index)
clear_server_timer("Jp_3",d_index)
clear_server_timer("Jp_4",d_index)
clear_server_timer("Jp_5",d_index)
clear_server_timer("Jp_6",d_index)
clear_server_timer("Jp_7",d_index)
clear_server_timer("Jp_8",d_index)
clear_server_timer("Jp_9",d_index)
clear_server_timer("Jp_10",d_index)
clear_server_timer("Jp_OutAll",d_index)
clear_server_timer("Jp_OutAllFail",d_index)
clear_server_timer("Jp_OutAllFailNotice",d_index)
d.setf("level",0)
d.setf("party_leader_pid",0)
d.setf("Start_Time",0)
d.setf("LastTimeGetOutPut",0)
d.setf("Stone_5_count",0)
d.setf("Stone_5_item_fail",0)
d.clear_regen()
d.kill_all()
end
function _CheckMembersLevel()
local set = snow_dungeon.get_settings()
local user_fail_level = {}
local pids = {party.get_member_pids()}
local need_level = set.need_level_group
local have_ninja = true
local have_shaman = true
if pc.get_level() < need_level then
say("Seviyen yetersiz.")
end
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
--dchat("TEST modu aktif.")
return true
end
if table.getn(user_fail_level) == 0 then
return true
end
end
when logout begin
if snow_dungeon.is_nemeres_dungeon() == true then
------------ Dungeon Turn Back System ----------------------
pc.setf("snow_dungeon","dungeon_turn",1)
-- pc.setf("snow_dungeon","turn_back_time", get_time() + (5 * 60))
------------------------------------------------------------
end
end
-- ------------ Dungeon Turn Back System ----------------------
-- when dungeon_turn_back_exit_nemeres.server_timer begin
-- if d.select(get_server_timer_arg()) then
-- pc.warp(432000,165000)
-- end
-- end
-- ------------------------------------------------------------
when login begin
if pc.get_map_index() == 352 then
pc.warp(432000,165000)
return
end
if snow_dungeon.is_nemeres_dungeon() == true then
-- ------------ Dungeon Turn Back System ----------------------
-- if (get_time() > pc.getf("snow_dungeon","turn_back_time") and get_time() > pc.getf("snow_dungeon","turn_back_time") != 0) then
-- say_npc()
-- say("Zindana devam etmek için sana verilen")
-- say("5 dakika süre doldu!")
-- say("")
-- say_reward_center("Disari gönderiliyorsun !")
-- server_timer("dungeon_turn_back_exit_nemeres",5 ,d.get_map_index())
-- return
-- end
-- ------------------------------------------------------------
local set = snow_dungeon.get_settings()
local backk = set.outside_entry_pos
-- pc.set_warp_location(backk[1], backk[2],backk[3])
if pc.get_level() < set.need_level_group then
chat("Yetersiz seviye!")
d.exit()
return
end
--chat("Hoş geldiniz. Burada "..math.ceil((d.getf("Start_Time") - get_global_time()) /60) .." dakikalık süreniz var.")
--notice("Sonraki kata çıkmak için Tüm yaratıkları öldürün.")
--snow_dungeon._GetLastTime()
end
end
function _GetLastTime()
local c = get_global_time()
local t = d.getf("Start_Time") - c
local o = d.getf("LastTimeGetOutPut")
--d.notice("CurrentTime: "..c.." Last: "..o.."")
if c >= o then
if t >= 60 then
d.notice("Nemere Gözlemevi'ndeki kalan süre: "..math.ceil(t / 60).." dakika")
d.notice("Süre bitiminde gözlemevinden dışarı, girişe")
d.notice("ışınlanacaksınız.")
else
d.notice("Nemere Gözlemevi'ndeki kalan süre: "..t.." saniye")
d.notice("Süre bitiminde gözlemevinden dışarı, girişe")
d.notice("ışınlanacaksınız.")
end
if t >= (60*10) then
d.setf("LastTimeGetOutPut",c + 60*5)
elseif t >= (60*5) then
d.setf("LastTimeGetOutPut",c + 60*2)
else
d.setf("LastTimeGetOutPut",c + 10)
end
--d.setf("LastTimeGetOutPut",c + 60*number(3,5)) -- Random
end
end
when Jp_OutAllFailNotice.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Zaman doldu.")
server_timer("Jp_OutAll",1,d.get_map_index())
end
end
when CheckLevelAndCountKillOnMobs.server_timer begin
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local level = d.getf("level")
local mob_count = d.count_monster()
local next_jump_time = set.NextJumpTime
--d.notice("level: "..level.." mob_count: "..mob_count.."")
if level == 1 and mob_count <= 5 then
d.notice("Az sonra ikinci kata ışınlanacaksınız.")
--d.notice("")
server_timer("Jp_2",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.set_regen_file("data/dungeon/ice_dungeon/zone_2.txt")
elseif level == 3 and mob_count <= 5 then
d.notice("Az sonra dördüncü kata ışınlanacaksınız.")
--d.notice("")
server_timer("Jp_4",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_4.txt")
elseif level == 4 and mob_count <= 5 then
d.notice("Az sonra beşinci kata ışınlanacaksınız.")
-- d.notice("")
server_timer("Jp_5",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.set_regen_file("data/dungeon/ice_dungeon/zone_5.txt")
elseif level == 6 and mob_count <= 5 then
local MobStonelvl6 = set.MobVnum_level_6
d.notice("Ayaz Metini belirdi!")
--d.notice("")
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_6.txt")
d.spawn_mob(MobStonelvl6,570,649)
--elseif level == 7 and mob_count <= 5then
-- d.notice("Az sonra sekizinci kata ışınlanacaksınız.")
--d.notice("")
-- server_timer("Jp_8",next_jump_time,d.get_map_index())
-- d.clear_regen()
-- d.kill_all()
-- d.set_regen_file("data/dungeon/ice_dungeon/zone_8.txt")
end
snow_dungeon._GetLastTime()
end
end
when Jp_2.server_timer begin --Jump Level 2
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.key_level_2
d.setf("level",2)
local cord = set.base_cord
local pos = set.Position_level_2
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Bazı canavarların üzerinde buz anahtarı var.")
d.notice("Buz anahtarları ellerinden alın ve uyan anahtarı bulun! ")
end
end
when 30331.use with snow_dungeon.is_nemeres_dungeon() == true and d.getf("fix30331") == 0 begin --key_level_2
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local job = pc.get_job()
local level = d.getf("level")
if level == 2 then
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
--dchat("SET VARIABLE JOB 3")
job = 3
end
if number(1,3) == 1 then --or d.count_monster() < 10 then
d.setf("fix30331", 1)
d.notice("Az sonra üçüncü kata ışınlanacaksınız.")
server_timer("Jp_3",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_3.txt")
item.remove()
else
d.notice("Doğru anahtarı aramaya devam edin.")
item.remove()
end
end
end
when Jp_3.server_timer begin --Jump Level 3
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
d.setf("level",3)
local cord_MQ = set.base_cord
local pos = set.Position_level_3
d.jump_all((cord_MQ[1] + pos[1]), (cord_MQ[2] + pos[2]))
d.notice("Bütün düşmanları mağlup edin!")
end
end
when Jp_4.server_timer begin --Jump Level 4
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
d.setf("level",4)
local cord = set.base_cord
local pos = set.Position_level_4
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Bütün düşmanları mağlup edin! Kutsama size ikinci")
d.notice("akında güç kazandıracak.")
end
end
when Jp_5.server_timer begin --Jump Level 5
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.NpcVnum_level_5
d.setf("level",5)
local cord = set.base_cord
local pos = set.Position_level_5
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Bir sonraki kata geçmek için Arktos Küpleri'ndeki")
d.notice("mühürleri sırasıyla kırın.")
d.notice("Buz canavarlarını mağlup edin ve ellerinden kuzey")
d.notice("yıldızlarını alıp mühürleri kırın!")
--if set.IsNewga_me_re_vi_sion == true then
-- d.notice("Die Schlüssel lassen die Monster fallen...")
-- else
-- d.notice("Die Schlüssel landen automatisch ins Inventar...")
-- end
snow_dungeon._Create_Stones_level5()
end
end
function _DropKeyOnLevel5()
if number(1,1000) >= 900 then --Abbruch der weiteren funtion -> Damit es spannend bleibt bei den würfeln... :P
return
end
local set = snow_dungeon.get_settings()
local count = set.StoneCount_level_5
local vnum = set.Key_on_level_5
local get_random_unique = d.get_unique_vid("stone5_"..number(1,count).."")
local fail_count = d.getf("Stone_5_item_fail") +1
local search = d.getf("Stone_5_count")
local search2 = d.get_unique_vid("stone5_"..search.."")
if search2 != get_random_unique then
d.setf("Stone_5_item_fail",fail_count)
end
--
-- if set.IsNewga_me_re_vi_sion == true then
--New function
game.drop_item_and_select(vnum,1)
-- else
--pc.give_item2_select(vnum,1)
-- end
--dchat("Creaty Key fail_count: "..fail_count.."")
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then --Wenn TestServer Modus
item.set_socket(1,search2)
d.setf("Stone_5_item_fail",0)
elseif fail_count > 6 then --Wenn mehr wie x mal nicht richtig erstellt wird, dann kommt der richtige Key
item.set_socket(1,search2)
d.setf("Stone_5_item_fail",0)
else
item.set_socket(1,get_random_unique)
end
end
function _Create_Stones_level5()
local set = snow_dungeon.get_settings()
local stone_level5_count_MQ = set.StoneCount_level_5
local c = set.StoneCords_level_5 --{ {432,508},{437,493},{448,492},{448,476},{467,475},{466,464}}
local v = set.NpcVnum_level_5
for i = 1, stone_level5_count_MQ, 1 do
local n = number(1,table.getn(c))
--d.spawn_mob(20398, c[n][1], c[n][2])
d.set_unique("stone5_"..i.."", d.spawn_mob(v, c[n][1], c[n][2]))
--d.set_unique("stone5_"..i.."", mob.spawn(20398, c[n][1], c[n][2],1,1,1)) --GEHT
--d.set_unique("stone5_"..i.."", d.spawn_mob_ac_dir(20398, c[n][1], c[n][2],i)) --GEHT
table.remove(c,n)
if i == 1 then
d.setf("Stone_5_count",1)
d.setf("Stone_5_item_fail",0)
end
end
end
when 20398.take begin --NpcVnum_level_5
if snow_dungeon.is_nemeres_dungeon() == true then
local set = snow_dungeon.get_settings()
local stone_level5_count = set.StoneCount_level_5
local next_jump_time = set.NextJumpTime
local vnum = item.get_vnum()
local key_level_5 = set.Key_on_level_5 --30332
local unique_item = item.get_socket(1)
--dchat("unique_item: "..unique_item.."")
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
d.notice("TESTSERVERMODE, Biraz sonra ışınlanacaksınız.")
npc.purge()
item.remove()
server_timer("Jp_6",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_6.txt")
return
end
if vnum == key_level_5 then
local npc_vid = npc.get_vid()
local search = d.getf("Stone_5_count")
local search2 = d.get_unique_vid("stone5_"..search.."")
--dchat("npc_vid: "..npc_vid.." search:"..search.." search2:"..search2.." ")
if npc_vid == search2 then
if unique_item == npc_vid then
local new = search +1
if new > stone_level5_count then
d.notice("Az sonra altıncı kata ışınlanacaksınız.")
npc.purge()
item.remove()
server_timer("Jp_6",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_6.txt")
else
if new == 2 then
say("Başardınız! Şimdi ikinci mührü açın.")
elseif new == 3 then
say("Başardınız! Şimdi üçüncü mührü açın.")
elseif new == 4 then
say("Başardınız! Şimdi dördüncü mührü açın.")
elseif new == 5 then
say("Başardınız! Şimdi beşinci mührü açın.")
elseif new == 6 then
say("Başardınız! Şimdi altıncı mührü açın.")
end
npc.purge()
item.remove()
end
d.setf("Stone_5_count",new)
else
say("Sıralama doğru! Fakat anahtar yanlış. Başka")
say("bir anahtarı deneyin.")
item.remove()
end
else
say("Sıralamanın doğru olmasına dikkat edin! Başka bir")
say("küpü deneyin.")
--say("zaa")
item.remove()
end
end
end --if is dungeon end
end --when end
when Jp_6.server_timer begin --Jump Level 6
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.MobVnum_level_6
d.setf("level",6)
local cord = set.base_cord
local pos = set.Position_level_6
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Bütün buz canavarlarını mağlup edin ve ardından")
d.notice("Ayaz Metini'ni yok edin.")
--- d.notice("Nur Schamanen können ihm Schaden hinzufügen.")
--d.spawn_mob(v,570,649)
end
end
when Jp_7.server_timer begin --Jump Level 7
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.MobVnum_level_7
d.setf("level",7)
local cord = set.base_cord
local pos = set.Position_level_7
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Ayazın ve buzun efendisi Szel'i bulun ve yok edin.")
d.notice("Bunun üstesinden ancak ejderhanın desteğiyle")
d.notice("gelinebilir.")
end
end
when Jp_8.server_timer begin --Jump Level 8
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.Key_on_level_8
d.setf("level",8)
local cord = set.base_cord
local pos = set.Position_level_8
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Bütün buz canavarlarını mağlup edin ve buzçiçeği anahtarını bulun. ")
end
end
when 30333.use with snow_dungeon.is_nemeres_dungeon() == true and d.getf("fix30333") == 0 begin --Key_on_level_8
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local level = d.getf("level")
local job = pc.get_job()
if level == 8 then
if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
--dchat("SET VARIABLE JOB 3")
job = 3
end
if number(1,3) == 1 then
d.setf("fix30333", 1)
d.notice("Az sonra dokuzunca kata ışınlanacaksınız.")
server_timer("Jp_9",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_9.txt")
item.remove()
else
say("Yanlış anahtardı. Doğru anahtarı bulun!")
item.remove()
end
end
end
when Jp_9.server_timer begin --Jump Level 9
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.NpcVnum_level_9
d.setf("level",9)
local cord = set.base_cord
local pos = set.Position_level_9
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Kuzeyli Ejderha Sütunu'nu yok edin!")
d.spawn_mob(v,849,655)
end
end
when Jp_Boss.server_timer begin --Jump Level BossZone
if d.select(get_server_timer_arg()) then
local set = snow_dungeon.get_settings()
local v = set.BossVnum
d.setf("level",10)
local cord = set.base_cord
local pos = set.Position_level_10
d.jump_all((cord[1] + pos[1]), (cord[2] + pos[2]))
d.notice("Ayazın ve buzun kralı Nemere'yi mağlup edin.")
end
end
when kill begin
if snow_dungeon.is_nemeres_dungeon() == true then
local set = snow_dungeon.get_settings()
local next_jump_time = set.NextJumpTime
local level = d.getf("level")
local stone_level_6 = set.MobVnum_level_6
local stone_level_7 = set.MobVnum_level_7
local stone_level_9 = set.NpcVnum_level_9
local boss_vnum = set.BossVnum
local wait_time = set.WaitBeforOutAllOnExit
local mobvnum = npc.get_race()
--dchat("nemeres_wait_dungeon MobVnum = "..mobvnum.."")
if level == 2 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,50) then
local v = set.key_level_2
game.drop_item(v,1)
elseif level == 5 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,20) then
snow_dungeon._DropKeyOnLevel5()
elseif level == 6 and mobvnum == stone_level_6 then
d.notice("Az sonra yedinci kata ışınlanacaksınız.")
--d.notice("")
server_timer("Jp_7",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.regen_file("data/dungeon/ice_dungeon/zone_7.txt") --Szel
local v_MQv = set.MobVnum_level_7
local c = set.SzelCords_level_7
local n = number(1,table.getn(c))
d.spawn_mob(v_MQv, c[n][1], c[n][2])
elseif level == 7 and mobvnum == stone_level_7 then
d.notice("Az sonra sekizinci kata ışınlanacaksınız.")
--d.notice("")
server_timer("Jp_8",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.set_regen_file("data/dungeon/ice_dungeon/zone_8.txt")
elseif level == 8 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,50) then
local v = set.Key_on_level_8
game.drop_item(v,1)
elseif level == 9 and mobvnum == stone_level_9 then
--d.notice("Sonraki seviyeye geçiyorsunuz ve "..mob_name(stone_level_9).." mağlup edildi.")
--server_timer("Jp_Boss",next_jump_time,d.get_map_index())
d.clear_regen()
d.kill_all()
d.spawn_mob_dir(20397, 849,670,1)
--d.regen_file("data/dungeon/ice_dungeon/zone_boss.txt")
--local v = set.BossVnumGroup
--d.spawn_group(v, 928, 335, 5 ,1, 1) -- (Input from SRC: argument: vnum,x,y,radius,aggressive,count)
elseif level == 10 and mobvnum == boss_vnum then
game.drop_item_with_ownership("50034",1)
d.clear_regen()
d.kill_all()
d.notice("Nemere mağlup edildi!")
d.notice("Bir dakika içerisinde Nemere Gözlemevi'nden dışarı ")
d.notice("ışınlanacaksınız.")
notice_all("Nemere "..pc.get_name().." tarafından yok edildi.")
server_timer("Jp_OutAll",wait_time,d.get_map_index())
end
end
end
when Jp_OutAll.server_timer begin --Jump Out Bye bye ;D
if d.select(get_server_timer_arg()) then
snow_dungeon._ExitAll()
end
end
function _ExitAll()
d.exit_all()
end
end
end