Jump to content
  • 0

Error snow dungeon


KingTsunamy

Question

  • VIP

after i teleport with my group in the map and click on Yes to start we are all teleported in Sohan 

http://prntscr.com/41a3dx

my quest si this

quest snowdungeon begin
    state start begin
    -- Statuia leu inghetat sohan
    when 20397.chat."Test nivel 9" with pc.is_gm() begin
	d.setf("actual_round",9)
	timer("nextlevel",5)
	return
		
	end
	-- end statuia leu inghetat sohan
	-- Statuia leu inghetat sohan
    when 20397.chat."Turnul lui Nemeres" with pc.get_map_index() == 61 begin
		say_gold("Statuia Leului de gheata")
		say_white("Fortele raului se prezinta in multe forme.")
		say("Puterile sale distrugatoare cresc pe zi ce trece.")
		say("Regatele incep sa se destrame. Cine este in stare")
		say("sa se impotriveasca?")
		say("Ultima noastra speranta ramane in oameni simpli !")
		say_reward("Esti pregatit sa il infrunti ?")
	if select("Da!","Nu") == 1 then
		if pc.get_level() >= 100 then
			pc.warp(520800,182000)
			else
			syschat("Nu esti destul de puternic. Revino cand ajungi la nivelul 100.")
		end
		else
			syschat("Revino cand esti pregatit")
	end		
	end
	-- end statuia leu inghetat sohan
	-- Statuia leu inghetat
    when 20397.chat."Turnul lui Nemeres" with pc.get_map_index() == 240 begin 
			say_gold("Statuia Leului de gheata")
			say_white("Fortele raului se prezinta in multe forme.")
			say("Puterile sale distrugatoare cresc din ce in ce mai mult.")
			say("Regatele incep sa se destrame. Cine este in stare sa se impotriveasca?")
			say("Ultima noastra speranta ramane in oameni simpli !")
			
            if pc.get_level() >= 100 then
                if party.is_party() or pc.is_gm()  then
                    if party.is_leader() or pc.is_gm() then
                        if pc.count_item(71122) > 0 or pc.is_gm() then
                           say_reward("Esti pregatit sa il infrunti ?")
                            if select("Da!","Nu") == 1 then
                                pc.remove_item(71122,1)
                                d.join(240)
                            end
                        else
                            say_reward("Ai nevoie de itemul!")
                            say_item_vnum(71122)
                        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 100 !")
            end
        end  
	-- end statuia leu inghetat
	-- Statuia leu inghetat 222222222222222
    when 20397.chat."Lacasul lui Nemeres" with d.getf("actual_round") == 9 begin 
           if party.is_leader() or pc.is_gm() then
				say_gold("Statuia Leului de gheata")
				say_white("A fost foarte greu dar in final")
				say("am ajuns la sursa raului.")
				say("Maleficul Nemeres te asteapta !")
				say_reward("Esti pregatit sa il infrunti ?")
					if select("Da!","Nu") == 1 then
						if d.getf("used_statue", 0) then
							d.setf("used_statue", 1)
							syschat("In urmatoarele 10 secunde vei fi teleportat impreuna cu grupa ta !")
							timer("nextlevel",10)
						end
					end
			end
    end  
	-- end statuia leu inghetat 222222222222222
	-- func start
	when login with pc.get_map_index() >= 2400000 and pc.get_map_index() <= 2405000 begin
            d.notice("[Turnul lui Nemeres]A inceput batalia.")
            d.notice("[Turnul lui Nemeres]Curata camera pentru a putea avansa ! Mult succes.")
            if party.is_party() then
                if party.is_leader() then
                    snowdungeon.start()
                end
            else
                if pc.is_gm() then
                    snowdungeon.start()
                end
            end
        end		
	-- FUNCTII
	------
	when 20398.take begin
		if d.getf("actual_round") == 5 then
			if item.get_vnum() == 30332 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 snowdungeon.GetPillarID() == sequence[d.getf("sequence")][d.getf("box_opened")] then
                        pc.remove_item(item.get_vnum(),1)
                        npc.purge()
                        d.setf("box_opened", d.getf("box_opened")+1)
                        if d.getf("box_opened") == 6 then
                            d.notice("[Turnul lui Nemeres] Sigiliile au fost deschise")
							d.notice("[Turnul lui Nemeres] Vei urca la nivelul 6")
                            snowdungeon.purge()
							timer("nextlevel",10)
                        else
                            d.notice("[Turnul lui Nemeres]Mai ai "..6-d.getf("box_opened").." sigili de deschis!")
                        end
                    elseif snowdungeon.GetPillarID() == false then
                        syschat("Dute mai aproape si trage cheia !")
                    elseif snowdungeon.GetPillarID() != sequence[d.getf("sequence")][d.getf("box_opened")] then
                        pc.remove_item(item.get_vnum(),1)
                        syschat("[Turnul lui Nemeres]Nu ai pus cheia pe sigiliul corect, cauta altul !")
                    end
		----------------------------------
			  end
		end
	end
	when 30331.use begin
		if d.getf("actual_round") == 2 then
			if pc.get_job() == 3 or pc.get_job() == 7 then
				if number(1,8) == 5 then				
					d.notice("[Turnul lui Nemeres] Ai avut noroc. Cheia a fost perfecta.")
					d.notice("[Turnul lui Nemeres] Imediat vei fi dus la urmatorul nivel.")
					snowdungeon.purge()
					timer("nextlevel",10)
				else
					syschat("[Turnul lui Nemeres] Cheia nu a fost destul de puternica si sa spart.")
					syschat("[Turnul lui Nemeres] Incearca din nou.")
					pc.remove_item(30331,1)
				end
				else
				syschat("Doar un saman curajos poate folosi aceasta cheie.")
			end
		end
	end
	when 30333.use begin
		if pc.get_job() == 3 or pc.get_job() == 7 or pc.get_job() == 1 or pc.get_job() == 5 then
			if d.getf("actual_round") == 8 then
				if number(1,8) == 5 then				
					d.notice("[Turnul lui Nemeres] Ai avut noroc. Cheia a fost perfecta.")
					d.notice("[Turnul lui Nemeres] Imediat vei fi dus la urmatorul nivel.")
					snowdungeon.purge()
					timer("nextlevel",10)
				else
					d.notice("[Turnul lui Nemeres] Cheia nu a fost destul de puternica si sa spart.")
					d.notice("[Turnul lui Nemeres] Incearca din nou.")
					pc.remove_item(30333,1)
				end
				else
				syschat("Doar un saman sau un ninja curajos poate folosi aceasta cheie.")
			end
		end
	end
	when kill with pc.get_map_index() >= 2400000 and pc.get_map_index() <= 2405000 begin
	
		if d.getf("actual_round") == 6 and npc.get_race() == 8058 then
			d.notice("[Turnul lui Nemeres] Felicitari , ai distrus sursa puterilor lui Nemeres")
			d.notice("[Turnul lui Nemeres] In cateva momente vei urca la nivelul 7.")
			timer("nextlevel",10)
		end
		if d.getf("actual_round") == 7 and npc.get_race() == 6151 then
			d.notice("[Turnul lui Nemeres] Felicitari , uciderea lui Szel te-a adus cu un pas mai")
			d.notice("[Turnul lui Nemeres] aproare de batalian cu Nemeres")
			snowdungeon.purge()
			timer("nextlevel",10)
		end
		if d.getf("actual_round") == 9 and npc.get_race() == 20399 then
			d.notice("[Turnul lui Nemeres] Ultimul pilon din defensiva lui Nemeres a fost daramat")
			d.notice("[Turnul lui Nemeres] Sufletul leului de gheata a aparut.")
			snowdungeon.purge()
			d.spawn_mob(20397, 848, 669)	
		end
		if d.getf("actual_round") == 10 and npc.get_race() == 6191 then
			d.notice("[Turnul lui Nemeres] Felicitari lai invins pe Nemeres !")
			notice_all("Cu o ultimã suflare de sperantã liderul "..pc.get_name().."")
			notice_all("Urmat de rãzboinici lui de încredere, au reusit sã-l învingã pe temutul Nemeres.")	
			d.setf("actual_round","0")	
			------------------
			local time = get_time()
			d.setqf2("snowdungeon","daily_nemeres_last_kill", time)
			d.setqf2("snowdungeon","daily_nemeres", 1)
			------------------
			d.clear_regen()
			d.kill_all()
			d.spawn_mob(9012, 928, 338)
			timer("exit_snow", 60)
			d.notice("In 60 de secunde veti fi teleportati afara.")
		end
		if d.getf("actual_round") == 1 then
			d.setf("kill_count_sd1",d.getf("kill_count_sd1") +1)
			if d.getf("kill_count_sd1") == d.getf("sd_kill_to_next") then				
				d.notice("[Turnul lui Nemeres] Ai terminat primul nivel.")
				d.notice("[Turnul lui Nemeres] In cateva momente vei urca la nivelul 2.")
				snowdungeon.purge()
				timer("nextlevel",10)	
			end
		elseif d.getf("actual_round") == 2 then
			if number(1,20) == 11 then
				game.drop_item_with_ownership(30331,1)
			end
		elseif d.getf("actual_round") == 3 then
			d.setf("kill_count_sd3",d.getf("kill_count_sd3") +1)
				if d.getf("kill_count_sd3") == d.getf("sd3_kill_to_next") then
					snowdungeon.purge()
					d.notice("[Turnul lui Nemeres] Ai terminat al 3lea nivel.")
					d.notice("[Turnul lui Nemeres] In cateva momente vei urca la nivelul 4.")
					timer("nextlevel",10)	
				end			
		elseif d.getf("actual_round") == 4 then
			d.setf("kill_count_sd4",d.getf("kill_count_sd4") +1)
				if d.getf("kill_count_sd4") == d.getf("sd4_kill_to_next") then
					snowdungeon.purge()
					d.notice("[Turnul lui Nemeres] Al doilea val a fost nimicit.")
					d.notice("[Turnul lui Nemeres] In cateva momente vei urca la nivelul 5.")
					timer("nextlevel",10)	
				end			
		elseif d.getf("actual_round") == 5 then
			if number(1,25) == 19 then
				game.drop_item_with_ownership(30332,1)
			end
		elseif d.getf("actual_round") == 6 then
			d.setf("kill_count_sd6",d.getf("kill_count_sd6") +1)
				if d.getf("kill_count_sd6") == d.getf("sd6_kill_to_next") then					
					d.notice("[Turnul lui Nemeres] Ce se intampla ? Se zareste ceva albastru pe cer !?")
					snowdungeon.purge()
					timer("level7metin",5)						
				end			
		elseif d.getf("actual_round") == 8 then
			if number(1,25) == 11 then
				game.drop_item_with_ownership(30333,1)
			end	
			
	
		
		end
	end
	------  
	when level7metin.timer begin
        if d.getf("actual_round") == 6 then
			d.spawn_mob(8058, 743, 495)
		end
	end
	when nextlevel.timer begin
        if d.getf("actual_round") == 1 then
			-- NIVEL 2
			d.jump_all(5120+421,1536+264)
			d.setf("actual_round",2)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_2.txt")
			d.notice("[Turnul lui Nemeres] Ai ajuns la nivelul 2")
			d.notice("[Turnul lui Nemeres] Cauta Cheia pentru a putea avansa la urmatorul nivel.")
			
		elseif d.getf("actual_round") == 2 then
			-- NIVEL 3
			d.jump_all(5120+761,1536+268)
			d.setf("actual_round",3)
			d.setf("kill_count_sd3","0")
			d.setf("sd3_kill_to_next","300") -- NUMARUL DE MOBI PANA LA URMATORUL NIVEL DE MODIFICAT in 250
			d.set_regen_file("data/dungeon/snowdungeon/nivel_3.txt")
			d.notice("[Turnul lui Nemeres] Ai ajuns la nivelul 3")
			d.notice("[Turnul lui Nemeres] Ucide armata lui Nemeres pentru a putea avansa.")
			
		elseif d.getf("actual_round") == 3 then
			-- NIVEL 4
			d.jump_all(5120+174,1536+526)
			d.setf("actual_round",4)			
			d.setf("kill_count_sd4","0")
			d.setf("sd4_kill_to_next","300") -- NUMARUL DE MOBI PANA LA URMATORUL NIVEL DE MODIFICAT in 250
			d.set_regen_file("data/dungeon/snowdungeon/nivel_4.txt")
			d.notice("[Turnul lui Nemeres] Ai ajuns la nivelul 4 ! Un alt val din armata lui Nemeres ataca pe neasteptate.")
			d.notice("[Turnul lui Nemeres] Distrugei pe toti pentru a putea avansa.")	
			
		elseif d.getf("actual_round") == 4 then
			-- NIVEL 5
			d.jump_all(5120+421,1536+533)
			d.setf("actual_round",5)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_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 = {{391,490},{451,490},{463,455},{380,456},{420,422}}
                for i = 1, 5 do
                    d.spawn_mob(20398, coords[i][1],coords[i][2])
                end
                d.setf("box_opened", 1)
                d.setf("sequence",n)
			-----------
			
			d.notice("[Turnul lui Nemeres] Ai ajuns la nivelul 5")
			d.notice("[Turnul lui Nemeres] Trecerea este sigilata de gheata.")
			d.notice("[Turnul lui Nemeres] Deschide sigiliile pentru a putea avansa.")	
						
		elseif d.getf("actual_round") == 5 then
			-- NIVEL 6
			d.jump_all(5120+746,1536+536)
			d.setf("actual_round",6)
			d.setf("kill_count_sd6","0")
			d.setf("sd6_kill_to_next","200") -- NUMARUL DE MOBI PANA LA URMATORUL NIVEL DE MODIFICAT in 250
			d.set_regen_file("data/dungeon/snowdungeon/nivel_6.txt")
			d.notice("[Turnul lui Nemeres] Ai ajuns la nivelul 6")
			d.notice("[Turnul lui Nemeres] Trupele lu Nemeres au inceput sa se destrame")
			
		elseif d.getf("actual_round") == 6 then
			-- NIVEL 7
			d.jump_all(5120+304,1536+719)
			d.setf("actual_round",7)
			d.regen_file("data/dungeon/snowdungeon/nivel_7.txt")
			d.spawn_mob(6109, 326, 657)
			d.spawn_mob(6109, 302, 635)
			d.spawn_mob(6151, 282, 662)	
			
		elseif d.getf("actual_round") == 7 then
			-- NIVEL 8
			d.jump_all(5120+569,1536+642)
			d.setf("actual_round",8)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_8.txt")
			d.notice("[Turnul lui Nemeres] Ai ajuns la nivelul 8")
			
			
		elseif d.getf("actual_round") == 8 then
			-- NIVEL 9
			d.notice("[Turnul lui Nemeres] Ai ajuns la nivelul 9")
			d.jump_all(5120+848,1536+689)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_9.txt")	
			d.setf("actual_round",9)
		    d.spawn_mob(20399, 849, 659)
				    
		elseif d.getf("actual_round") == 9 then
			-- NIVEL 10 BOSS ROOM
			d.setf("used_statue", 0)
			d.spawn_mob(6191, 927, 323)
			d.jump_all(5120+928,1536+390)
			d.setf("actual_round",10)
			d.set_regen_file("data/dungeon/snowdungeon/nivel_10.txt")			
		end   
		snowdungeon.NoticeTime()
    end    
	
	function start()         
			d.set_regen_file("data/dungeon/snowdungeon/nivel_1.txt")
            d.setf("actual_round",1)
            d.setf("time", get_time()+60*60*1)
			d.setf("sd_kill_to_next",300) --------------------------------------------------- DE MODIFICAT LA FINAL in 300
            d.setf("kill_count_sd1",0)
            server_timer("snowdungeontime",3600,pc.get_map_index())
            --server_loop_timer("snowdungeontimenotice",300)
            snowdungeon.NoticeTime()
    end   
	
	when snowdungeontimenotice.server_timer begin
        if pc.get_map_index()<= 2405000 then
            snowdungeon.NoticeTime()
        end
    end
	function GetPillarID()
            if pc.get_local_x() >= 391 - 5 and pc.get_local_x() <= 391 + 5 and pc.get_local_y() >= 490 - 5 and pc.get_local_y() <= 490 + 5 then
                return 1
            elseif pc.get_local_x() >= 451 - 5 and pc.get_local_x() <= 451 + 5 and pc.get_local_y() >= 490 - 5 and pc.get_local_y() <= 490 + 5 then
                return 2
            elseif pc.get_local_x() >= 463 - 5 and pc.get_local_x() <= 463 + 5 and pc.get_local_y() >= 455 - 5 and pc.get_local_y() <= 455 + 5 then
                return 3
            elseif pc.get_local_x() >= 380 - 5 and pc.get_local_x() <= 380 + 5 and pc.get_local_y() >= 456 - 5 and pc.get_local_y() <= 456 + 5 then
                return 4
            elseif pc.get_local_x() >= 420 - 5 and pc.get_local_x() <= 420 + 5 and pc.get_local_y() >= 422 - 5 and pc.get_local_y() <= 422 + 5 then
                return 5
            else
                return false
			end
    end
	
	when snowdungeontime.server_timer begin
		if d.select(get_server_timer_arg()) then
			d.notice("Ai la dispozitie!")
			d.exit_all()
		end
    end
	when exit_snow.timer begin
		d.exit_all()
    end
	function NoticeTime()
            local secondsLeft = (d.getf("time") - get_time())
            local minutesLeft = math.ceil(secondsLeft / 60)
            d.notice("[Turnul lui Nemeres]Timp Ramas: "..minutesLeft.." Minute!")
    end
	function purge()
			d.kill_all()
			d.clear_regen()            
    end        
	-- FINAL DE QUEST
    end
end  
Link to comment
  • Answers 3
  • Created
  • Last Reply

Top Posters For This Question

Top Posters For This Question

3 answers to this question

Recommended Posts

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.