Quest Cadou Theowahdan cu timp

Avatar utilizator
l3oogieee
Nou Venit

Nou Venit
Mesaje: 13
Membru din: 16 Mai 2024, 21:28
Regat: Jinno
Aprecieri: 13  
Mulţumiri: 0
  Rezolvări prob.: 1
Medalii

Nume: Cadou Theowahdan Panza Fina

Imagini:
Imagine
Imagine
Imagine
Imagine
Imagine
Descriere: Acest quest este facut de mine si permite player ului sa revendice un cadou odata la cat timp ii setezi tu din quest, cadoul si npc ul pot fi modificate cat si timpul de asteptare, aveti descriere in cod unde puteti modifica si ce puteti modifica , poate fi adaptat la orice npc, item si timp de astepare(in secunde), afiseaza timpul ramas in ore minute si secunde, tin sa mentionez ca eu am pus si o conditie de nivel 40 care poate fi scoasa ....

Quest:

Cod: Selectaţi tot

quest panza_fina_40 begin
		state start begin
			when levelup or login with pc.get_level() >= 40 begin
				if pc.getqf(mesaj_level40_theowahdan) == 0 then
					say("Se pare ca ai o scrisoare de la Theowahdan.")
				else 
					pc.setqf(mesaj_level40_theowahdan, 1)
				end
					set_state("mergi_la_Theowahdan")
			end
		end
		state mergi_la_Theowahdan begin
			when letter begin
						local v = find_npc_by_vnum(20406) 
				if v != 0 then 
						target.vid("__TARGET__", v, "Surpriza lui Theowahdan") 
						send_letter("Surpriza lui Theowahdan")
				end
			end
			when button or info begin
									say("Te astept pe la mine pentru a vorbi despre meritele tale.")
									say("De asemenea am si o surpriza pregatita pentru tine, asa ca haide cat mai repede, te astept!")
						
			end
			when __TARGET__.target.click or 20406.chat."Cadou Panza Fina" begin 
								
					if pc.get_level() < 40 then
								
								say_size(260, 165)
								say_rosu("Avertizare!!!")
								say_auriu("Nu ma poti pacali, ai nivelul "..pc.get_level().."![ENTER]Crezi ca eu nu vad ce nivel ai?[ENTER]Te iert de data asta dar am rugamintea[ENTER]Sa treci mai intai prin toate etapele ca si ceilalti[ENTER]Atinge nivelul 40 si vom mai discuta, te astet cu drag!")
					
					else
						clear_letter("Surpriza lui Theowahdan")
						target.delete("__TARGET__")
							local ultima_revendicare = pc.getqf("esarfa_ultima_revendicare") or 0
							local urmatoarea_revendicare = 4 * 3600 --[[(4 ore) setezi cat sa astepte pana la urmatorul premiu in secunde sau calcul matematic... 2 * 3600 inseamna 2 ore adica 1 ora este 3600 secunde,
															     altfel se mai poate si in zile 3 * 24 * 3600 adica 3 zile a cate 24 ore o zi si cate o ora 3600 secunde si tot asa mai departe
															     1 luna 1 * 30 * 24 * 3600 .... 1 luna inseamna 30 zile +- (depinde de luna) a cate 24 de ore per zi si a cate 3600 scunde per ora....]]--
							pc.setqf("esarfa_urmatoarea_revendicare", urmatoarea_revendicare)
							local timp_curent = os.time()
							local timp_de_la_ultima_revendicare = timp_curent - ultima_revendicare
							

				if timp_de_la_ultima_revendicare >= urmatoarea_revendicare then
								pc.give_item2(85000, 5)
								say("Theowahdan:")
								say_auriu("Iata cele 5 bucati de Panza Fina cadou!")
								say_item_vnum(85000)
								wait()
								say_title("Revino peste 4 ore.")
								pc.setqf("esarfa_ultima_revendicare", timp_curent)
								-- Resetarea timpului in state-ul check_interval
								pc.setqf("esarfa_ultima_revendicare_check_interval", 0)
				else
								local timp_ramas = urmatoarea_revendicare - timp_de_la_ultima_revendicare
								local ore = math.floor(timp_ramas / 3600)
								local minute_ramase = timp_ramas - (ore * 3600)
								local minute = math.floor(minute_ramase / 60)
								local secunde_ramase = timp_ramas - (ore * 3600) - (minute * 60)
								local secunde = math.floor(secunde_ramase)
								say("Theowahdan:")
								say("Se pare ca te-ai intors mai devreme decat ti-am spus, uite mai jos cat mai ai de asteptat!")
								say(string.format("Mai ai de asteptat: %02d ore <-> %02d minute <-> %02d secunde!", ore, minute, secunde))
					end
				end 
			end
		end
end
Tutorial instalare quest:
  • Salvaţi conţinutul quest-ului într-un fişier text numit de exemplu nume_quest.quest/.lua
  • Vă conectaţi la filezilla / winscp şi întrati în /usr/home/game/share/locale/germany/quest (depinde ce server aveţi).
  • Îl puneţi acolo (să fie .quest sau .lua).
  • Vă logaţi în FreeBSD / putty şi scrieţi în felul următor: cd /usr/home/game/share/locale/germany/quest (depinde ce server aveţi) apoi ./qc nume_quest.quest/.lua
  • Intraţi pe server şi scrieţi /reload q
  • Testaţi quest-ul.
Răspunde
Răspunsuri
3
Vizualizări
934
Răspunsuri
10
Vizualizări
5512
Răspunsuri
10
Vizualizări
621
Răspunsuri
7
Vizualizări
993

Înapoi la “Quest-uri”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 2 vizitatori