Dt bug (K)

Indította DeathKnight, 2013-05-27, 14:55:44

2013-05-27, 14:55:44 Utolsó szerkesztés: 2013-06-17, 22:23:33 Szerző: [MOD]Aegist
Hello
Dt 4. emeltén a kövek megölése utána befagy a szerver csak resi után lehet belépni itt a sysser:
SYSERR: May 27 14:53:07 :: AddServerTimer: already registered server timer name:devil_stone5_fail1 arg:660000
Volt quest csere illetve local.lua csere is

Már meglévő server_timer-t akar hozzáadni. Mégpedig a devil_stone5_fail1-et.

És erre mi a megoldás??

adj neki másik nevet...

Nekem ugyan ez a bajom mikkor at irja már a sero hogy teleportálodik mindenki a következő szintre kidopb bejelentkezéshez és bebuggol a szero mindenkit ledob miért?

Másold be a questet amit használsz.

Rendben de ezt egy müködö Dt-ből kaptam szóval mükődni e kell nem hiszem a quest a hibás de ha igen örülnék a megoldásnak :)
 

Idézquest deviltower_zone begin
    state start begin
      when login begin
         if pc.get_map_index() == 66 then
            if pc.get_level() < 40 then
               syschat("Nem vagy te még idevaló.")
               pc.warp(590500, 110500)
            end
            if pc.get_x() < 2048+88 or pc.get_y() < 6656+577 or pc.get_x() > 2048+236 or pc.get_y() > 6656+737 then
               pc.warp((5376+532)*100, (512+596+4)*100, 65)
            end
            pc.set_warp_location(65, 5376+532, 512+596+4)
         elseif pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 then
            pc.set_warp_location(65, 5376+532, 512+596+4)
         end
      end

      when deviltower_man.click begin
         say_title("Démontorony Őr")
         say("Mit szeretnél?")
         local s=select("Belépni a toronyba","Haza menni","Semmit")
         if s==1 then
            say_title("Démontorony Őr:")
            say("Üdvözlégy bátor kalandor.")
            say("Ezen torony falai között már számtalan bátor")
            say("lovag elbukott. Rengeted démon lakozik e elátkozott")
            say("falakon túl...")
            say("")
            say("A toronyba csak kivételes emberek léphetnek.")
            say("Te kivételesnek érzed magad?")
            local s = select("Igen","Nem")
            if s == 1 then
               if pc.get_level() < 40 then
                  say_title("Démontorony Őr:")
                  say("Te meg a kivételesség[DELAY value;700]. . .[/DELAY]")
                  say("Még magadat sem tudod megvédeni! Most menj")
                  say("amíg legalább a 40-es szintet el nem éred!")
               else
                  say_title("Démontorony Őr:")
                  say("Látom te elég kivételes és erős vagy hogy bemehess.")
                  say("Vigyázz magadra odabent!")
                  say("")
                  pc.warp(216500,727000)
               end
            elseif s == 2 then
               say_title("Démontorony Őr:")
               say("Gondoltam, hogy megfutamodsz.")
               say("Gyere vissza, ha elég bátor leszel.")
               return
            end
         elseif s==2 then
            say_title("Démontorony Őr")
            say("Hamarosan otthon találod magad.")
            local empire=pc.get_empire()
            if empire==1 then
               pc.warp(473600,952000)
            elseif empire==2 then
               pc.warp(64000,162900)
            elseif empire==3 then
               pc.warp(964600,268800)
            end
         elseif s==3 then
            return
         end
      end
      when devil_stone1.kill begin
         syschat("Elpusztítottad a Metinkövet.")
         d.notice("Elpusztult a Metinkő, mindenki fel lesz portálva a második emeletre.")
         timer("devil_stone1_1", 6)
      end
      when devil_stone1_1.timer begin
         local mapto7= pc.count_item(30302)  --Elveszi a Zin barlang térképet ha beleütsz a metinbe
         pc.remove_item(30302,mapto7)
         local boxto7= pc.count_item(30300)  --Elveszi az Ismeretlen öreg ládát ha beleütsz a metinbe
         pc.remove_item(30300,boxto7)
         d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])
         d.regen_file("data/dungeon/deviltower2_regen.txt")
         d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/deviltower3_regen.txt")
      end
      --when devil_stone2.kill begin
      --d.jump_all_local(special.devil_tower[2][1], special.devil_tower[2][2])
      --end
      when devil_stone3.kill begin
         d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[3][1], special.devil_tower[3][2], "data/dungeon/deviltower4_regen.txt")
         d.check_eliminated()
      end
      function get_4floor_stone_pos()
         local positions = {
         {368, 629},
         {419, 630},
         {428, 653},
         {422, 679},
         {395, 689},
         {369, 679},
         {361, 658},
         }
         for i = 1, 6 do
            local j = number(i, 7)
            if i != j then
               local t = positions;
               positions = positions[j];
               positions[j] = t;
            end
         end
         return positions
      end
      when 8016.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         d.setf("level", 4)
         local positions = deviltower_zone.get_4floor_stone_pos()
         for i = 1, 6 do
         chat(positions[1], positions[2])
         d.set_unique("fake" .. i , d.spawn_mob(8017, positions[1], positions[2]))
         end
         chat(positions[7][1], positions[7][2])
         local vid = d.spawn_mob(8017, positions[7][1], positions[7][2])
         chat(vid)
         d.set_unique("real", vid)
         server_loop_timer('devil_stone4_update', 10, pc.get_map_index())
         server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())
         
         d.notice("Ez a negyedik emelet!")
         d.notice("Keressétek meg a helyes metint és pusztítsátok el.")
         d.notice("A hibás metinkövek eltünnek!")
         d.notice("Mindössze 15 Percetek van a továbbjutásra!")

      end

      when devil_stone4_fail1.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.notice("Hátralévő idő: 10 perc")
            server_timer('devil_stone4_fail2', 5*60, get_server_timer_arg())
         end
      end

      when devil_stone4_fail2.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.notice("Hátralévő idő: 5 perc")
            server_timer('devil_stone4_fail', 5*60, get_server_timer_arg())
         end
      end

      when devil_stone4_fail.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.notice("Az idő lejárt")
            d.notice("Mindenki ki lesz teleportálva.")
            d.exit_all()
            clear_server_timer('devil_stone4_update', get_server_timer_arg())
         end
      end

      when devil_stone4_update.server_timer begin
         if d.select(get_server_timer_arg()) then
            if not d.is_unique_dead("real") then
               for i = 1, 6 do
                  if d.getf("fakedead" .. i) == 0 then
                     if d.unique_get_hp_perc("fake" .. i) < 50 then
                        d.purge_unique("fake" .. i)
                        d.setf("fakedead" .. i, 1)
                        d.notice("A hamis metinkövek eltünnek..")
                     end
                  end
               end
            else
               server_timer("devil_stone4_end", 5, get_server_timer_arg())
               d.notice("Gratulálok, megtaláltátok a megfelelő metinkövet.")
               d.notice("Most mindenki teleportálódik a következő emeltre.")
               clear_server_timer('devil_stone4_fail1', get_server_timer_arg())
               clear_server_timer('devil_stone4_fail2', get_server_timer_arg())
               clear_server_timer('devil_stone4_fail', get_server_timer_arg())
            end
         else
            server_timer('devil_stone4_stop_timer', 1, get_server_timer_arg())
         end
      end

      when devil_stone4_stop_timer.server_timer begin
         clear_server_timer('devil_stone4_update', get_server_timer_arg())
      end

      when devil_stone4_end.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.setf("level", 5)
            d.setf("stone_count", 5)
            d.notice("Legyetek üdvözölve az 5.ik emeleten!")
            d.notice("A szörnyekben vannak elrejtve a továbbjutáshoz való kulcskövek.")
            d.notice("Nyissátok ki az összes Öreg Pecsétet.")
            d.notice("Összesen 20 Percetek van rá!")
            d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])
            server_timer('devil_stone5_fail1', 5*60, get_server_timer_arg())
            clear_server_timer('devil_stone4_update', get_server_timer_arg())
            d.set_regen_file("data/dungeon/deviltower5_regen.txt")
            d.spawn_mob(20073, 421, 452)
            d.spawn_mob(20073, 380, 460)
            d.spawn_mob(20073, 428, 414)
            d.spawn_mob(20073, 398, 392)
            d.spawn_mob(20073, 359, 426)
         end
      end

      when devil_stone5_fail1.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.notice("Hátralévő idő: 15 Perc")
            server_timer('devil_stone5_fail2', 5*60, get_server_timer_arg())
         end
      end

      when devil_stone5_fail2.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.notice("Hátralévő idő: 10 Perc")
            server_timer('devil_stone5_fail3', 5*60, get_server_timer_arg())
         end
      end

      when devil_stone5_fail3.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.notice("Hátralévő idő: 5 Perc")
            server_timer('devil_stone5_fail', 5*60, get_server_timer_arg())
         end
      end

      when devil_stone5_fail.server_timer begin
         if d.select(get_server_timer_arg()) then
            d.notice("Az idő lejárt")
            d.notice("Mindenki ki lesz teleportálva.")
            d.exit_all()
         end
      end

      when 1062.kill with pc.in_dungeon() and d.getf("level") == 5 begin
         local KILL_COUNT_FOR_DROP_KEY = 50
         local n =d.getf("count") + 1
         d.setf("count", n)
         if n == KILL_COUNT_FOR_DROP_KEY then
            game.drop_item(50084, 1)
            d.setf("count", 0)
         end
      end
      when devil_stone5.take with item.vnum == 50084 begin
         npc.purge()
         item.remove()
         d.setf("stone_count", d.getf("stone_count") - 1)
         if d.getf("stone_count") <= 0 then
            d.setf("level", 6)
            d.clear_regen()
            d.regen_file("data/dungeon/deviltower6_regen.txt")

            d.notice("Eltávolítottátok az összes pecsétet.")
            d.notice("Most következik a 6. emelet.")
            d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])
            clear_server_timer('devil_stone5_fail1', get_server_timer_arg())
            clear_server_timer('devil_stone5_fail2', get_server_timer_arg())
            clear_server_timer('devil_stone5_fail3', get_server_timer_arg())
            clear_server_timer('devil_stone5_fail', get_server_timer_arg())
         else
            d.notice("Maradék pecsétek száma: "..d.getf("stone_count").."")
         end
      end

      when devil_stone6.kill begin
         d.kill_all()
         d.check_eliminated()
         local reward_alchemist = {20074, 20075, 20076}
         d.spawn_mob(reward_alchemist[number(1,3)], 425, 216)
         d.setqf("can_refine", 1)
      end

      when 20074.chat."A magasabb szinteken..." or 20075.chat."A magasabb szinteken..." or 20076.chat."A magasabb szinteken..." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         say_title("Magasabb szinteken...")
         say("Gratulálok, hogy idáig eljutottatok!")
         say("De itt sajnos véget ér számotokra az út, ha!")
         say("Nem vagy elég erős a következő szinthez.")
         say("Bizonyítékra van szükségem, hogy valóban elég")
         say("erős vagye.")
         say("Lássuk csak...")
         wait()
         if pc.level >=75 then
            say_title("Magasabb szinteken...")
            say("Rendben van, ahogy látom te elég erős vagy")
            say("hogy tovább mehessetek!")
            say("Sok szerencsét!")
            d.notice("Mindenki portálódik a következő emeletre.")
            timer("devil_jump_7", 6)
            return
         end
         say_title("Magasabb szinteken...")
         say("")
         say("Ahogy látom még gyenge vagy te oda..")
         say("Minimum 75-ös szint kell, hogy felengedjelek.")
         say("Remélem megértetted!")
         say("Gyere vissza ha elérted a szintet.")
         say("")
         wait()
         pc.warp(590500, 110500)
         return
      end

      when devil_jump_7.timer begin
         d.clear_regen()
         d.spawn_mob(8018, 639, 658)
         d.spawn_mob(8018, 611, 637)
         d.spawn_mob(8018, 596, 674)
         d.spawn_mob(8018, 629, 670)
         d.setf("level", 7)
         d.jump_all(2048+590, 6656+638)
      end
      
      when 8018.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         local cont = d.getf("7_stone_kill") + 1
         d.setf("7_stone_kill", cont)
         if cont >= 4 then
            d.setf("7_stone_kill", 0)
            d.set_regen_file("data/dungeon/deviltower7_regen.txt")
         end   
      end

      when 8019.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         game.drop_item(30300, 1)
      end

      when 30300.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         pc.remove_item("30300", 1)
         local pct = number(1,10)
         if pct == 1 then
            game.drop_item(30302, 1)
            d.clear_regen()
         else
            game.drop_item(30301, 1)
         end
      end

      when 30302.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         say("Ez a térkép elvezet minket a következő emeletre!")
         say("Szerencsére hamar meglett..")
         d.notice("Mindenki portálódik a következő emeletre.")
         pc.remove_item("30302", 1)
         timer("devil_jump_8", 6)
         d.clear_regen()
      end

      when devil_jump_8.timer begin
         d.setf("level", 8)
         d.jump_all(2048+590, 6656+403)
         d.set_regen_file("data/dungeon/deviltower8_regen.txt")
         d.spawn_mob(20366, 640, 460)
         local _count= pc.count_item(30302)
         pc.remove_item(30302,_count)
      end

      when 1040.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         local pct1 = number(1, 5)
         if pct1 == 1 then
            local pct2 = number(1, 10)
            if pct2 == 1 then
               game.drop_item(30304, 1)
            else
               game.drop_item(30303, 1)
            end
         else
            return
         end
      end

      when 20366.take with item.vnum == 30304 begin
         npc.purge()
         item.remove()
         d.notice("Mindenki portálódik a következő emeletre.")
         timer("devil_jump_9", 6)
      end

      when devil_jump_9.timer begin
         d.setf("level", 9)
         d.jump_all(2048+590, 6656+155)
         d.regen_file("data/dungeon/deviltower9_regen.txt")
      end

      when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         d.kill_all()
         d.kill_all()
         d.notice(pc.get_name().." Megölte a kaszást!")
         -- d.notice("Most azonban felébredt egy sokkal erősebb hatalom!")
         timer("devil_end_jump", 30)
      end

      -- when devil_jump_10.timer begin
         -- d.setf("level", 10)
         -- d.spawn_mob(1095, 607, 218)
      -- end

      -- when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
         -- d.kill_all()
         -- d.kill_all()
         -- notice_all("Graulálunk! "..pc.get_name().." megölte a Kékhalált")
         -- d.notice("Egy perc múlva ki lesz teleportálva mindenki.")
         -- timer("devil_jump_10_finish", 5)
      -- end

      -- when devil_jump_10_finish.timer begin
         -- d.spawn_mob(9012, 607, 210)
         -- timer("devil_end_jump", 50)
      -- end
      
      when devil_end_jump.timer begin
         d.exit_all()
      end
   end
end

Tessék itt az enyém mielőtt le ./qc.zod bemész object mappába :) és minden deviles mappát törölj ki.. :)
quest deviltower_zone begin
    state start begin
when login begin
if pc.get_map_index() == 66 then
if pc.get_level() < 40 then
syschat("Nem vagy te még idevaló.")
pc.warp(590500, 110500)
end
if pc.get_x() < 2048+88 or pc.get_y() < 6656+577 or pc.get_x() > 2048+236 or pc.get_y() > 6656+737 then
pc.warp((5376+532)*100, (512+596+4)*100, 65)
end
pc.set_warp_location(65, 5376+532, 512+596+4)
elseif pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 then
pc.set_warp_location(65, 5376+532, 512+596+4)
end
end

when deviltower_man.click begin
say_title("Démontorony Őr")
say("Mit szeretnél?")
local s=select("Belépni a toronyba","Haza menni","Semmit")
if s==1 then
say_title("Démontorony Őr:")
say("Üdvözlégy bátor kalandor.")
say("Ezen torony falai között már számtalan bátor")
say("lovag elbukott. Rengeted démon lakozik e elátkozott")
say("falakon túl...")
say("")
say("A toronyba csak kivételes emberek léphetnek.")
say("Te kivételesnek érzed magad?")
local s = select("Igen","Nem")
if s == 1 then
if pc.get_level() < 40 then
say_title("Démontorony Őr:")
say("Te meg a kivételesség[DELAY value;700]. . .[/DELAY]")
say("Még magadat sem tudod megvédeni! Most menj")
say("amíg legalább a 40-es szintet el nem éred!")
else
say_title("Démontorony Őr:")
say("Látom te elég kivételes és erős vagy hogy bemehess.")
say("Vigyázz magadra odabent!")
say("")
pc.warp(216500,727000)
end
elseif s == 2 then
say_title("Démontorony Őr:")
say("Gondoltam, hogy megfutamodsz.")
say("Gyere vissza, ha elég bátor leszel.")
return
end
elseif s==2 then
say_title("Démontorony Őr")
say("Hamarosan otthon találod magad.")
local empire=pc.get_empire()
if empire==1 then
pc.warp(473600,952000)
elseif empire==2 then
pc.warp(64000,162900)
elseif empire==3 then
pc.warp(964600,268800)
end
elseif s==3 then
return
end
end
when devil_stone1.kill begin
syschat("Elpusztítottad a Metinkövet.")
d.notice("Elpusztult a Metinkő, mindenki fel lesz portálva a második emeletre.")
timer("devil_stone1_1", 6)
end
when devil_stone1_1.timer begin
local mapto7= pc.count_item(30302)  --Elveszi a Zin barlang térképet ha beleütsz a metinbe
pc.remove_item(30302,mapto7)
local boxto7= pc.count_item(30300)  --Elveszi az Ismeretlen öreg ládát ha beleütsz a metinbe
pc.remove_item(30300,boxto7)
d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])
d.regen_file("data/dungeon/deviltower2_regen.txt")
d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/deviltower3_regen.txt")
end
--when devil_stone2.kill begin
--d.jump_all_local(special.devil_tower[2][1], special.devil_tower[2][2])
--end
when devil_stone3.kill begin
d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[3][1], special.devil_tower[3][2], "data/dungeon/deviltower4_regen.txt")
d.check_eliminated()
end
function get_4floor_stone_pos()
local positions = {
{368, 629},
{419, 630},
{428, 653},
{422, 679},
{395, 689},
{369, 679},
{361, 658},
}
for i = 1, 6 do
local j = number(i, 7)
if i != j then
local t = positions[i];
positions[i] = positions[j];
positions[j] = t;
end
end
return positions
end
when 8016.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
d.setf("level", 4)
local positions = deviltower_zone.get_4floor_stone_pos()
for i = 1, 6 do
chat(positions[i][1], positions[i][2])
d.set_unique("fake" .. i , d.spawn_mob(8017, positions[i][1], positions[i][2]))
end
chat(positions[7][1], positions[7][2])
local vid = d.spawn_mob(8017, positions[7][1], positions[7][2])
chat(vid)
d.set_unique("real", vid)
server_loop_timer('devil_stone4_update', 10, pc.get_map_index())
server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())

d.notice("Ez a negyedik emelet!")
d.notice("Keressétek meg a helyes metint és pusztítsátok el.")
d.notice("A hibás metinkövek eltünnek!")
d.notice("Mindössze 15 Percetek van a továbbjutásra!")

end

when devil_stone4_fail1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Hátralévő idő: 10 perc")
server_timer('devil_stone4_fail2', 5*60, get_server_timer_arg())
end
end

when devil_stone4_fail2.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Hátralévő idő: 5 perc")
server_timer('devil_stone4_fail', 5*60, get_server_timer_arg())
end
end

when devil_stone4_fail.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Az idő lejárt")
d.notice("Mindenki ki lesz teleportálva.")
d.exit_all()
clear_server_timer('devil_stone4_update', get_server_timer_arg())
end
end

when devil_stone4_update.server_timer begin
if d.select(get_server_timer_arg()) then
if not d.is_unique_dead("real") then
for i = 1, 6 do
if d.getf("fakedead" .. i) == 0 then
if d.unique_get_hp_perc("fake" .. i) < 50 then
d.purge_unique("fake" .. i)
d.setf("fakedead" .. i, 1)
d.notice("A hamis metinkövek eltünnek..")
end
end
end
else
server_timer("devil_stone4_end", 5, get_server_timer_arg())
d.notice("Gratulálok, megtaláltátok a megfelelő metinkövet.")
d.notice("Most mindenki teleportálódik a következő emeltre.")
clear_server_timer('devil_stone4_fail1', get_server_timer_arg())
clear_server_timer('devil_stone4_fail2', get_server_timer_arg())
clear_server_timer('devil_stone4_fail', get_server_timer_arg())
end
else
server_timer('devil_stone4_stop_timer', 1, get_server_timer_arg())
end
end

when devil_stone4_stop_timer.server_timer begin
clear_server_timer('devil_stone4_update', get_server_timer_arg())
end

when devil_stone4_end.server_timer begin
if d.select(get_server_timer_arg()) then
d.setf("level", 5)
d.setf("stone_count", 5)
d.notice("Legyetek üdvözölve az 5.ik emeleten!")
d.notice("A szörnyekben vannak elrejtve a továbbjutáshoz való kulcskövek.")
d.notice("Nyissátok ki az összes Öreg Pecsétet.")
d.notice("Összesen 20 Percetek van rá!")
d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])
server_timer('devil_stone5_fail1', 5*60, get_server_timer_arg())
clear_server_timer('devil_stone4_update', get_server_timer_arg())
d.set_regen_file("data/dungeon/deviltower5_regen.txt")
d.spawn_mob(20073, 421, 452)
d.spawn_mob(20073, 380, 460)
d.spawn_mob(20073, 428, 414)
d.spawn_mob(20073, 398, 392)
d.spawn_mob(20073, 359, 426)
end
end

when devil_stone5_fail1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Hátralévő idő: 15 Perc")
server_timer('devil_stone5_fail2', 5*60, get_server_timer_arg())
end
end

when devil_stone5_fail2.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Hátralévő idő: 10 Perc")
server_timer('devil_stone5_fail3', 5*60, get_server_timer_arg())
end
end

when devil_stone5_fail3.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Hátralévő idő: 5 Perc")
server_timer('devil_stone5_fail', 5*60, get_server_timer_arg())
end
end

when devil_stone5_fail.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Az idő lejárt")
d.notice("Mindenki ki lesz teleportálva.")
d.exit_all()
end
end

when 1062.kill with pc.in_dungeon() and d.getf("level") == 5 begin
local KILL_COUNT_FOR_DROP_KEY = 50
local n =d.getf("count") + 1
d.setf("count", n)
if n == KILL_COUNT_FOR_DROP_KEY then
game.drop_item(50084, 1)
d.setf("count", 0)
end
end
when devil_stone5.take with item.vnum == 50084 begin
npc.purge()
item.remove()
d.setf("stone_count", d.getf("stone_count") - 1)
if d.getf("stone_count") <= 0 then
d.setf("level", 6)
d.clear_regen()
d.regen_file("data/dungeon/deviltower6_regen.txt")

d.notice("Eltávolítottátok az összes pecsétet.")
d.notice("Most következik a 6. emelet.")
d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])
clear_server_timer('devil_stone5_fail1', get_server_timer_arg())
clear_server_timer('devil_stone5_fail2', get_server_timer_arg())
clear_server_timer('devil_stone5_fail3', get_server_timer_arg())
clear_server_timer('devil_stone5_fail', get_server_timer_arg())
else
d.notice("Maradék pecsétek száma: "..d.getf("stone_count").."")
end
end

when devil_stone6.kill begin
d.kill_all()
d.check_eliminated()
local reward_alchemist = {20074, 20075, 20076}
d.spawn_mob(reward_alchemist[number(1,3)], 425, 216)
d.setqf("can_refine", 1)
end

when 20074.chat."A magasabb szinteken..." or 20075.chat."A magasabb szinteken..." or 20076.chat."A magasabb szinteken..." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say_title("Magasabb szinteken...")
say("Gratulálok, hogy idáig eljutottatok!")
say("De itt sajnos véget ér számotokra az út, ha!")
say("Nem vagy elég erős a következő szinthez.")
say("Bizonyítékra van szükségem, hogy valóban elég")
say("erős vagye.")
say("Lássuk csak...")
wait()
if pc.level >=75 then
say_title("Magasabb szinteken...")
say("Rendben van, ahogy látom te elég erős vagy")
say("hogy tovább mehessetek!")
say("Sok szerencsét!")
d.notice("Mindenki portálódik a következő emeletre.")
timer("devil_jump_7", 6)
return
end
say_title("Magasabb szinteken...")
say("")
say("Ahogy látom még gyenge vagy te oda..")
say("Minimum 75-ös szint kell, hogy felengedjelek.")
say("Remélem megértetted!")
say("Gyere vissza ha elérted a szintet.")
say("")
wait()
pc.warp(590500, 110500)
return
end

   when devil_jump_7.timer begin
d.clear_regen()
d.spawn_mob(8018, 639, 658)
d.spawn_mob(8018, 611, 637)
d.spawn_mob(8018, 596, 674)
d.spawn_mob(8018, 629, 670)
d.setf("level", 7)
d.jump_all(2048+590, 6656+638)
end

when 8018.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
local cont = d.getf("7_stone_kill") + 1
d.setf("7_stone_kill", cont)
if cont >= 4 then
d.setf("7_stone_kill", 0)
d.set_regen_file("data/dungeon/deviltower7_regen.txt")
end
end

when 8019.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
game.drop_item(30300, 1)
end

when 30300.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
pc.remove_item("30300", 1)
local pct = number(1,10)
if pct == 1 then
game.drop_item(30302, 1)
d.clear_regen()
else
game.drop_item(30301, 1)
end
end

when 30302.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say("Ez a térkép elvezet minket a következő emeletre!")
say("Szerencsére hamar meglett..")
d.notice("Mindenki portálódik a következő emeletre.")
pc.remove_item("30302", 1)
timer("devil_jump_8", 6)
d.clear_regen()
end

when devil_jump_8.timer begin
d.setf("level", 8)
d.jump_all(2048+590, 6656+403)
d.set_regen_file("data/dungeon/deviltower8_regen.txt")
d.spawn_mob(20366, 640, 460)
local _count= pc.count_item(30302)
pc.remove_item(30302,_count)
end

when 1040.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
local pct1 = number(1, 5)
if pct1 == 1 then
local pct2 = number(1, 10)
if pct2 == 1 then
game.drop_item(30304, 1)
else
game.drop_item(30303, 1)
end
else
return
end
end

when 20366.take with item.vnum == 30304 begin
npc.purge()
item.remove()
d.notice("Mindenki portálódik a következő emeletre.")
timer("devil_jump_9", 6)
end

when devil_jump_9.timer begin
d.setf("level", 9)
d.jump_all(2048+590, 6656+155)
d.regen_file("data/dungeon/deviltower9_regen.txt")
end

when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
d.kill_all()
d.kill_all()
d.notice(pc.get_name().." Megölte a kaszást!")
-- d.notice("Most azonban felébredt egy sokkal erősebb hatalom!")
timer("devil_end_jump", 30)
end

-- when devil_jump_10.timer begin
-- d.setf("level", 10)
-- d.spawn_mob(1095, 607, 218)
-- end

-- when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
-- d.kill_all()
-- d.kill_all()
-- notice_all("Graulálunk! "..pc.get_name().." megölte a Kékhalált")
-- d.notice("Egy perc múlva ki lesz teleportálva mindenki.")
-- timer("devil_jump_10_finish", 5)
-- end

-- when devil_jump_10_finish.timer begin
-- d.spawn_mob(9012, 607, 210)
-- timer("devil_end_jump", 50)
-- end

when devil_end_jump.timer begin
d.exit_all()
end
end
end