Jump to content

Fregion

Miembro
  • Contador contenido

    2
  • Ingreso

  • Última visita

Mensajes publicados por Fregion

  1. quest devilcatacomb_zone begin
        state start begin
            function setting()
                return
                {
        
                ["base"]={["x"] = 3072  , ["y"]= 12032 ,},
                ["floor6_entry"] = {["x"] = 1362, ["y"] = 666},
                ["floor7_entry"] = {["x"] = 73, ["y"] = 1156},
                ["floor2_entry"] = {["x"] = 550, ["y"] = 45,},
                ["map_idx"] = 216,
                ["level"] = 75,
                ["PartyMinCount"] = 1,
                ["reapers_credit1"] = 30319,
                
                
                ["mob_regen_file_path"] = "data/dungeon/devilcatacomb/",
                ["devil_great_king"] = 2597,
                ["devil_great_king_pos"] = {1303,704},
                ["devil_emperor"] = 2598,
                ["devil_emperor_pos"] = {74,1103},
        
                
                }
            end
        
            function InDungeon()
                local setting = devilcatacomb_zone.setting()
                return pc.get_map_index() >= setting.map_idx*10000 and pc.get_map_index() < (setting.map_idx+1)*10000
            end
        
            when login with devilcatacomb_zone.InDungeon() begin
        
                local setting = devilcatacomb_zone.setting()
                
                pc.remove_item(setting.reapers_credit1, 1)
                if pc.getqf("devilcatacomb_zone") == 1 then 
                    server_timer("floor6_eli_check_timer_1", 5, d.get_map_index())
                    server_timer("devilcatacomb_5m_left_timer", 10*60, d.get_map_index())
                    d.setf("level",6)
                    d.setqf2("devilcatacomb_zone","level", 6)
                    d.regen_file (setting.mob_regen_file_path.."dc_6f_regen.txt")
                    d.spawn_mob (setting.devil_great_king, setting.devil_great_king_pos[1], setting.devil_great_king_pos[2])
                    d.notice("Elimina Caronte y las fuerzas demoniaca, y accede a la siguiente sala.")
                    pc.setqf("devilcatacomb_zone", 0)
                end
                
                
            end
        
            when 20367.chat."Catacumbas del diablo" with not devilcatacomb_zone.InDungeon() begin
                
                local s = devilcatacomb_zone.setting()
                raw_script("[TEXT_HORIZONTAL_ALIGN_CENTER]")
                say_title(string.format("Guardian de las Catacumbas", mob_name(npc.get_race())))
                say("")
                say("Adentrate a la catacumba y sal como vencedor. ")
                say("")
                if pc.get_level() < s.level then
                  say("Acceso denegado.[ENTER] No tienes la experiencia necesaria para[ENTER]sobrevivir en las Catacumbas del Diablo.[ENTER]Regresa cuando tengas el nivel 75.")
                    return
                end
                
                if select("Ingresar","Cancelar") == 1 then                
                    pc.setqf("devilcatacomb_zone", 1)
                    d.new_jump_all(216, 4434, 12698) 
                end
            end
            
            
            
            
            when kill with devilcatacomb_zone.InDungeon() begin
                local setting = devilcatacomb_zone.setting()
        
                if npc.get_race() == setting.devil_emperor then
                    --party_set_last_ranking_and_dmg(1)
                    notice_all("[Catacumbas del Demonio] El grupo de "..pc.get_name().." a matado a Azrael.")
                    d.notice("Todos los guerreros seran teletransportados en un minuto.")
                    server_timer("devilcatacomb_0m_left_timer", 60, d.get_map_index())
                end
        
        
            end
        
        
            when devilcatacomb_5m_left_timer.server_timer begin
                if d.select(get_server_timer_arg()) then
                    d.notice(string.format(gameforge.devilcatacomb_zone._20_say, 5))
                    server_timer('devilcatacomb_1m_left_timer', 60 * 4, get_server_timer_arg())
                end
            end
            
            when devilcatacomb_1m_left_timer.server_timer begin
                if d.select(get_server_timer_arg()) then
                    d.notice(string.format(gameforge.devilcatacomb_zone._20_say, 1))
                    server_timer ("devilcatacomb_0m_left_timer", 60 * 1, get_server_timer_arg())
                end
            end
            
            when devilcatacomb_0m_left_timer.server_timer begin
                if d.select(get_server_timer_arg()) then
                    d.notice (gameforge.devilcatacomb_zone._210_dNotice)
                    d.set_warp_location (65, 5914, 992)
                    server_timer('devilcatacomb_exit_timer', 7, get_server_timer_arg())
                end
            end
            
            when floor6_eli_check_timer_1.server_timer begin
                if d.select(get_server_timer_arg()) then
                    if d.count_monster() == 0 then
                        say_in_map (get_server_timer_arg(), gameforge.devilcatacomb_zone._320_say)
                        server_timer ("devilcatacomb_floor7_timer", 3, get_server_timer_arg())
                    else
                        server_timer ("floor6_eli_check_timer_2", 5, get_server_timer_arg())
                    end
                end
            end
        
            when floor6_eli_check_timer_2.server_timer begin
                if d.select(get_server_timer_arg()) then
                    if d.count_monster() == 0 then
                        say_in_map (get_server_timer_arg(), gameforge.devilcatacomb_zone._320_say)
                        server_timer("devilcatacomb_floor7_timer", 3, get_server_timer_arg())
                    else
                        server_timer ("floor6_eli_check_timer_1", 5, get_server_timer_arg())
                    end
                end
            end
            
            when devilcatacomb_floor7_timer.server_timer begin
                if d.select(get_server_timer_arg()) then
                    local setting = devilcatacomb_zone.setting()
        
                    d.setf("level",7)
                    d.setqf2("devilcatacomb_zone","level", 7)
                    d.jump_all (setting.floor7_entry.x + setting.base.x, setting.floor7_entry.y + setting.base.y )
                    d.regen_file (setting.mob_regen_file_path.."dc_7f_regen.txt")
                    d.spawn_mob (setting.devil_emperor, setting.devil_emperor_pos[1], setting.devil_emperor_pos[2])
                    server_timer ("devilcatacomb_floor7_say_timer", 2, get_server_timer_arg())
                end    
            end
        
            when devilcatacomb_floor7_say_timer.server_timer begin
                if d.select(get_server_timer_arg()) then
                    d.notice("Entraste a la sala de Azrael")
                end
            end
        
            
            when floor7_eli_check_timer_1.server_timer begin
                if d.select(get_server_timer_arg()) then
                    if d.count_monster() == 0 then
                        d.set_warp_location (65, 5914, 992)
                        d.setqf2("devilcatacomb_zone","done", 1)
                        say_in_map (get_server_timer_arg(), gameforge.devilcatacomb_zone._340_say)
                        clear_server_timer ("devilcatacomb_0m_left_timer", get_server_timer_arg())
                        server_timer("devilcatacomb_exit_timer", 60, get_server_timer_arg())
                    else
                        server_timer ("floor7_eli_check_timer_2", 5, get_server_timer_arg())
                    end
                end
            end
        
            when floor7_eli_check_timer_2.server_timer begin
                if d.select(get_server_timer_arg()) then
                    if d.count_monster() == 0 then
                        d.set_warp_location (65, 5914, 992)
                        d.setqf2("devilcatacomb_zone","done", 1)
                        say_in_map (get_server_timer_arg(), gameforge.devilcatacomb_zone._340_say)
                        clear_server_timer ("devilcatacomb_0m_left_timer", get_server_timer_arg())
                        server_timer("devilcatacomb_exit_timer", 60, get_server_timer_arg())
                    else
                        server_timer ("floor7_eli_check_timer_1", 5, get_server_timer_arg())
                    end
                end
            end
        
            when devilcatacomb_exit_timer.server_timer begin
                if d.select(get_server_timer_arg()) then
                    d.setqf2("devilcatacomb_zone","level", 0)
                    d.setqf2("devilcatacomb_zone","last_exit_time", get_global_time())
                    clear_server_timer("devilcatacomb_5m_left_timer", get_server_timer_arg())
                    clear_server_timer("devilcatacomb_1m_left_timer", get_server_timer_arg())
                    clear_server_timer("devilcatacomb_0m_left_timer", get_server_timer_arg())
                    clear_server_timer("floor7_eli_check_timer_1", get_server_timer_arg())
                    clear_server_timer("floor7_eli_check_timer_2", get_server_timer_arg())
                    clear_server_timer("devilcatacomb_floor7_say_timer", get_server_timer_arg())
                    clear_server_timer("devilcatacomb_floor7_timer", 3, get_server_timer_arg())
                    d.clear_regen()
                    d.exit_all()
                end
            end
        end
    end   --quest

    For the love of a better community with fewer lazy people, read: 

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.

×
×
  • Crear nuevo...