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

Fabularny - Na początek gry


Phoenix.

Rekomendowane odpowiedzi

Opublikowano

Witajcie.

Dzisiaj z nudów napisałem sobie takiego questa:

 

 

----------------------------------
--- Quest by Syn3k/PhoEnix9332 ---
--- Specjalnie dla SeductionMT2 --
----------------------------------
quest seduction begin
	state start begin
		when login or levelup with pc.level >= 5 begin
			set_state(handlarka)
		end
	end

	state handlarka begin
		when letter begin
			local v = find_npc_by_vnum(9003)
			if v != 0 then
			target.vid("__TARGET__", v, "Handlarka Różnościami")
			end
			send_letter("Pomoc I - Handlarka!")
		end

		when button or info begin
			say_title("Pomoc I: ")
			say("")
			say("Udaj się do pierwszego miasta")
			say("i zgłoś się do Handlarki Różnościami. ")
			say("Podobno ma dla Ciebie zadanie. ")
		end

		when __TARGET__.target.click or
		9003.chat."Zadanie" begin
		target.delete("__TARGET__")
			say_title("Handlarka Różnościami: ")
			say("")
			say("Witaj! Potrzebuję abyś załatwił ")
			say("dla mnie sforę niegrzecznych piesków.")
			say("Następnie udaj się do mojego ojca:")
			say_reward("  - Handlarza Zbrojami.")
			say("")
			say("Przyjmujesz to zadanie?")
			say("")
			say_reward("Pamiętaj, że na wykonanie zadania masz tylko 25 minut!")
			local s = select("Tak", "Nie dam rady...")
				if s == 1 then
					say_title("Handlarka Różnościami: ")
					say("")
					say("Wspaniale! ")
					say("Resztę informacji znajdziesz w liście ode mnie. ")
					say("")
					set_state(akceptacja)
					timer("misja", 25*60)
				elseif s == 2 then
					say_title("Handlarka Różnościami: ")
					say("")
					say("Pff.. Nie to nie.")
					say("Żegnam.")
					set_state(koniec)
				end
		end
	end

	state akceptacja begin
		when letter begin
			send_letter("Pomoc I - Psy")
		end
		
		when button or info begin
			say_title("List od Handlarki: ")
			say("")
			say("Udaj się do pierwszego miasta.")
			say("Musisz zabić dla mnie aż 10 niesfornych")
			say("psich zwierząt. Zostaniesz wspaniale nagrodzony!")
			say("")
			say_reward("Zabij 10x:")
			say("  - Dziki Pies.")
			say("")
			say_title("Do tej pory zabiłeś "..pc.getqf("piesel").." / 10 Psów.")
		end
		
		when kill with npc.get_race() == 101 begin
			pc.setqf("piesel", pc.getqf("piesel")+1)
				if pc.getqf("piesel") == 10 then
					say_reward("Brawo, udało się!")
					say("")
					say("Udaj się do mojego ojca, aby przekazać mu")
					say("tę wspaniałą nowinę!")
				end
		end
				
		when letter begin
			local v = find_npc_by_vnum(9008)
			if v != 0 then
			target.vid("__TARGET__", v, "Handlarz Zbrojami")
			end
		end

		when __TARGET__.target.click or
		9008.chat."Pomoc" begin
		target.delete("__TARGET__")
			say_title("Handlarz Zbrojami: ")
			say("")
			say("Świetnie, udało Ci się pokonać dzikie bestie.")
			say("Teraz mam dla Ciebie coś nieco trudniejszego.")
			say("Niestety, nie możesz się z tego wycofać.")
			say("")
			say("Musisz odwiedzić krainę miasta drugiego.")
			say("Są tam potwory, które nie dają mi spokoju.")
			say("")
			say_reward("Zabij 20x:")
			say("  - Dziki Sługa")
			set_state(akcept2)
		end
	end

	state akcept2 begin
		when letter begin
			send_letter("Pomoc II - Sługusy")
		end
		
		when button or info begin
			say_title("List od Handlarza: ")
			say("")
			say("Udaj się do drugiego miasta.")
			say("Musisz zabić dla mnie aż 20 nieposkromionych")
			say("bestii. Zostaniesz wspaniale nagrodzony!")
			say("")
			say_reward("Zabij 20x:")
			say("  - Dziki Sługa.")
			say("")
			say_title("Do tej pory zabiłeś "..pc.getqf("dzikus").." / 20 Dzikich Sług.")
		end
		
		when kill with npc.get_race() == 502 begin
			pc.setqf("dzikus", pc.getqf("dzikus")+1)
				if pc.getqf("dzikus") == 20 then
					say_reward("Brawo, udało się!")
					say("")
					say("Udaj się do mojej córki, aby przekazać jej")
					say("tę wspaniałą nowinę!")
				end
		end

		when letter begin
			local v = find_npc_by_vnum(9003)
			if v != 0 then
			target.vid("__TARGET__", v, "Handlarka Różnościami")
			end
		end

		when __TARGET__.target.click or
		9003.chat."Pomoc II" begin
		target.delete("__TARGET__")
			say_title("Handlarka Różnościami: ")
			say("")
			say("Świetnie, udało Ci się pokonać dzikie bestie.")
			say("To by było na tyle.")
			say("Cieszę się, że chciało Ci się wykonywać dla mnie misje.")
			say("Jak obiecałam - zostaniesz sowicie nagrodzony!")
			pc.give_item2(xxx, 1)
			pc.give_item2(xxx, 1)
			pc.give_item2(xxx, 1)
			clear_timer("misja")
			notice("[QUEST] Gratulacje! Misja wykonana. Wbijaj poziomy dalej i zgłaszaj się po kolejne wyzwania!")
		end

		when misja.timer begin
			syschat("[INFORMACJA] Czas na wykonanie zadania minął! Quest przepada, przykro mi..")
			pc.delqf("piesel")
			pc.delqf("dzikus")
			set_state(konieec)
		end
	state konieec begin
	end

	end
	state koniec begin
	end
end

 

 

 

http://wklej.to/DWEBg

 

Nie jest to rewelacja Lua, natomiast... może komuś się przyda.

Quest nie jest nudny (tak myślę), bo jest co robić (można go urozmaicić dodając lekkie drobiazgi).

 

Nie wiem szczerze jak zachowają się tutaj funkcje timera i qf'ów (bo nie mam jak tego sprawdzić/skorygować), ale myślę, że problemów większych nie będzie (zawsze można timer wypieprzyć :D).

Jeśli znaleźliście jakiś błąd - dajcie znać, szybko poprawię.

Pozdrawiam.

727881401622271220780.jpeg
Opublikowano

czas mozesz zrobic w taki sposob

 

 

q.set_clock("Misja:", pc.getqf("misja")-get_time())

 

wczesniej zamiast timera to

 

pc.setqf("misja", get_time()+30*60)

 

i jeszce musisz pododawac

if get_time()>=pc.getqf("misja") then

set_state(koniec)

 

state failure begin
when letter begin
makequestbutton("Misja zakończona niepowodzeniem!")
q.set_title("Misja zakończona niepowodzeniem!")
q.start()
end
Wtedy wyskoczy ci letter w którym bedziesz mial odliczany czas, mozliwe ze cos pominelem

aFMA3pg.png

Opublikowano

 

czas mozesz zrobic w taki sposob

 

 

q.set_clock("Misja:", pc.getqf("misja")-get_time())

 

wczesniej zamiast timera to

 

pc.setqf("misja", get_time()+30*60)

 

i jeszce musisz pododawac

if get_time()>=pc.getqf("misja") then

set_state(koniec)

 

state failure begin
when letter begin
makequestbutton("Misja zakończona niepowodzeniem!")
q.set_title("Misja zakończona niepowodzeniem!")
q.start()
end
Wtedy wyskoczy ci letter w którym bedziesz mial odliczany czas, mozliwe ze cos pominelem

Jeśli wg Ciebie mój quest działa, to nie będę nic w nim grzebał bo coś spiernicze :D

Aczkolwiek Twoją radę postaram się zapamiętać i używać w dalszych questach :)

727881401622271220780.jpeg
Opublikowano

Hehe ja go sprawdze i sprawdze też sposób który dał Isair i będzie pewność :3 hm no chyba że ktoś mnie wyprzedzi :c

Pozdrawiam.

Pomogłem ? klik up to Like ;D ( Lubię to ! ) xD

300 postów-> 10.10.2013 godz. 9:00
400 postów-> 19.10.2013 godz. 9:00

 

Opublikowano

 

czas mozesz zrobic w taki sposob

 

 

q.set_clock("Misja:", pc.getqf("misja")-get_time())

 

wczesniej zamiast timera to

 

pc.setqf("misja", get_time()+30*60)

 

i jeszce musisz pododawac

if get_time()>=pc.getqf("misja") then

set_state(koniec)

 

state failure begin
when letter begin
makequestbutton("Misja zakończona niepowodzeniem!")
q.set_title("Misja zakończona niepowodzeniem!")
q.start()
end
Wtedy wyskoczy ci letter w którym bedziesz mial odliczany czas, mozliwe ze cos pominelem

A to nie state koniec powinno być? :v

gwo9.jpg


Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...