Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Komnata smoka - nie działa


Rekomendowane odpowiedzi

Opublikowano

Wgrałem tego questa: 

quest komnata_smoka begin
	state start begin
		function main()
			say_title(mob_name(npc.race)..":")
			say("Chcesz wejść do Komnaty Smoka?")
			say("Oczywiście, tylko musisz spełniać ")
			say("odpowiednie warunki.")
			say()
			say_reward("Na pewno chcesz tam wejść?")
			local s = select("Chcę tam wejść!","Jakie muszę spełniać warunki?","Anuluj")
			if s == 1 then
				komnata_smoka.tp()
			elseif s == 2 then
				komnata_smoka.rules()
			end
		end
		function tp()
			if pc.getqf("metiny_bonus") > get_time() then
				say_title(mob_name(npc.race)..":")
				say("Musisz jeszcze odczekać swój limit!")
				local time = (pc.getqf("metiny_bonus") - get_time()) / 3600
				local h = math.floor(time)
				local min = (time - h)*60
				local m = math.floor(min)
				say_title("Pozostały czas: "..h.." godzin, "..m.." min.")
				return
			end
			 if pc.level < 80 then
				 say_title(mob_name(npc.race)..":")
				 say("Nie masz 80 poziomu!")
			 else
				 if !party.is_party() then
					 say_title(mob_name(npc.race)..":")
					 say("Nie jesteĹ› w grupie!")
				 else
					 if party.get_near_count() < 2 then
						 say_title(mob_name(npc.race)..":")
						 say("Twoja grupa musi mieć przynajmniej 2 osoby!")
					 else
						 if pc.count_item(70023) < 1 then
							 say_title(mob_name(npc.race)..":")
							 say("Potrzebujesz tego przedmiotu:")
							 say_item_vnum(70023)
						 else
							say_title(mob_name(npc.race)..":")
							say("Zostaniecie przeniesieni.")
							wait()
							pc.setqf("komnata_smoka", 1)
							pc.setqf("komnata_smoka_count", party.get_near_count())
							d.join(208)
						 end
					 end
				 end
			 end
		end
		function rules()
			say_title(mob_name(npc.race)..":")
			say("Oto zasady obowiÄ…zujÄ…ce w Komnacie Smoka.")
			say_reward("1. Poziom")
			say("Musisz mieć przynajmniej 80 poziom postaci.")
			say_reward("2. Grupa")
			say("Musisz mieć przynajmniej 2 osobową grupę i być jej liderem.")
			say_reward("3. Przedmiot.")
			say("Musisz mieć przedmiot:")
			say_item_vnum(70023)
			if select("Wstecz","Anuluj") == 1 then
				komnata_smoka.main()
			end
		end
		when 30122.chat."Komnata Smoka" begin
			komnata_smoka.main()
		end
		when login with pc.in_dungeon() and pc.getqf("komnata_smoka") == 1 and pc.get_map_index() >= 208*10000 and pc.get_map_index() < 209*10000 begin
			d.notice("Witajcie w Komnacie Smoka!")
			d.notice("Waszym pierwszym celem będzie rozbicie czterech metinów.")
			d.notice("Po zabiciu ich dostaniecie 10% przeciwko potworom na czas trwania wyzwania.")
			d.notice("Powodzenia!")
			d.regen_file("data/dungeon/komnata_smoka_metiny.txt")
			pc.setqf("komnata_smoka", 0)
			d.setf("metiny", 0)
			pc.setqf("is_in_dc", 1)
			pc.setqf("dc_time1", get_time())
		end
		when kill or party_kill with npc.race == 8027 and pc.get_map_index() >= 208*10000 and pc.get_map_index() < 209*10000 begin
			d.setf("metiny", d.getf("metiny")+1)
			if d.getf("metiny") < 4 then
				d.notice("Pozostało wam do zabicia jeszcze "..4-d.getf("metiny").."!")
			elseif d.getf("metiny") == 4 then
				d.notice("Udało Wam się zniszczyć metiny! Dostajecie bonus na 30 minut.")
				d.notice("Za 10 sekund pojawi się główny przeciwnik. Przygotujcie się!")
				timer("komnata", 10)
				d.setf("metiny", 0)
			end
		end
		when komnata.timer begin
			affect.add_collect(63, 10, 60*30)
			pc.setqf("metiny_bonus", get_time()+60*30)
			d.notice("Otrzymaliście bonus. Smok właśnie się pojawił!")
			d.regen_file("data/dungeon/komnata_smoka_beran.txt")
			timer("beran", 60*10)
		end
		when beran.timer begin
			d.notice("Pozostało 20 minut!")
			timer("beran2", 60*10)
		end
		when beran2.timer begin
			d.notice("Pozostało 10 minut!")
			timer("beran3", 60*5)
		end
		when beran3.timer begin
			d.notice("Pozostało 5 minut!")
			timer("beran4", 60*4)
		end
		when beran4.timer begin
			d.notice("Pozostała minuta!")
			timer("beran5", 60)
		end
		when beran5.timer begin
			d.notice("Nie udało Wam się zabić smoka. Zostaniecie przeniesieni do miasta.")
			npc.purge()
			timer("beran6", 5)
		end
		when beran6.timer begin
			d.exit_all_to_start_position()
		end
		when kill or party_kill with npc.race == 2493 and pc.get_map_index() >= 208*10000 and pc.get_map_index() < 209*10000 begin
			d.notice("Udało Wam się zabić smoka!")
			d.notice("Macie 30 sekund na uzbieranie dropu.")
			d.notice("Po 30 sekundach zostaniecie przeniesieni do miasta.")
			timer("beran_out", 30)
			pc.setqf("dc_time2", get_time())
		end
		when beran_out.timer begin
			d.exit_all_to_start_position()
			pc.setqf("is_in_dc", 0)
			pc.setqf("dc_time", pc.getqf("dc_time2")-pc.getqf("dc_time1"))
			local time = pc.getqf("dc_time")/60
			local m = math.floor(time)
			local s0 = (time - m)*60
			local s = math.floor(s0)
			say_title(locale.servername.." ~ Komnata Smoka")
			say("Gratulujemy "..pc.name.."!")
			say("Ty oraz Twoja grupa pokonaliście Smoka")
			say("W czasie "..m.." minut i "..s.." sekund!")
			notice_all("<<Komnata Smoka>> Gracz "..pc.name.." <"..pc.level.." lv> ukończył wyzwanie z czasem "..m.." minut i "..s.." sekund!")
			pc.delqf("komnata_smoka_count")
		end
		when login or logout with pc.in_dungeon() and pc.getqf("is_in_dc") == 1 and pc.get_map_index() != 208*10000 begin
			d.exit_all_to_start_position()
			pc.delqf("komnata_smoka_count")
			pc.setqf("komnata_smoka", 0)
			pc.setqf("is_in_dc", 0)
			d.setf("metiny", 0)
		end
	end
end

I po wpisaniu w konsoli /q wyskakuje błąd: "Abort trap (core dumped) Error occurred on compile!"

 

Ma ktoś jakiś pomysł jak rozwiązać ten problem?

 

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...