Cerere quest nemere/razador

Închis
Avatar utilizator
uzzyadelin
Nivel 1

Nivel 1
Mesaje: 77
Membru din: 21 Dec 2014, 14:09
Server: Metin2
Regat: Jinno
Aprecieri: 7  
Mulţumiri: 2  
Medalii

Imi poate da cineva quest pentru blazing purgatory/ turnul lui nemer
Avatar utilizator
Bughy
Ţepar / Untrusted User

Ţepar / Untrusted User
Mesaje: 431
Membru din: 10 Apr 2018, 22:33
Server: Toate =))
Regat: Jinno
Aprecieri: 62  
Mulţumiri: 51  
 Contact:
Medalii

Turnul lui nemere:
schimba snow_dungeon_settings.map_index cu indexul mapei tale

Cod: Selectaţi tot

--[[
-- Turnul lui Nemere
-- lvl 100
-- Copyright CZymos/Risan, Modificat de Ra.
-- Need GameRevision: 40250
-- INFO: Aveti nevoie de un Ninja si un Saman pentru a intra in turn.
--]]
quest snow_dungeon begin
state start begin
    when 9010.chat."Spawn Statuie" with snow_dungeon.is_nemeres_dungeon() == true begin
        d.purge()
        d.spawn_mob_dir(20397, 173,262,1)
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Jump level 9" with snow_dungeon.is_nemeres_dungeon() == true  begin
        local set = snow_dungeon.get_settings()
        d.notice("Der Richtige Schlüssel wurde gefunden, in wenigen Sekunden geht es in den nächsten Stock.")
        server_timer("Jp_9",6,d.get_map_index())
        d.clear_regen()
        d.kill_all()
        d.regen_file("data/dungeon/ice_dungeon/zone_9.txt")
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Jump level 10" with snow_dungeon.is_nemeres_dungeon() == true  begin
        local set = snow_dungeon.get_settings()
        server_timer("Jp_Boss",3,d.get_map_index())
        d.clear_regen()
        d.kill_all()
        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)
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Spawn Boss" with snow_dungeon.is_nemeres_dungeon() == true  begin
        local set = snow_dungeon.get_settings()
        local v = set.BossVnumGroup
        d.spawn_group(v, 928, 335, 5 ,1, 1) --  (INFO from SRC: argument: vnum,x,y,radius,aggressive,count)
    end
    when 9010.chat."TESTSERVER: SnowD Ending" with snow_dungeon.is_nemeres_dungeon() == true  begin
        server_timer("Jp_OutAll",5,d.get_map_index())
        say("done")
    end
    -- when 30331.use begin --key_level_2
        -- LIB_writelog("{"..pc.get_local_x()..","..pc.get_local_y().."}",3,"snowcordis.txt")
        -- d.spawn_mob(20399, pc.get_local_x(), pc.get_local_y())
        -- chat("write north star coordinates")
    -- end
    when 9010.chat."TESTSERVER: SnowD Spawn create Cords Test level 5" with snow_dungeon.is_nemeres_dungeon() == true  begin
        snow_dungeon._Create_Stones_level5()
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Create Key level 5" with snow_dungeon.is_nemeres_dungeon() == true  begin
        snow_dungeon._DropKeyOnLevel5()
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Get cord from Level" with snow_dungeon.is_nemeres_dungeon() == true begin
        local set = snow_dungeon.get_settings()
        local warp_to_level = set.Position_level_1
        local level = 2
        say("old: x: "..warp_to_level[1].." y:"..warp_to_level[2].."")
        local warp_to_level = set. _G[ "Position_level_"..level ]
        say("new: x: "..warp_to_level[1].." y:"..warp_to_level[2].."")
        --DONT WORKS!
    end
    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,4321,1667}    --Mapindex, Exit Position (Eisland)
        snow_dungeon_settings.need_level = 100                      --Ab wann ist der Dungeon betretbar.
        snow_dungeon_settings.need_level_group = 100                --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 = 45                --Welchen intervall die Level und Missionen geprüft werden sollen. (Empfohlen 45)
        snow_dungeon_settings.wait_duration = 24              --Ab wann der Dungeon wieder betretbar ist (PartyLeader)
        snow_dungeon_settings.maxlife_time_on_dungeon = 60*60*1 --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.IsNewGameRevision = true              --Need GameRevision 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
    when 20395.chat."Alătură-te din nou grupei" with (party.is_party() and d.find(party.getf("ice_dungeon_map_index"))) begin
        local set = snow_dungeon.get_settings()
        local n = party.getf("ice_dungeon_map_index")
        local cord = set.base_cord
        local level = d.getf_from_map_index("level", n)
        --say("News Dungeon Level your group: "..level.."")
        if level == 0 then
            say_npc_name()
            say("Grupul tău a terminat deja dungeonul.")
            return
        end
        if pc.getqf("out_party_time") < get_global_time() then
            say_npc()
            say("")
            say("Ai mai mult de "..math.ceil(set.DurationMaxOnReJoinGroup  /60) .." Minute")
            say("Nu mai poţi intra acum!")
            say(" ")
            return
        end
        if n == 0 then
            setskin(NOWINDOW)
            return
        else
            say_npc()
            say("")
            say("Vrei să te alături din nou grupei?")
            if select("Da","Nu") == 1 then
                local warp_to_level = set.Position_level_1
                local level = d.getf_from_map_index("level", n)
                if level >= 1 and level <= 10 then
                    if level == 1 then      warp_to_level = set.Position_level_1
                    elseif level == 2 then  warp_to_level = set.Position_level_2
                    elseif level == 3 then  warp_to_level = set.Position_level_3
                    elseif level == 4 then  warp_to_level = set.Position_level_4
                    elseif level == 5 then  warp_to_level = set.Position_level_5
                    elseif level == 6 then  warp_to_level = set.Position_level_6
                    elseif level == 7 then  warp_to_level = set.Position_level_7
                    elseif level == 8 then  warp_to_level = set.Position_level_8
                    elseif level == 9 then  warp_to_level = set.Position_level_9
                    elseif level == 10 then warp_to_level = set.Position_level_10
                    end
                    pc.warp((cord[1] + warp_to_level[1])*100,(cord[2] + warp_to_level[2])*100,n)
                else
                    return
                end
            end
        end
    end
     
    when 20395.chat."Turnul lui Nemere" begin
        local set = snow_dungeon.get_settings()
        local need_level = set.need_level
        say_npc()
        say("")
        say("Esti sigur ca vrei sa intri ")
        say("in Turnul lui Nemere?")
        if select("Da! Vrem sa intram. "," Nu, e prea frig acolo ...") == 2 then
            return
        end
        if (pc.is_gm() and pc.getf("snow_dungeon","duration") >= get_global_time()) then
            say("Your are GameMaster, remove the duration?")
            if select("Yes","No") == 1 then
                pc.setf("snow_dungeon","duration",0)
                return
            end
        end
        if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
            say("TestServer Mode is enable.")
            say("Join now")
            timer("make_dungeon",3)
            return
        end
        if not party.is_leader() then
            say_npc()
            say("Iti apreciez curajul insa singur ")
            say("nu poti intra in Turnul lui Nemere.")
            say("Strange un grup puternic in care sa ai ")
            say("un Ninja si un Saman si intoarcete la mine")
            return
        end
        if pc.get_level() < need_level then
            say("Trebuie sa ai cel putin nivelul "..need_level.."")
            say("pentru a intra in Turnul lui Nemere.")
            return
        end
        if pc.getf("snow_dungeon","duration") >= get_global_time() then
            say_npc()
            say("Timpul de asteptare pentru a intra dinou in ")
            say("Turnul lui Nemere nu a expirat. ")
            say("Timp de asteptare: "..LIB_duration(pc.getf("snow_dungeon","duration") - get_global_time()).."")
            return
        end
        if snow_dungeon._CheckMembersLevel() == false then  
            return
        else
            timer("make_dungeon",2)
        end
    end
    when 20397.chat."Batalia Incepe" begin --Eisiger Löwe
        say_npc()
        say("")
        say("Esti sigur ca vrei sa incepi?")
        if select("Da","Nu, Poate mai tarziu") == 1 then
            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("Primii monstri au aparut. Omoarai pe toti pentru a trece la nivelul urmator.") 
            npc.purge()
            snow_dungeon._GetLastTime()
        end
        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()
        d.new_jump_party(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2]))
        --d.new_jump_all(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2]))
        snow_dungeon._ClearAlls()
        d.setf("party_leader_pid",party.get_leader_pid())
        party.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 = false
        local have_shaman = false
        for i = 1, table.getn(pids), 1 do
            q.begin_other_pc_block(pids[i])
            if pc.get_level() < need_level then
                table.insert(user_fail_level, table.getn(user_fail_level) +1, pc.get_name())
            end
            local job = pc.get_job()
            if job == 1 -- Ninja weiblich
            or job == 5 --Ninja männlich
            then
                have_ninja = true
            end
            if job == 3 -- Schamane weiblich
            or job == 7 --Schamane männlich
            then
                have_shaman = true
            end
            q.end_other_pc_block()
        end
        if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
            --dchat("TestServer Mode is enable.")
            return true
        end
        if have_ninja == false then
            say("Nu poti intra in acest dungeon fara un Ninja.")
            say("")
            return false
        end
        if have_shaman == false then
            say("Nu poti intra in acest dungeon fara un Saman.")
            say("")
            return false
        end
        if table.getn(user_fail_level) >= 1 then
            say_npc()
            say("")
            say("Cativa membri din grup ")
            say("nu au nivelul "..need_level..":")
            for x = 1, table.getn(user_fail_level), 1 do
                say(color(1,1,0), "    "..user_fail_level[x])
            end
            return false
        end
        if table.getn(user_fail_level) == 0 then
            return true
        end
    end
    when logout begin
        if snow_dungeon.is_nemeres_dungeon() == true then
        local set = snow_dungeon.get_settings()
        pc.setqf("out_party_time",get_global_time() + set.DurationMaxOnReJoinGroup)
        --snow_dungeon.unregister_name()
        end
    end
     
    when login begin
        if snow_dungeon.is_nemeres_dungeon() == true then
            local set = snow_dungeon.get_settings()
            local backk = set.outside_entry_pos
            pc.set_warp_location(backk[1], backk[2],backk[3])
            if d.getf("party_leader_pid") != party.get_leader_pid() then
                chat("nemeres_wait_dungeon #RAUS:#  Grupul tau nu se afla in acest dungeon.")
                chat("nemeres_wait_dungeon #RAUS:#debug -> "..d.getf("party_leader_pid").." != "..party.get_leader_pid().."")
                d.exit()
                return
            end
            if pc.get_level() < set.need_level_group then
                chat("nemeres_wait_dungeon #RAUS:#  My level is low")
                d.exit()
                return
            end
            --chat("Welcome to Nemeres waiting, you have "..math.ceil((d.getf("Start_Time")  - get_global_time()) /60) .." Minutes Time.")
            --notice("Kill all the monsters on this level to get to the next floor.")
            --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("Mai aveti "..math.ceil(t / 60).." Minute.")
            else
                d.notice("Mai aveti  "..t .." Secunde.")
            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("Timpul a expirat.")
            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 <= 0 then
                d.notice("Ati infrant toti monstrii de la nivelul 1, in cateva secunde ve-ti fi teleportati la nivelul 2.")
                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 <= 0 then
                d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
                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 <= 0 then
                d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
                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 <= 0 then
                local MobStonelvl6 = set.MobVnum_level_6
                d.notice("Ati infrant toti monstrii, "..mob_name(MobStonelvl6).." v-a aparea..")
                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 <= 0 then
                d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
                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("finds the right "..item_name(v).." to get to on.")
            d.notice("")
        end
    end
    when 30331.use with snow_dungeon.is_nemeres_dungeon() == true 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 job == 3 -- Schamane weiblich
            or job == 7 --Schamane männlich
            then
                if number(1,3) == 1 then --or d.count_monster() < 10 then
                    d.notice("Ati gasit cheia corecta, in cateva secunde veti fi teleportati la nivelul urmator.")
                    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("Aceasta este cheia gresita.")
                    item.remove()
                end
            else
                d.notice("Numai Samanii pot folosi aceasta cheie.")
                return
            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("Omorati toti monstrii si veti trece la nivelul urmator.")
        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("Omorati toti monstrii si veti trece la nivelul urmator..")
        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("Deschide sigiilile "..mob_name(v).." in ordinea corecta.")
            if set.IsNewGameRevision == true then
                d.notice("Cheia va dropa la monstrii ...")
            else
                d.notice("Cheia se va pune automat la tine in inventar...")
            end
            snow_dungeon._Create_Stones_level5()
        end
    end
     
    function _DropKeyOnLevel5()
        if number(1,1000) >= 666 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.IsNewGameRevision == 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.getnC)
            --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, in a few seconds it goes to the next floor.")
                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("Ai deschis ultima piatră. Te mai ţin aici.")
                            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
                            d.notice(""..search..". Ai deschis piatra, mişcă-te mai repede. Ai ".. stone_level5_count - search .." bucăţi.")
                            npc.purge()
                            item.remove()
                        end
                        d.setf("Stone_5_count",new)
                    else
                        chat("Aceasta este piatra corecta insa cheia este gresita.")
                        item.remove()
                    end
                else
                    chat("Aceasta nu este piatra corecta.")
                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("Ai distrus toti monstrii, acum distruge "..mob_name(v).."")
            d.notice("Numai Samanii il pot distruge.")
            --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("Ai distrus piatra metin cu succes, acum distruge "..mob_name(v)..".")
        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("Omoară monştrii cu "..item_name(v).."")
            d.notice("Numai Ninja şi Şaman pot înţelege limba acestui obiect.")
        end
    end
     
    when 30333.use with snow_dungeon.is_nemeres_dungeon() == true 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 job == 1 -- Ninja weiblich
            or job == 5 --Ninja männlich
            or job == 3 -- Schamane weiblich
            or job == 7 --Schamane männlich
            then
                if number(1,3) == 1 then
                    d.notice("Ai găsit cheia bună. Vei urca mai departe în câteva secunde.")
                    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
                    d.notice("Această cheie nu este corectă.")
                    item.remove()
                end
            else
                d.notice("Poţi folosii numai caracterele Şaman şi Ninja.")
                return
            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("Omoară "..mob_name(v).." ")
            d.notice("Se poate confrunta numai cu Saman si Ninja.")
            d.notice("")
            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("Omoara "..mob_name(v)..", regele ghetii si zapezii.")
        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_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,10)  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,15) then
                snow_dungeon._DropKeyOnLevel5()
            elseif level == 6 and mobvnum == stone_level_6 then
                d.notice(""..mob_name(stone_level_6).." este distrusă şi vei urca la nivelul următor.")
                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.getnC)
                d.spawn_mob(v_MQv, c[n][1], c[n][2])
            elseif level == 8 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,10) then
                local v = set.Key_on_level_8
                game.drop_item(v,1) 
            elseif level == 9 and mobvnum == stone_level_9 then
                d.notice(""..mob_name(stone_level_9).." este distrusă şi vei urca la nivelul următor.")
                server_timer("Jp_Boss",next_jump_time,d.get_map_index())
                d.clear_regen()
                d.kill_all()
                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
                d.clear_regen()
                d.kill_all()
                d.notice("Felicitări războinicilor curajoşi! L-ai omorât pe "..mob_name(boss_vnum).." . In "..wait_time.." secunde veti fi teleportati afara.")
				notice_all("Grupa lui "..pc.get_name().." l-a înfrânt pe Nemere!")
                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 
Blazing Purgatory:

Cod: Selectaţi tot

quest blazingpurgatory begin
    state start begin
      when 20394.chat."Fortareata Dragonului Rosu" with pc.get_map_index() == 62 begin
         say_title("Gardianul iadului")
         say("Zeul tuturor demonilor, Sung Mahi, s-a ridicat - sfarsitul umanitatii se apropie!")
         say("Puterile sale distrugatoare sunt inca slabite iar ochii sai inca vad in ceata.")
         say("Dar slujitorii acestuia nu vor avea odihna pana ce stapanul lor va reusi sa se")
         say("ridice contra umanitatii cu toate puterile sale.")
         say_reward("Esti pregatit sa il infrunti ?")
         if select("Da!","Nu") == 1 then
          if pc.get_level() >= 91 then
            pc.warp(776500,673200)
            else
            syschat("Nu esti destul de puternic. Revino cand ajungi la nivelul 91.")
          end
         else
         syschat("Revino cand esti pregatit")
         end      
      end
      
        when 20394.chat."Fortareata Dragonului Rosu" with pc.get_map_index() == 235 begin
            say_title("Gardianul iadului")
            say("Eu sunt paznicul grotei lui Razador,")
            say("zeul iadului, el ma tine sub sclavie")
            say("elibereazama si vei fi rasplatit")
            say("Ca sa'l poti distrugi trebuie sa-ti formezi")
            say("o echipa de luptatori curajosi")
            say("Voi fi alaturi de tine!")
            say("")
            wait()
            say_title("Gardianul Iadului")
            say("Razador are multi monstri sub sclavia lui,")
            say("ei vor fi mai greu de ucis daca esti singur,")
            say("dar daca ai o echpia va fi mult mai usor")
            say("Trebuie sa-ti zic ca el e foarte puternic")
            say("si drumul pana la el e foarte greu.")
            say("")
            wait()
            say_title("Gardianul Iadului")
            if pc.get_level() >= 91 then
                if party.is_party() or pc.is_gm()  then
                    if party.is_leader() or pc.is_gm() then
                        if pc.count_item(71095) > 0 or pc.is_gm() then
                            say_reward("Vrei sa intri sa'l distrugi pe Razador?")
                            if select("Da!","Nu") == 1 then
                                pc.remove_item(71095,1)
                                d.join(235)
                            end
                        else
                            say_reward("Ai nevoie de itemul!")
                            say_item_vnum(71095)
                        end
                    else
                        say_reward("Trebuie sa fi tu liderul grupului!")
                    end
                else
                    say_reward("Trebuie sa faci parte dintr-un grup!")
                end
            else
                say_reward("Trebuie sa ai nivelul 91!")
            end
        end

        when login with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 begin
            say("Sper ca vati pregatit")
            say("de lupta cu Razador, Succes!")
            say("")
            if party.is_party() then
                if party.is_leader() then
                    blazingpurgatory.start()
                end
            else
                if pc.is_gm() then
                    blazingpurgatory.start()
                end
            end
        end
        
        function start()
            d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_flamenpc.txt")
            d.setf("purgatory_gate_sequence",number(1,7))
            local sequence = {{1,2,3,4,5,6},{4,1,3,2,5,6},{2,5,3,1,4,6},{3,1,6,2,4,5},{5,3,2,4,6,1},{6,1,5,2,4,3},{6,3,5,3,1,4}}
            for i = 1, 6 do
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_gate_"..sequence[d.getf("purgatory_gate_sequence")][i]..".txt")
            end
            d.setf("acutal_round",0)
            d.setf("time", get_time()+60*60*1)
            server_timer("purgatorytime",3600,pc.get_map_index())
            server_loop_timer("purgatorytimenotice",300,pc.get_map_index()<= 2355000 )
            blazingpurgatory.NoticeTime()
        end            
        
        when purgatorytimenotice.server_timer begin
            if d.select(get_server_timer_arg()) then
                blazingpurgatory.NoticeTime()
            end
        end

        when purgatorytime.server_timer begin
            if d.select(get_server_timer_arg()) then
                d.notice("Ai la dispozitie!")
                d.exit_all()
            end
        end
        
        when 20385.click with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 and d.getf("block_altar") == 0 begin
            if d.getf("purgatory_level") == 7 then
                d.setf("block_altar",1)
                d.setf("actual_round",7)
                d.notice("[Fortareata Dragonului Rosu]Felicitari ai terminat de facut prima parte ,")
                d.notice("[Fortareata Dragonului Rosu]Lupta cu Razador va incepe esti pregatit!")
                timer("warp_to_boss",5)
            else
                    
                d.setf("purgatory_level",d.getf("purgatory_level")+1)
                blazingpurgatory.purge()
                blazingpurgatory.LoadStage()
                d.setf("block_altar",1)
                
                blazingpurgatory.NoticeTime()
                d.notice("[Fortareata Dragonului Rosu] O camera a fost deschisa !")
            end
        end

        when warp_to_boss.timer begin
            d.jump_all(8111,6864)
            d.notice("[Fortareata Dragonului Rosu]Razador")
            d.notice("[Fortareata Dragonului Rosu]Ma voi ridica din nou daca nu esti destul de puternic sa ma invingi!")
            d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_7.txt")
            blazingpurgatory.NoticeTime()
        end    
        
        when kill with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 begin
            if d.getf("actual_round") == 1 or d.getf("actual_round") == 3 then
                d.setf("kill_count_bp1",d.getf("kill_count_bp1") +1)
                if d.getf("kill_count_bp1") == d.getf("bp_kill_to_next") then
                    d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                    blazingpurgatory.purge()
                end
            elseif d.getf("actual_round") == 2 or d.getf("actual_round") == 5 then
                d.setf("kill_count_bp",d.getf("kill_count_bp") +1)
                if d.getf("kill_count_bp") == d.getf("kill_to_drop_key") then
                    game.drop_item_with_ownership(50084,50)
                    d.setf("kill_count_bp",0)
                end
            elseif d.getf("actual_round") == 4 and npc.get_race() == 6009 then
                if number(1,5) == 1 then
                    d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                    blazingpurgatory.purge()
                end
            elseif d.getf("actual_round") == 6 and npc.get_race() == 8034 then
                d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                blazingpurgatory.purge()    
            elseif d.getf("actual_round") == 7 and npc.get_race() == 6091 then
                d.notice("[Fortareata Dragonului Rosu]Felicitari lai invins pe Razador!")
                notice_all("Cu o ultimã suflare de speranþã liderul "..pc.get_name().."")
              notice_all("Urmat de rãzboinici lui de încredere, au reuºit sã-l învingã pe Razador.")   
            local time = get_time()
            d.setqf2("blazingpurgatory","daily_razador_last_kill", time)
            d.setqf2("blazingpurgatory","daily_razador", 1)            
                d.clear_regen()
                d.kill_all()
                d.spawn_mob(9012, 64, 142)
            end
        end

      when 20081.take with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 begin
            if item.get_vnum() == 50084 then
                if d.getf("actual_round") == 2 then
                    pc.remove_item(item.get_vnum(),1)
                    if number(1,8) == 1 then
                        npc.purge()
                        d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                        blazingpurgatory.purge()
                    else
                        syschat("Aceasta cheie nu a fost buna adu alta.!")
                    end
                elseif d.getf("actual_round") == 5 then
                    local sequence = {{1,2,3,4,5,5},{4,3,2,1,5,5},{4,5,3,1,2,2},{5,3,4,2,1,1},{5,1,3,4,2,2}}
                    if blazingpurgatory.GetPillarID() == sequence[d.getf("sequence")][d.getf("pillarcount")] then
                        pc.remove_item(item.get_vnum(),1)
                        npc.purge()
                        d.setf("pillarcount", d.getf("pillarcount")+1)
                        if d.getf("pillarcount") == 6 then
                            d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                            blazingpurgatory.purge()
                        else
                            d.notice("[Fortareata Dragonului Rosu]Mai ai "..6-d.getf("pillarcount").." sigili de deschis!")
                        end
                    elseif blazingpurgatory.GetPillarID() == false then
                        syschat("Dute mai aproape si trage piatra cheie!")
                    elseif blazingpurgatory.GetPillarID() != sequence[d.getf("sequence")][d.getf("pillarcount")] then
                        pc.remove_item(item.get_vnum(),1)
                        syschat("[Fortareata Dragonului Rosu]Nu ai pus piatra cheie pe sigiliul corect, cautal!")
                    end
                end
            end
        end
                    
        function LoadStage()
            if d.getf("actual_round") == 1 then -- Alle Monster tötenw
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_1.txt")
                d.setf("bp_kill_to_next",100)
                d.setf("kill_count_bp1",0)
            elseif d.getf("actual_round") == 2 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_2.txt")
                d.setf("kill_to_drop_key",50)
                d.spawn_mob(20081,195,352)
            elseif d.getf("actual_round") == 3 then
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_3.txt")
                d.setf("bp_kill_to_next",100)
                d.setf("kill_count_bp1",0)
            elseif d.getf("actual_round") == 4 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_4.txt")
            elseif d.getf("actual_round") == 5 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_5.txt")
                local sequence = {{1,2,3,4,5},{4,3,2,1,5},{4,5,3,1,2},{5,3,4,2,1},{5,1,3,4,2}}
                local n = number(1,5)
                local coords = {{502,354},{517,354},{487,354},{502,339},{502,369}}
                for i = 1, 5 do
                    d.spawn_mob(20081, coords[i][1],coords[i][2])
                end
                d.setf("pillarcount", 1)
                d.setf("sequence",n)
                d.setf("kill_to_drop_key",100)
            elseif d.getf("actual_round") == 6 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_6.txt")
                d.spawn_mob(8034,507,509)
            end
        end    

        function purge()
            d.setf("block_altar",0)
            d.clear_regen()
            d.kill_all()
            blazingpurgatory.LoadGates()
            d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_flamenpc.txt")
            if d.getf("purgatory_level") == 6 then
                d.setf("purgatory_level",7)
            end
        end        

        function LoadGates()
            local sequence = {{1,2,3,4,5,6},{4,1,3,2,5,6},{2,5,3,1,4,6},{3,1,6,2,4,5},{5,3,2,4,6,1},{6,1,5,2,4,3},{6,3,5,3,1,4}}
            for i = 1, 6-d.getf("purgatory_level") do
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_gate_"..sequence[d.getf("purgatory_gate_sequence")][i]..".txt")
            end
            d.setf("actual_round",sequence[d.getf("purgatory_gate_sequence")][7-d.getf("purgatory_level")])
        end        
        
        function NoticeTime()
            local secondsLeft = (d.getf("time") - get_time())
            local minutesLeft = math.ceil(secondsLeft / 60)
            d.notice("[Fortareata Dragonului Rosu]Timp Ramas: "..minutesLeft.." Minute!")
        end

        function GetPillarID()
            if pc.get_local_x() >= 502 - 5 and pc.get_local_x() <= 502 + 5 and pc.get_local_y() >= 354 - 5 and pc.get_local_y() <= 354 + 5 then
                return 1
            elseif pc.get_local_x() >= 517 - 5 and pc.get_local_x() <= 517 + 5 and pc.get_local_y() >= 354 - 5 and pc.get_local_y() <= 354 + 5 then
                return 2
            elseif pc.get_local_x() >= 487 - 5 and pc.get_local_x() <= 487 + 5 and pc.get_local_y() >= 354 - 5 and pc.get_local_y() <= 354 + 5 then
                return 3
            elseif pc.get_local_x() >= 502 - 5 and pc.get_local_x() <= 502 + 5 and pc.get_local_y() >= 339 - 5 and pc.get_local_y() <= 339 + 5 then
                return 4
            elseif pc.get_local_x() >= 502 - 5 and pc.get_local_x() <= 502 + 5 and pc.get_local_y() >= 369 - 5 and pc.get_local_y() <= 369 + 5 then
                return 5
            else
                return false
            end
        end
    
    end
end
Pentru acest mesaj, Bughy for the post:
uzzyadelin
Imagine
Daca te-am ajutat lasa un like :) B-) :ymhug: ;)
Afișează semnătura
Avatar utilizator
uzzyadelin
Nivel 1

Nivel 1
Mesaje: 77
Membru din: 21 Dec 2014, 14:09
Server: Metin2
Regat: Jinno
Aprecieri: 7  
Mulţumiri: 2  
Medalii

Bughy scrie:Turnul lui nemere:
schimba snow_dungeon_settings.map_index cu indexul mapei tale

Cod: Selectaţi tot

--[[
-- Turnul lui Nemere
-- lvl 100
-- Copyright CZymos/Risan, Modificat de Ra.
-- Need GameRevision: 40250
-- INFO: Aveti nevoie de un Ninja si un Saman pentru a intra in turn.
--]]
quest snow_dungeon begin
state start begin
    when 9010.chat."Spawn Statuie" with snow_dungeon.is_nemeres_dungeon() == true begin
        d.purge()
        d.spawn_mob_dir(20397, 173,262,1)
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Jump level 9" with snow_dungeon.is_nemeres_dungeon() == true  begin
        local set = snow_dungeon.get_settings()
        d.notice("Der Richtige Schlüssel wurde gefunden, in wenigen Sekunden geht es in den nächsten Stock.")
        server_timer("Jp_9",6,d.get_map_index())
        d.clear_regen()
        d.kill_all()
        d.regen_file("data/dungeon/ice_dungeon/zone_9.txt")
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Jump level 10" with snow_dungeon.is_nemeres_dungeon() == true  begin
        local set = snow_dungeon.get_settings()
        server_timer("Jp_Boss",3,d.get_map_index())
        d.clear_regen()
        d.kill_all()
        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)
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Spawn Boss" with snow_dungeon.is_nemeres_dungeon() == true  begin
        local set = snow_dungeon.get_settings()
        local v = set.BossVnumGroup
        d.spawn_group(v, 928, 335, 5 ,1, 1) --  (INFO from SRC: argument: vnum,x,y,radius,aggressive,count)
    end
    when 9010.chat."TESTSERVER: SnowD Ending" with snow_dungeon.is_nemeres_dungeon() == true  begin
        server_timer("Jp_OutAll",5,d.get_map_index())
        say("done")
    end
    -- when 30331.use begin --key_level_2
        -- LIB_writelog("{"..pc.get_local_x()..","..pc.get_local_y().."}",3,"snowcordis.txt")
        -- d.spawn_mob(20399, pc.get_local_x(), pc.get_local_y())
        -- chat("write north star coordinates")
    -- end
    when 9010.chat."TESTSERVER: SnowD Spawn create Cords Test level 5" with snow_dungeon.is_nemeres_dungeon() == true  begin
        snow_dungeon._Create_Stones_level5()
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Create Key level 5" with snow_dungeon.is_nemeres_dungeon() == true  begin
        snow_dungeon._DropKeyOnLevel5()
        setskin(NOWINDOW)
    end
    when 9010.chat."TESTSERVER: SnowD Get cord from Level" with snow_dungeon.is_nemeres_dungeon() == true begin
        local set = snow_dungeon.get_settings()
        local warp_to_level = set.Position_level_1
        local level = 2
        say("old: x: "..warp_to_level[1].." y:"..warp_to_level[2].."")
        local warp_to_level = set. _G[ "Position_level_"..level ]
        say("new: x: "..warp_to_level[1].." y:"..warp_to_level[2].."")
        --DONT WORKS!
    end
    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,4321,1667}    --Mapindex, Exit Position (Eisland)
        snow_dungeon_settings.need_level = 100                      --Ab wann ist der Dungeon betretbar.
        snow_dungeon_settings.need_level_group = 100                --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 = 45                --Welchen intervall die Level und Missionen geprüft werden sollen. (Empfohlen 45)
        snow_dungeon_settings.wait_duration = 24              --Ab wann der Dungeon wieder betretbar ist (PartyLeader)
        snow_dungeon_settings.maxlife_time_on_dungeon = 60*60*1 --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.IsNewGameRevision = true              --Need GameRevision 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
    when 20395.chat."Alătură-te din nou grupei" with (party.is_party() and d.find(party.getf("ice_dungeon_map_index"))) begin
        local set = snow_dungeon.get_settings()
        local n = party.getf("ice_dungeon_map_index")
        local cord = set.base_cord
        local level = d.getf_from_map_index("level", n)
        --say("News Dungeon Level your group: "..level.."")
        if level == 0 then
            say_npc_name()
            say("Grupul tău a terminat deja dungeonul.")
            return
        end
        if pc.getqf("out_party_time") < get_global_time() then
            say_npc()
            say("")
            say("Ai mai mult de "..math.ceil(set.DurationMaxOnReJoinGroup  /60) .." Minute")
            say("Nu mai poţi intra acum!")
            say(" ")
            return
        end
        if n == 0 then
            setskin(NOWINDOW)
            return
        else
            say_npc()
            say("")
            say("Vrei să te alături din nou grupei?")
            if select("Da","Nu") == 1 then
                local warp_to_level = set.Position_level_1
                local level = d.getf_from_map_index("level", n)
                if level >= 1 and level <= 10 then
                    if level == 1 then      warp_to_level = set.Position_level_1
                    elseif level == 2 then  warp_to_level = set.Position_level_2
                    elseif level == 3 then  warp_to_level = set.Position_level_3
                    elseif level == 4 then  warp_to_level = set.Position_level_4
                    elseif level == 5 then  warp_to_level = set.Position_level_5
                    elseif level == 6 then  warp_to_level = set.Position_level_6
                    elseif level == 7 then  warp_to_level = set.Position_level_7
                    elseif level == 8 then  warp_to_level = set.Position_level_8
                    elseif level == 9 then  warp_to_level = set.Position_level_9
                    elseif level == 10 then warp_to_level = set.Position_level_10
                    end
                    pc.warp((cord[1] + warp_to_level[1])*100,(cord[2] + warp_to_level[2])*100,n)
                else
                    return
                end
            end
        end
    end
     
    when 20395.chat."Turnul lui Nemere" begin
        local set = snow_dungeon.get_settings()
        local need_level = set.need_level
        say_npc()
        say("")
        say("Esti sigur ca vrei sa intri ")
        say("in Turnul lui Nemere?")
        if select("Da! Vrem sa intram. "," Nu, e prea frig acolo ...") == 2 then
            return
        end
        if (pc.is_gm() and pc.getf("snow_dungeon","duration") >= get_global_time()) then
            say("Your are GameMaster, remove the duration?")
            if select("Yes","No") == 1 then
                pc.setf("snow_dungeon","duration",0)
                return
            end
        end
        if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
            say("TestServer Mode is enable.")
            say("Join now")
            timer("make_dungeon",3)
            return
        end
        if not party.is_leader() then
            say_npc()
            say("Iti apreciez curajul insa singur ")
            say("nu poti intra in Turnul lui Nemere.")
            say("Strange un grup puternic in care sa ai ")
            say("un Ninja si un Saman si intoarcete la mine")
            return
        end
        if pc.get_level() < need_level then
            say("Trebuie sa ai cel putin nivelul "..need_level.."")
            say("pentru a intra in Turnul lui Nemere.")
            return
        end
        if pc.getf("snow_dungeon","duration") >= get_global_time() then
            say_npc()
            say("Timpul de asteptare pentru a intra dinou in ")
            say("Turnul lui Nemere nu a expirat. ")
            say("Timp de asteptare: "..LIB_duration(pc.getf("snow_dungeon","duration") - get_global_time()).."")
            return
        end
        if snow_dungeon._CheckMembersLevel() == false then  
            return
        else
            timer("make_dungeon",2)
        end
    end
    when 20397.chat."Batalia Incepe" begin --Eisiger Löwe
        say_npc()
        say("")
        say("Esti sigur ca vrei sa incepi?")
        if select("Da","Nu, Poate mai tarziu") == 1 then
            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("Primii monstri au aparut. Omoarai pe toti pentru a trece la nivelul urmator.") 
            npc.purge()
            snow_dungeon._GetLastTime()
        end
        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()
        d.new_jump_party(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2]))
        --d.new_jump_all(set.map_index,(cord[1] + start_pos[1]), (cord[2] + start_pos[2]))
        snow_dungeon._ClearAlls()
        d.setf("party_leader_pid",party.get_leader_pid())
        party.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 = false
        local have_shaman = false
        for i = 1, table.getn(pids), 1 do
            q.begin_other_pc_block(pids[i])
            if pc.get_level() < need_level then
                table.insert(user_fail_level, table.getn(user_fail_level) +1, pc.get_name())
            end
            local job = pc.get_job()
            if job == 1 -- Ninja weiblich
            or job == 5 --Ninja männlich
            then
                have_ninja = true
            end
            if job == 3 -- Schamane weiblich
            or job == 7 --Schamane männlich
            then
                have_shaman = true
            end
            q.end_other_pc_block()
        end
        if (is_test_server() and snow_dungeon.is_TestServerMode() == true ) then
            --dchat("TestServer Mode is enable.")
            return true
        end
        if have_ninja == false then
            say("Nu poti intra in acest dungeon fara un Ninja.")
            say("")
            return false
        end
        if have_shaman == false then
            say("Nu poti intra in acest dungeon fara un Saman.")
            say("")
            return false
        end
        if table.getn(user_fail_level) >= 1 then
            say_npc()
            say("")
            say("Cativa membri din grup ")
            say("nu au nivelul "..need_level..":")
            for x = 1, table.getn(user_fail_level), 1 do
                say(color(1,1,0), "    "..user_fail_level[x])
            end
            return false
        end
        if table.getn(user_fail_level) == 0 then
            return true
        end
    end
    when logout begin
        if snow_dungeon.is_nemeres_dungeon() == true then
        local set = snow_dungeon.get_settings()
        pc.setqf("out_party_time",get_global_time() + set.DurationMaxOnReJoinGroup)
        --snow_dungeon.unregister_name()
        end
    end
     
    when login begin
        if snow_dungeon.is_nemeres_dungeon() == true then
            local set = snow_dungeon.get_settings()
            local backk = set.outside_entry_pos
            pc.set_warp_location(backk[1], backk[2],backk[3])
            if d.getf("party_leader_pid") != party.get_leader_pid() then
                chat("nemeres_wait_dungeon #RAUS:#  Grupul tau nu se afla in acest dungeon.")
                chat("nemeres_wait_dungeon #RAUS:#debug -> "..d.getf("party_leader_pid").." != "..party.get_leader_pid().."")
                d.exit()
                return
            end
            if pc.get_level() < set.need_level_group then
                chat("nemeres_wait_dungeon #RAUS:#  My level is low")
                d.exit()
                return
            end
            --chat("Welcome to Nemeres waiting, you have "..math.ceil((d.getf("Start_Time")  - get_global_time()) /60) .." Minutes Time.")
            --notice("Kill all the monsters on this level to get to the next floor.")
            --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("Mai aveti "..math.ceil(t / 60).." Minute.")
            else
                d.notice("Mai aveti  "..t .." Secunde.")
            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("Timpul a expirat.")
            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 <= 0 then
                d.notice("Ati infrant toti monstrii de la nivelul 1, in cateva secunde ve-ti fi teleportati la nivelul 2.")
                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 <= 0 then
                d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
                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 <= 0 then
                d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
                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 <= 0 then
                local MobStonelvl6 = set.MobVnum_level_6
                d.notice("Ati infrant toti monstrii, "..mob_name(MobStonelvl6).." v-a aparea..")
                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 <= 0 then
                d.notice("Ati infrant toti monstrii, in cateva secunde ve-ti fi teleportati la nivelul urmator.")
                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("finds the right "..item_name(v).." to get to on.")
            d.notice("")
        end
    end
    when 30331.use with snow_dungeon.is_nemeres_dungeon() == true 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 job == 3 -- Schamane weiblich
            or job == 7 --Schamane männlich
            then
                if number(1,3) == 1 then --or d.count_monster() < 10 then
                    d.notice("Ati gasit cheia corecta, in cateva secunde veti fi teleportati la nivelul urmator.")
                    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("Aceasta este cheia gresita.")
                    item.remove()
                end
            else
                d.notice("Numai Samanii pot folosi aceasta cheie.")
                return
            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("Omorati toti monstrii si veti trece la nivelul urmator.")
        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("Omorati toti monstrii si veti trece la nivelul urmator..")
        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("Deschide sigiilile "..mob_name(v).." in ordinea corecta.")
            if set.IsNewGameRevision == true then
                d.notice("Cheia va dropa la monstrii ...")
            else
                d.notice("Cheia se va pune automat la tine in inventar...")
            end
            snow_dungeon._Create_Stones_level5()
        end
    end
     
    function _DropKeyOnLevel5()
        if number(1,1000) >= 666 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.IsNewGameRevision == 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.getnC)
            --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, in a few seconds it goes to the next floor.")
                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("Ai deschis ultima piatră. Te mai ţin aici.")
                            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
                            d.notice(""..search..". Ai deschis piatra, mişcă-te mai repede. Ai ".. stone_level5_count - search .." bucăţi.")
                            npc.purge()
                            item.remove()
                        end
                        d.setf("Stone_5_count",new)
                    else
                        chat("Aceasta este piatra corecta insa cheia este gresita.")
                        item.remove()
                    end
                else
                    chat("Aceasta nu este piatra corecta.")
                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("Ai distrus toti monstrii, acum distruge "..mob_name(v).."")
            d.notice("Numai Samanii il pot distruge.")
            --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("Ai distrus piatra metin cu succes, acum distruge "..mob_name(v)..".")
        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("Omoară monştrii cu "..item_name(v).."")
            d.notice("Numai Ninja şi Şaman pot înţelege limba acestui obiect.")
        end
    end
     
    when 30333.use with snow_dungeon.is_nemeres_dungeon() == true 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 job == 1 -- Ninja weiblich
            or job == 5 --Ninja männlich
            or job == 3 -- Schamane weiblich
            or job == 7 --Schamane männlich
            then
                if number(1,3) == 1 then
                    d.notice("Ai găsit cheia bună. Vei urca mai departe în câteva secunde.")
                    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
                    d.notice("Această cheie nu este corectă.")
                    item.remove()
                end
            else
                d.notice("Poţi folosii numai caracterele Şaman şi Ninja.")
                return
            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("Omoară "..mob_name(v).." ")
            d.notice("Se poate confrunta numai cu Saman si Ninja.")
            d.notice("")
            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("Omoara "..mob_name(v)..", regele ghetii si zapezii.")
        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_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,10)  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,15) then
                snow_dungeon._DropKeyOnLevel5()
            elseif level == 6 and mobvnum == stone_level_6 then
                d.notice(""..mob_name(stone_level_6).." este distrusă şi vei urca la nivelul următor.")
                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.getnC)
                d.spawn_mob(v_MQv, c[n][1], c[n][2])
            elseif level == 8 and mobvnum >= 6101 and mobvnum <= 6108 and 1 == number(1,10) then
                local v = set.Key_on_level_8
                game.drop_item(v,1) 
            elseif level == 9 and mobvnum == stone_level_9 then
                d.notice(""..mob_name(stone_level_9).." este distrusă şi vei urca la nivelul următor.")
                server_timer("Jp_Boss",next_jump_time,d.get_map_index())
                d.clear_regen()
                d.kill_all()
                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
                d.clear_regen()
                d.kill_all()
                d.notice("Felicitări războinicilor curajoşi! L-ai omorât pe "..mob_name(boss_vnum).." . In "..wait_time.." secunde veti fi teleportati afara.")
				notice_all("Grupa lui "..pc.get_name().." l-a înfrânt pe Nemere!")
                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 
Blazing Purgatory:

Cod: Selectaţi tot

quest blazingpurgatory begin
    state start begin
      when 20394.chat."Fortareata Dragonului Rosu" with pc.get_map_index() == 62 begin
         say_title("Gardianul iadului")
         say("Zeul tuturor demonilor, Sung Mahi, s-a ridicat - sfarsitul umanitatii se apropie!")
         say("Puterile sale distrugatoare sunt inca slabite iar ochii sai inca vad in ceata.")
         say("Dar slujitorii acestuia nu vor avea odihna pana ce stapanul lor va reusi sa se")
         say("ridice contra umanitatii cu toate puterile sale.")
         say_reward("Esti pregatit sa il infrunti ?")
         if select("Da!","Nu") == 1 then
          if pc.get_level() >= 91 then
            pc.warp(776500,673200)
            else
            syschat("Nu esti destul de puternic. Revino cand ajungi la nivelul 91.")
          end
         else
         syschat("Revino cand esti pregatit")
         end      
      end
      
        when 20394.chat."Fortareata Dragonului Rosu" with pc.get_map_index() == 235 begin
            say_title("Gardianul iadului")
            say("Eu sunt paznicul grotei lui Razador,")
            say("zeul iadului, el ma tine sub sclavie")
            say("elibereazama si vei fi rasplatit")
            say("Ca sa'l poti distrugi trebuie sa-ti formezi")
            say("o echipa de luptatori curajosi")
            say("Voi fi alaturi de tine!")
            say("")
            wait()
            say_title("Gardianul Iadului")
            say("Razador are multi monstri sub sclavia lui,")
            say("ei vor fi mai greu de ucis daca esti singur,")
            say("dar daca ai o echpia va fi mult mai usor")
            say("Trebuie sa-ti zic ca el e foarte puternic")
            say("si drumul pana la el e foarte greu.")
            say("")
            wait()
            say_title("Gardianul Iadului")
            if pc.get_level() >= 91 then
                if party.is_party() or pc.is_gm()  then
                    if party.is_leader() or pc.is_gm() then
                        if pc.count_item(71095) > 0 or pc.is_gm() then
                            say_reward("Vrei sa intri sa'l distrugi pe Razador?")
                            if select("Da!","Nu") == 1 then
                                pc.remove_item(71095,1)
                                d.join(235)
                            end
                        else
                            say_reward("Ai nevoie de itemul!")
                            say_item_vnum(71095)
                        end
                    else
                        say_reward("Trebuie sa fi tu liderul grupului!")
                    end
                else
                    say_reward("Trebuie sa faci parte dintr-un grup!")
                end
            else
                say_reward("Trebuie sa ai nivelul 91!")
            end
        end

        when login with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 begin
            say("Sper ca vati pregatit")
            say("de lupta cu Razador, Succes!")
            say("")
            if party.is_party() then
                if party.is_leader() then
                    blazingpurgatory.start()
                end
            else
                if pc.is_gm() then
                    blazingpurgatory.start()
                end
            end
        end
        
        function start()
            d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_flamenpc.txt")
            d.setf("purgatory_gate_sequence",number(1,7))
            local sequence = {{1,2,3,4,5,6},{4,1,3,2,5,6},{2,5,3,1,4,6},{3,1,6,2,4,5},{5,3,2,4,6,1},{6,1,5,2,4,3},{6,3,5,3,1,4}}
            for i = 1, 6 do
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_gate_"..sequence[d.getf("purgatory_gate_sequence")][i]..".txt")
            end
            d.setf("acutal_round",0)
            d.setf("time", get_time()+60*60*1)
            server_timer("purgatorytime",3600,pc.get_map_index())
            server_loop_timer("purgatorytimenotice",300,pc.get_map_index()<= 2355000 )
            blazingpurgatory.NoticeTime()
        end            
        
        when purgatorytimenotice.server_timer begin
            if d.select(get_server_timer_arg()) then
                blazingpurgatory.NoticeTime()
            end
        end

        when purgatorytime.server_timer begin
            if d.select(get_server_timer_arg()) then
                d.notice("Ai la dispozitie!")
                d.exit_all()
            end
        end
        
        when 20385.click with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 and d.getf("block_altar") == 0 begin
            if d.getf("purgatory_level") == 7 then
                d.setf("block_altar",1)
                d.setf("actual_round",7)
                d.notice("[Fortareata Dragonului Rosu]Felicitari ai terminat de facut prima parte ,")
                d.notice("[Fortareata Dragonului Rosu]Lupta cu Razador va incepe esti pregatit!")
                timer("warp_to_boss",5)
            else
                    
                d.setf("purgatory_level",d.getf("purgatory_level")+1)
                blazingpurgatory.purge()
                blazingpurgatory.LoadStage()
                d.setf("block_altar",1)
                
                blazingpurgatory.NoticeTime()
                d.notice("[Fortareata Dragonului Rosu] O camera a fost deschisa !")
            end
        end

        when warp_to_boss.timer begin
            d.jump_all(8111,6864)
            d.notice("[Fortareata Dragonului Rosu]Razador")
            d.notice("[Fortareata Dragonului Rosu]Ma voi ridica din nou daca nu esti destul de puternic sa ma invingi!")
            d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_7.txt")
            blazingpurgatory.NoticeTime()
        end    
        
        when kill with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 begin
            if d.getf("actual_round") == 1 or d.getf("actual_round") == 3 then
                d.setf("kill_count_bp1",d.getf("kill_count_bp1") +1)
                if d.getf("kill_count_bp1") == d.getf("bp_kill_to_next") then
                    d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                    blazingpurgatory.purge()
                end
            elseif d.getf("actual_round") == 2 or d.getf("actual_round") == 5 then
                d.setf("kill_count_bp",d.getf("kill_count_bp") +1)
                if d.getf("kill_count_bp") == d.getf("kill_to_drop_key") then
                    game.drop_item_with_ownership(50084,50)
                    d.setf("kill_count_bp",0)
                end
            elseif d.getf("actual_round") == 4 and npc.get_race() == 6009 then
                if number(1,5) == 1 then
                    d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                    blazingpurgatory.purge()
                end
            elseif d.getf("actual_round") == 6 and npc.get_race() == 8034 then
                d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                blazingpurgatory.purge()    
            elseif d.getf("actual_round") == 7 and npc.get_race() == 6091 then
                d.notice("[Fortareata Dragonului Rosu]Felicitari lai invins pe Razador!")
                notice_all("Cu o ultimã suflare de speranþã liderul "..pc.get_name().."")
              notice_all("Urmat de rãzboinici lui de încredere, au reuºit sã-l învingã pe Razador.")   
            local time = get_time()
            d.setqf2("blazingpurgatory","daily_razador_last_kill", time)
            d.setqf2("blazingpurgatory","daily_razador", 1)            
                d.clear_regen()
                d.kill_all()
                d.spawn_mob(9012, 64, 142)
            end
        end

      when 20081.take with pc.get_map_index() >= 2350000 and pc.get_map_index() <= 2355000 begin
            if item.get_vnum() == 50084 then
                if d.getf("actual_round") == 2 then
                    pc.remove_item(item.get_vnum(),1)
                    if number(1,8) == 1 then
                        npc.purge()
                        d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                        blazingpurgatory.purge()
                    else
                        syschat("Aceasta cheie nu a fost buna adu alta.!")
                    end
                elseif d.getf("actual_round") == 5 then
                    local sequence = {{1,2,3,4,5,5},{4,3,2,1,5,5},{4,5,3,1,2,2},{5,3,4,2,1,1},{5,1,3,4,2,2}}
                    if blazingpurgatory.GetPillarID() == sequence[d.getf("sequence")][d.getf("pillarcount")] then
                        pc.remove_item(item.get_vnum(),1)
                        npc.purge()
                        d.setf("pillarcount", d.getf("pillarcount")+1)
                        if d.getf("pillarcount") == 6 then
                            d.notice("[Fortareata Dragonului Rosu] Revino la Altar pentru noua camera!")
                            blazingpurgatory.purge()
                        else
                            d.notice("[Fortareata Dragonului Rosu]Mai ai "..6-d.getf("pillarcount").." sigili de deschis!")
                        end
                    elseif blazingpurgatory.GetPillarID() == false then
                        syschat("Dute mai aproape si trage piatra cheie!")
                    elseif blazingpurgatory.GetPillarID() != sequence[d.getf("sequence")][d.getf("pillarcount")] then
                        pc.remove_item(item.get_vnum(),1)
                        syschat("[Fortareata Dragonului Rosu]Nu ai pus piatra cheie pe sigiliul corect, cautal!")
                    end
                end
            end
        end
                    
        function LoadStage()
            if d.getf("actual_round") == 1 then -- Alle Monster tötenw
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_1.txt")
                d.setf("bp_kill_to_next",100)
                d.setf("kill_count_bp1",0)
            elseif d.getf("actual_round") == 2 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_2.txt")
                d.setf("kill_to_drop_key",50)
                d.spawn_mob(20081,195,352)
            elseif d.getf("actual_round") == 3 then
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_3.txt")
                d.setf("bp_kill_to_next",100)
                d.setf("kill_count_bp1",0)
            elseif d.getf("actual_round") == 4 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_4.txt")
            elseif d.getf("actual_round") == 5 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_5.txt")
                local sequence = {{1,2,3,4,5},{4,3,2,1,5},{4,5,3,1,2},{5,3,4,2,1},{5,1,3,4,2}}
                local n = number(1,5)
                local coords = {{502,354},{517,354},{487,354},{502,339},{502,369}}
                for i = 1, 5 do
                    d.spawn_mob(20081, coords[i][1],coords[i][2])
                end
                d.setf("pillarcount", 1)
                d.setf("sequence",n)
                d.setf("kill_to_drop_key",100)
            elseif d.getf("actual_round") == 6 then
                d.set_regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_monster_6.txt")
                d.spawn_mob(8034,507,509)
            end
        end    

        function purge()
            d.setf("block_altar",0)
            d.clear_regen()
            d.kill_all()
            blazingpurgatory.LoadGates()
            d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_flamenpc.txt")
            if d.getf("purgatory_level") == 6 then
                d.setf("purgatory_level",7)
            end
        end        

        function LoadGates()
            local sequence = {{1,2,3,4,5,6},{4,1,3,2,5,6},{2,5,3,1,4,6},{3,1,6,2,4,5},{5,3,2,4,6,1},{6,1,5,2,4,3},{6,3,5,3,1,4}}
            for i = 1, 6-d.getf("purgatory_level") do
                d.regen_file("data/dungeon/blazingpurgatory/blazingpurgatory_gate_"..sequence[d.getf("purgatory_gate_sequence")][i]..".txt")
            end
            d.setf("actual_round",sequence[d.getf("purgatory_gate_sequence")][7-d.getf("purgatory_level")])
        end        
        
        function NoticeTime()
            local secondsLeft = (d.getf("time") - get_time())
            local minutesLeft = math.ceil(secondsLeft / 60)
            d.notice("[Fortareata Dragonului Rosu]Timp Ramas: "..minutesLeft.." Minute!")
        end

        function GetPillarID()
            if pc.get_local_x() >= 502 - 5 and pc.get_local_x() <= 502 + 5 and pc.get_local_y() >= 354 - 5 and pc.get_local_y() <= 354 + 5 then
                return 1
            elseif pc.get_local_x() >= 517 - 5 and pc.get_local_x() <= 517 + 5 and pc.get_local_y() >= 354 - 5 and pc.get_local_y() <= 354 + 5 then
                return 2
            elseif pc.get_local_x() >= 487 - 5 and pc.get_local_x() <= 487 + 5 and pc.get_local_y() >= 354 - 5 and pc.get_local_y() <= 354 + 5 then
                return 3
            elseif pc.get_local_x() >= 502 - 5 and pc.get_local_x() <= 502 + 5 and pc.get_local_y() >= 339 - 5 and pc.get_local_y() <= 339 + 5 then
                return 4
            elseif pc.get_local_x() >= 502 - 5 and pc.get_local_x() <= 502 + 5 and pc.get_local_y() >= 369 - 5 and pc.get_local_y() <= 369 + 5 then
                return 5
            else
                return false
            end
        end
    
    end
end
ai cumva si data/dungeon pt blazing purgatory?
Avatar utilizator
Bughy
Ţepar / Untrusted User

Ţepar / Untrusted User
Mesaje: 431
Membru din: 10 Apr 2018, 22:33
Server: Toate =))
Regat: Jinno
Aprecieri: 62  
Mulţumiri: 51  
 Contact:
Medalii

Adica mapa?
Imagine
Daca te-am ajutat lasa un like :) B-) :ymhug: ;)
Afișează semnătura
Avatar utilizator
uzzyadelin
Nivel 1

Nivel 1
Mesaje: 77
Membru din: 21 Dec 2014, 14:09
Server: Metin2
Regat: Jinno
Aprecieri: 7  
Mulţumiri: 2  
Medalii

Bughy scrie:Adica mapa?
da, la mine e flamerun ( si regen-urile au doar 3 mobi in ele)
Avatar utilizator
Bughy
Ţepar / Untrusted User

Ţepar / Untrusted User
Mesaje: 431
Membru din: 10 Apr 2018, 22:33
Server: Toate =))
Regat: Jinno
Aprecieri: 62  
Mulţumiri: 51  
 Contact:
Medalii

uzzyadelin scrie:
Bughy scrie:Adica mapa?
da, la mine e flamerun ( si regen-urile au doar 3 mobi in ele)
o sa ti le las cand ajung acasa. #cluj_parzitii_concert =))

[ Postat de pe Android ] Imagine [ Postat de pe Android ] Imagine
Imagine
Daca te-am ajutat lasa un like :) B-) :ymhug: ;)
Afișează semnătura
Avatar utilizator
FastReview
Veteran

Veteran
Mesaje: 2624
Membru din: 25 Oct 2015, 00:01
Aprecieri: 77  
Mulţumiri: 111  
Discord: Copiază ID
Medalii

Autorul are peste 3 zile de inactivitate, arhivat.
Închis
Răspunsuri
1
Vizualizări
104
Răspunsuri
1
Vizualizări
325

Înapoi la “Arhivă”

  • Informaţie