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

Pisanie / Poprawa Questów !


PoczatKujacy

Rekomendowane odpowiedzi

  • Odpowiedzi 8,7 tys.
  • Dodano
  • Ostatniej odpowiedzi
Opublikowano

Pomoże ktoś z tym?:P

 

 

 

 

Siema mam problem chce by nowe mapy miały nazwy np: Stare bagno-140lv Tu mam napisane jak to dokładnie ma wygladać:PP

Miasto Duchów-100lv

Wu-Tei-115lv

Ziemia Zombie-135lv

Śródziemie-160lv

Stare Bagno-190lv

Klasztor-220lv

 

I proszę żeby nie tylko tak pisało ale tak było ;P

Za pomoc daje + i 5

 

Link do nowe.quest : http://www.speedyshare.com/file/y2Z2z/nowe.quest

 

 

Opublikowano

 

quest dugeon begin
    state start begin
		    when 20017.chat."Bicie mobów" begin
				    say_title("Bicie mobów")
				    say("Pamiętaj żeby przenieść się na mapę musisz mieć min. 50 lvl")
				    say("Przenieść cię na mapę ??")
				    local s = select("TAK","NIE")
				    if s == 1 then

				    else
						    return
				    end
				    if pc.get_level() < 50 then
						    say("Musisz mieć min. 50 lvl żeby wejść.")
						    return
				    elseif party.is_leader() then
						    say("Nie możesz mieć pt")
						    return
				    else
						    say("OK zaraz cię przeniosę ")
						    say("Wybierz sobie jeden bonus")
				    end
				    local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie", "Nie chce")
				    if bony == 1 then
						    affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60)
				    elseif bony == 2 then
						    affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
				    elseif bony == 3 then
						    affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
				    elseif bony == 4 then
						    affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
				    elseif bony == 5 then
				    end
				    d.join(12)
				    pc.setqf("dungeon", 1)
		    end

		    when login with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
				    if pc.getqf("dungeon") > 0 then
						    pc.setqf("dungeon", 0)
						    d.notice("Witaj na mapie.")
						    d.notice("Porozwalj moby...")
						    d.spawn_mob(691, 10000, 9900)
						    pc.setqf("time1", get_time())
				    end
		    end

		    when 691.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
				    d.notice("Pokonałeś Wodz Orkow")
				    d.notice("Zaraz pojawi się Elitarny Wodz Orkow")
				    d.spawn_mob(692, 10000, 9900)
		    end

		    when 692.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
				    d.notice("Pokonałeś Elitarny Wodz Orkow")
				    d.notice("Zaraz pojawi się Umarly Rozpruwacz")
				    d.spawn_mob(1093, 10000, 9900)
		    end

		    when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
				    d.notice("Pokonałeś Umarłego Rozpruwacza")
				    d.notice("Zaraz pojawi się Niebieska Smierc")
				    d.spawn_mob(1095, 10000, 9900)
		    end

		    when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
				    d.notice("Pokonałeś Niebieską Smierc")
				    d.notice("Zaraz pojawi się Lodowa Wiedzma")
				    d.spawn_mob(1191, 10000, 9900)
		    end

		    when 1191.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
				    d.notice("Pokonałeś Lodową Wiedzme")
				    d.notice("Zaraz pojawi się Silna Lodowa Wiedzma")
				    d.spawn_mob(1192, 10000, 9900)
		    end

		    when 1192.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
				    d.notice("Pokonałeś Silną Lodowa Wiedzme")
				    d.notice("Pokonałeś już wszystkich.")
				    pc.setqf("time2", get_time())
				    pc.setqf("bicie_mobow", 3)
				    timer("dowidzenia", 10)
				    affect.remove()
		    end

		    when dowidzenia.timer begin
				    d.exit_all()
		    end

		    when login with pc.getqf("bicie_mobow") == 3 begin
				    pc.setqf("bicie_mobow", 0)
				    local x = pc.getqf("time")
				    local y = pc.getqf("time2")
				    local diff = pc.setqf("time3", y-x)
				    if y-x > 60 then
						    say("Twój czas to: "..diff/60.." minut.")
				    else
						    say("Twój czas to: "..diff.." sekund.")
				    end
		    end
    end
end

 

 

Niech ktoś poprawi tego questa.

 

Błąd:

Nie pojawia się okno rozmowy u NPC.

Opublikowano

@Vatu

 

 

quest dugeon begin
		state start begin
						when 20017.chat."Bicie mobów" begin
										say_title("Bicie mobów")
										say("Pamiętaj żeby przenieść się na mapę musisz mieć min. 50 lvl")
										say("Przenieść cię na mapę?? ")
										local s = select("TAK","NIE")
										if s == 1 then

										else
														return
										end
										if pc.get_level() < 50 then
														say("Musisz mieć min. 50 lvl żeby wejść. ")
														return
										elseif party.is_leader() then
														say("Nie możesz mieć pt")
														return
										else
														say("OK zaraz cię przeniosę  ")
														say("Wybierz sobie jeden bonus")
										end
										local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie", "Nie chce")
										if bony == 1 then
														affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60)
										elseif bony == 2 then
														affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
										elseif bony == 3 then
														affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
										elseif bony == 4 then
														affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
										elseif bony == 5 then
										end
										d.join(12)
										pc.setqf("dungeon", 1)
						end

						when login with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										if pc.getqf("dungeon") > 0 then
														pc.setqf("dungeon", 0)
														d.notice("Witaj na mapie. ")
														d.notice("Porozwalj moby... ")
														d.spawn_mob(691, 10000, 9900)
														pc.setqf("time1", get_time())
										end
						end

						when 691.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Wodz Orkow")
										d.notice("Zaraz pojawi się Elitarny Wodz Orkow")
										d.spawn_mob(692, 10000, 9900)
						end

						when 692.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Elitarny Wodz Orkow")
										d.notice("Zaraz pojawi się Umarly Rozpruwacz")
										d.spawn_mob(1093, 10000, 9900)
						end

						when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Umarłego Rozpruwacza")
										d.notice("Zaraz pojawi się Niebieska Smierc")
										d.spawn_mob(1095, 10000, 9900)
						end

						when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Niebieską Smierc")
										d.notice("Zaraz pojawi się Lodowa Wiedzma")
										d.spawn_mob(1191, 10000, 9900)
						end

						when 1191.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Lodową Wiedzme")
										d.notice("Zaraz pojawi się Silna Lodowa Wiedzma")
										d.spawn_mob(1192, 10000, 9900)
						end

						when 1192.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Silną Lodowa Wiedzme")
										d.notice("Pokonałeś już wszystkich. ")
										pc.setqf("time2", get_time())
										pc.setqf("bicie_mobow", 3)
										timer("dowidzenia", 10)
										affect.remove()
						end

						when dowidzenia.timer begin
										d.exit_all()
						end

						when login with pc.getqf("bicie_mobow") == 3 begin
										pc.setqf("bicie_mobow", 0)
										local x = pc.getqf("time")
										local y = pc.getqf("time2")
										local diff = pc.setqf("time3", y-x)
										if y-x > 60 then
														say("Twój czas to: "..diff/60.." minut. ")
										else
														say("Twój czas to: "..diff.." sekund. ")
										end
						end
		end
end

 

 

Mógł by mi ktoś dodać tutaj nazwy bonusów typu: affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60) Wiem że gdzieś wszystkie były, ale znaleźć nie mogę...

Opublikowano

@Vatu

 

 

quest dugeon begin
		state start begin
						when 20017.chat."Bicie mobów" begin
										say_title("Bicie mobów")
										say("Pamiętaj żeby przenieść się na mapę musisz mieć min. 50 lvl")
										say("Przenieść cię na mapę?? ")
										local s = select("TAK","NIE")
										if s == 1 then

										else
														return
										end
										if pc.get_level() < 50 then
														say("Musisz mieć min. 50 lvl żeby wejść. ")
														return
										elseif party.is_leader() then
														say("Nie możesz mieć pt")
														return
										else
														say("OK zaraz cię przeniosę  ")
														say("Wybierz sobie jeden bonus")
										end
										local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie", "Nie chce")
										if bony == 1 then
														affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60)
										elseif bony == 2 then
														affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
										elseif bony == 3 then
														affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
										elseif bony == 4 then
														affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
										elseif bony == 5 then
										end
										d.join(12)
										pc.setqf("dungeon", 1)
						end

						when login with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										if pc.getqf("dungeon") > 0 then
														pc.setqf("dungeon", 0)
														d.notice("Witaj na mapie. ")
														d.notice("Porozwalj moby... ")
														d.spawn_mob(691, 10000, 9900)
														pc.setqf("time1", get_time())
										end
						end

						when 691.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Wodz Orkow")
										d.notice("Zaraz pojawi się Elitarny Wodz Orkow")
										d.spawn_mob(692, 10000, 9900)
						end

						when 692.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Elitarny Wodz Orkow")
										d.notice("Zaraz pojawi się Umarly Rozpruwacz")
										d.spawn_mob(1093, 10000, 9900)
						end

						when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Umarłego Rozpruwacza")
										d.notice("Zaraz pojawi się Niebieska Smierc")
										d.spawn_mob(1095, 10000, 9900)
						end

						when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Niebieską Smierc")
										d.notice("Zaraz pojawi się Lodowa Wiedzma")
										d.spawn_mob(1191, 10000, 9900)
						end

						when 1191.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Lodową Wiedzme")
										d.notice("Zaraz pojawi się Silna Lodowa Wiedzma")
										d.spawn_mob(1192, 10000, 9900)
						end

						when 1192.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
										d.notice("Pokonałeś Silną Lodowa Wiedzme")
										d.notice("Pokonałeś już wszystkich. ")
										pc.setqf("time2", get_time())
										pc.setqf("bicie_mobow", 3)
										timer("dowidzenia", 10)
										affect.remove()
						end

						when dowidzenia.timer begin
										d.exit_all()
						end

						when login with pc.getqf("bicie_mobow") == 3 begin
										pc.setqf("bicie_mobow", 0)
										local x = pc.getqf("time")
										local y = pc.getqf("time2")
										local diff = pc.setqf("time3", y-x)
										if y-x > 60 then
														say("Twój czas to: "..diff/60.." minut. ")
										else
														say("Twój czas to: "..diff.." sekund. ")
										end
						end
		end
end

 

 

Mógł by mi ktoś dodać tutaj nazwy bonusów typu: affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60) Wiem że gdzieś wszystkie były, ale znaleźć nie mogę...

Dalej nie działa :D

Opublikowano

MAX_HP
MAX_SP
CON
INT
STR
DEX
ATT_SPEED
MOV_SPEED
CAST_SPEED
HP_REGEN
SP_REGEN
POISON_PCT
STUN_PCT
SLOW_PCT
CRITICAL_PCT
PENETRATE_PCT
ATTBONUS_HUMAN	
ATTBONUS_ANIMAL	
ATTBONUS_OR
ATTBONUS_MILGYO
ATTBONUS_UNDEAD
ATTBONUS_DEVIL
STEAL_HP
STEAL_SP
MANA_BURN_PCT
BLOCK
DODGE
RESIST_SWORD
RESIST_TWOHAND
RESIST_DAGGER
RESIST_BELL
RESIST_FAN
RESIST_BOW
RESIST_FIRE
RESIST_ELEC
RESIST_MAGIC
RESIST_WIND
REFLECT_MELEE
POISON_REDUCE
EXP_DOUBLE_BONUS
GOLD_DOUBLE_BONUS
ITEM_DROP_BONUS
IMMUNE_STUN
IMMUNE_SLOW
ATT_GRADE_BONUS
MAGIC_DEF_GRADE

 

Pewno w ftp jest więcej tego, ale nie chce mi się już logować, wybacz.

Zbliżamy się ku końcowi.

 

95/100 %

 

Żegnaj MPC Forum

Opublikowano

Czy ktoś pomoże

 

Witam napisze mi ktoś prostego dungeona polegającego na tym ze teleportujemy się do katakumb na mapkę np z pentagramem i mamy rozwalać metki 8032 będzie ich np 5 i będą się repic co 10s i mamy 10min na dropniecie itemu.Po naciśnięciu itemu zrespi się mob 2529 Śmierci i po zabiciu śmierci mamy 2min na zebranie dropu

i po 2min teleportuje do komnaty Kościelca (tego nowego bossa) w komacie będzie boss jeszcze nie znam id ale np niech będzie 2014

quest ma być u npc 9992

 

Opublikowano

Siemaa !!

 

Mógłby ktoś napisać takie questa w którym . Na start otrzymujemy : Podstawowy Ekwipunek dla danej postaci +9 , Pierścień Teleportacji , 21 poziom konia , Przywołanie konia na 10 , Księga przywołania Militara , Buty Wiatru . Bez żadnego powitania itp , poprostu po zalogowaniu to otrzymujemy =) Najlepiej jakby quest był sprawdzony .

Dam 2x Lajk , oraz 5*

Administrator Serwera Pantheons

Opublikowano

a spróbuj zamiast

when 20239.chat."Bicie mobów" begin

dać

when 20239.click begin

 

 

@Vatu zobacz teraz

 

quest dugeon begin
state start begin
	when 20017.chat."Bicie mobów" begin
		say_title("Bicie mobów")
		say("Pamiętaj żeby przenieść się na mapę musisz mieć min. 50 lvl")
		say("Przenieść cię na mapę ??")
		local s = select("TAK","NIE")
		if s == 1 then

		else
			return
		end
		if pc.get_level() < 50 then
			say("Musisz mieć min. 50 lvl żeby wejść.")
			return
		elseif party.is_leader() then
			say("Nie możesz mieć pt")
			return
		else
			say("OK zaraz cię przeniosę ")
			say("Wybierz sobie jeden bonus")
		end
		local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie", "Nie chce")
		if bony == 1 then
			affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60)
		elseif bony == 2 then
			affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
		elseif bony == 3 then
			affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
		elseif bony == 4 then
			affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
		elseif bony == 5 then
		end
		d.join(12)
		pc.setqf("dungeon", 1)
	end

	when login with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		if pc.getqf("dungeon") > 0 then
			pc.setqf("dungeon", 0)
			d.notice("Witaj na mapie.")
			d.notice("Porozwalj moby...")
			d.spawn_mob(691, 10000, 9900)
			pc.setqf("time1", get_time())
		end
	end

	when 691.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Wodz Orkow")
		d.notice("Zaraz pojawi się Elitarny Wodz Orkow")
		d.spawn_mob(692, 10000, 9900)
	end

	when 692.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Elitarny Wodz Orkow")
		d.notice("Zaraz pojawi się Umarly Rozpruwacz")
		d.spawn_mob(1093, 10000, 9900)
	end

	when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Umarłego Rozpruwacza")
		d.notice("Zaraz pojawi się Niebieska Smierc")
		d.spawn_mob(1095, 10000, 9900)
	end

	when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Niebieską Smierc")
		d.notice("Zaraz pojawi się Lodowa Wiedzma")
		d.spawn_mob(1191, 10000, 9900)
	end

	when 1191.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Lodową Wiedzme")
		d.notice("Zaraz pojawi się Silna Lodowa Wiedzma")
		d.spawn_mob(1192, 10000, 9900)
	end

	when 1192.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Silną Lodowa Wiedzme")
		d.notice("Pokonałeś już wszystkich.")
		pc.setqf("time2", get_time())
		pc.setqf("bicie_mobow", 3)
		timer("dowidzenia", 10)
		affect.remove()
	end

	when dowidzenia.timer begin
		d.exit_all()
	end

	when login with pc.getqf("bicie_mobow") == 3 begin
		pc.setqf("bicie_mobow", 0)
		local x = pc.getqf("time")
		local y = pc.getqf("time2")
		local diff = pc.setqf("time3", y-x)
		if y-x > 60 then
			say("Twój czas to: "..diff/60.." minut.")
		else
			say("Twój czas to: "..diff.." sekund.")
		end
	end
end
end

 

 

Pozdrawiam.

if cos == 1 then
instrukcja
end, else, elseif czy coś ...

a u Ciebie jest :

if cos == 1 then
pusto
elseif cos == 2 then
wroc
koniec

i potem dopiero sprawdza warunki (intrukcje)

 

Co do bonusów :

 

["MAX_HP"] = 1,
["MAX_SP"] = 2,
["CON"] = 3,
["INT"] = 4,
["STR"] = 5,
["DEX"] = 6,
["ATT_SPEED"] = 7,
["MOV_SPEED"] = 8,
["CAST_SPEED"] = 9,
["HP_REGEN"] = 10,
["SP_REGEN"] = 11,
["POISON_PCT"] = 12,
["STUN_PCT"] = 13,
["SLOW_PCT"] = 14,
["CRITICAL_PCT"] = 15,
["PENETRATE_PCT"] = 16,
["ATTBONUS_HUMAN"] = 17,
["ATTBONUS_ANIMAL"] = 18,
["ATTBONUS_ORC"] = 19,
["ATTBONUS_MILGYO"] = 20,
["ATTBONUS_UNDEAD"] = 21,
["ATTBONUS_DEVIL"] = 22,
["STEAL_HP"] = 23,
["STEAL_SP"] = 24,
["MANA_BURN_PCT"] = 25,
["DAMAGE_SP_RECOVER"] = 26,
["BLOCK"] = 27,
["DODGE"] = 28,
["RESIST_SWORD"] = 29,
["RESIST_TWOHAND"] = 30,
["RESIST_DAGGER"] = 31,
["RESIST_BELL"] = 32,
["RESIST_FAN"] = 33,
["RESIST_BOW"] = 34,
["RESIST_FIRE"] = 35,
["RESIST_ELEC"] = 36,
["RESIST_MAGIC"] = 37,
["RESIST_WIND"] = 38,
["REFLECT_MELEE"] = 39,
["REFLECT_CURSE"] = 40,
["POISON_REDUCE"] = 41,
["KILL_SP_RECOVER"] = 42,
["EXP_DOUBLE_BONUS"] = 43,
["GOLD_DOUBLE_BONUS"] = 44,
["ITEM_DROP_BONUS"] = 45,
["POTION_BONUS"] = 46,
["KILL_HP_RECOVER"] = 47,
["IMMUNE_STUN"] = 48,
["IMMUNE_SLOW"] = 49,
["IMMUNE_FALL"] = 50,
["SKILL"] = 51,
["BOW_DISTANCE"] = 52,
["ATT_GRADE_BONUS"] = 53,
["DEF_GRADE_BONUS"] = 54,
["MAGIC_ATT_GRADE"] = 55,
["MAGIC_DEF_GRADE"] = 56,
["CURSE_PCT"] = 57,
["MAX_STAMINA"] = 58,
["ATTBONUS_WARRIOR"] = 59,
["ATTBONUS_ASSASSIN"] = 60,
["ATTBONUS_SURA"] = 61,
["ATTBONUS_SHAMAN"] = 62,
["ATTBONUS_MONSTER"] = 63,

 

 

umarł

Opublikowano

a spróbuj zamiast

when 20239.chat."Bicie mobów" begin

dać

when 20239.click begin

 

 

@Vatu zobacz teraz

 

quest dugeon begin
state start begin
	when 20017.chat."Bicie mobów" begin
		say_title("Bicie mobów")
		say("Pamiętaj żeby przenieść się na mapę musisz mieć min. 50 lvl")
		say("Przenieść cię na mapę ??")
		local s = select("TAK","NIE")
		if s == 1 then

		else
			return
		end
		if pc.get_level() < 50 then
			say("Musisz mieć min. 50 lvl żeby wejść.")
			return
		elseif party.is_leader() then
			say("Nie możesz mieć pt")
			return
		else
			say("OK zaraz cię przeniosę ")
			say("Wybierz sobie jeden bonus")
		end
		local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie", "Nie chce")
		if bony == 1 then
			affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60)
		elseif bony == 2 then
			affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
		elseif bony == 3 then
			affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
		elseif bony == 4 then
			affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
		elseif bony == 5 then
		end
		d.join(12)
		pc.setqf("dungeon", 1)
	end

	when login with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		if pc.getqf("dungeon") > 0 then
			pc.setqf("dungeon", 0)
			d.notice("Witaj na mapie.")
			d.notice("Porozwalj moby...")
			d.spawn_mob(691, 10000, 9900)
			pc.setqf("time1", get_time())
		end
	end

	when 691.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Wodz Orkow")
		d.notice("Zaraz pojawi się Elitarny Wodz Orkow")
		d.spawn_mob(692, 10000, 9900)
	end

	when 692.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Elitarny Wodz Orkow")
		d.notice("Zaraz pojawi się Umarly Rozpruwacz")
		d.spawn_mob(1093, 10000, 9900)
	end

	when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Umarłego Rozpruwacza")
		d.notice("Zaraz pojawi się Niebieska Smierc")
		d.spawn_mob(1095, 10000, 9900)
	end

	when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Niebieską Smierc")
		d.notice("Zaraz pojawi się Lodowa Wiedzma")
		d.spawn_mob(1191, 10000, 9900)
	end

	when 1191.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Lodową Wiedzme")
		d.notice("Zaraz pojawi się Silna Lodowa Wiedzma")
		d.spawn_mob(1192, 10000, 9900)
	end

	when 1192.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Silną Lodowa Wiedzme")
		d.notice("Pokonałeś już wszystkich.")
		pc.setqf("time2", get_time())
		pc.setqf("bicie_mobow", 3)
		timer("dowidzenia", 10)
		affect.remove()
	end

	when dowidzenia.timer begin
		d.exit_all()
	end

	when login with pc.getqf("bicie_mobow") == 3 begin
		pc.setqf("bicie_mobow", 0)
		local x = pc.getqf("time")
		local y = pc.getqf("time2")
		local diff = pc.setqf("time3", y-x)
		if y-x > 60 then
			say("Twój czas to: "..diff/60.." minut.")
		else
			say("Twój czas to: "..diff.." sekund.")
		end
	end
end
end

 

Ty w ogóle nie rozumiesz na czym mają questy polegać...

Według mnie tylko wkurzasz wszystkich zamiast pomagać..

 

Gdybym miał więcej czasu to bym tu coś porobił, ale niestety nie mam czasu.

z4z0l ma rację.

Skoro dajesz wybór to przy wyborze np. "tak" musi być instrukcja co ma robić, itd.

A nie że walniesz sobie if bez instrukcji później else i end i wtedy instrukcje.

Mylisz wszystkich, wprowadzasz w błąd.

 

Najpierw się naucz pisać questy i dopiero wtedy zacznij pisać je dla kogoś.

***


Nie gram już w ogóle w metina,


ale jeśli potrzeba komuś pomoc z questem


to jeśli będę potrafił to mogę pomóc.


***

Opublikowano

teraz ja -.-

 

ja poproszę o questa takiego co był na NevrasT..

 

naciskało się na ten papirus(na te zadanie w lewej czesci ekranu) i tylko 20 razy możesz przywołać mobki do siebie(cos jak peleryna mestwa..) jak zuzyje sie to 20 razy to zeby to sie juz nie pokazywalo...

 

proszę żeby było z 3-4 linijek say i tekst ja sam wpisze..

 

i zeby pisalo czy chcesz przywołać potwory? opcja tak/nie... nie to wyłącza okno a tak przywoluje.

Opublikowano

Witam. Proszę o poprawę questa.

 

 


quest moby_na_czas begin
state start begin
when 20082.chat."Bicie mobów na czas" begin
say_reward("Ubijanie mobów na czas jest B.Trudnym wyzwaniem!")
say("Musisz ubić kilka potworów i zobaczysz po ubiciu wszystkich jaki miałeś czas[...]")
say("Jeżeli nagrasz film z ubijaniem potworów i zdobędziesz najlepszy czas ze wszystkich wygrasz nagrody!")
say_reward("Czy chcesz wejść na mapę?")
           local s = select("Chcę zrobić to wyzwanie!", "Rozmyśliłem się...")
if s == 2 then
return
elseif s == 1 then
                   if pc.get_level() < 110 then
say("Wybacz, mogę wpuszczać tylko soby od 110 poziomu.")
                               return

                   if party.get_near_count() > 0 then
                                say("Wybacz, nie możesz iść z żadnymi członkami w PT na mapę.")
                        return
                   end
                   if party.is_leader() then
                        say("Nie możesz mieć PT na mapię ;/")
                          end

                  else 
say("Ok, wybierz sobie bony:")
local bony = select("20% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie")
if bony == 1 then
affect.add(apply.MOV_SPEED, 20, 60*60*24*365*60)
set_state(kwiatmix_bosy)

                         elseif bony == 2 then
                          affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
                          set_state(kwiatmix_bosy)

                         elseif bony == 3 then
                          affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
                          set_state(kwiatmix_bosy)

                         elseif bony == 4 then
                          affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
                          set_state(kwiatmix_bosy)
                         end
end
end
state kwiatmix_bosy begin
say("Ok, teraz wybierz sobie marmurek.")
local poli = select("Dziki pies", "Dziki Sługa", "Młody pająk", "Ezot.Fanatyk")
if poli == 1 then
                          pc.polymorphy(101, 500)
                          set_state(kwiatmix_bosy2)

elseif poli == 2 then
                          pc.polymorphy(502, 500)
                          set_state(kwiatmix_bosy2)

elseif poli == 3 then
                          pc.polymorphy(2031)
                          set_state(kwiatmix_bosy2)

                       elseif poli == 4 then
                          pc.polymorphy(701)
                          set_state(kwiatmix_bosy2)
                       end
                       end
                        state kwiatmix_bosy2 begin
                          pc.setqf("priv_bicie_mobow", 1)
                          d.join(31)
end
               end
       when login with pc.in_dungeon() with pc.getgf("priv_bicie_mobow") == 1 begin
               if pc.getqf("priv_bicie_mobow") == 1 then
                pc.setqf("priv_bicie_mobow", 2)
                d.notice("Ubij moby jak najszybciej potrafisz!")
                d.notice("Powodzenia!")
                timer("przygotuj", 5)
          end
        end
       when przygotuj.timer begin
        d.notice("Za chwilę nastąpi odliczanie do respu potwora!")
        timer("respimy", 5)
       end
       when respimy.timer begin
        d.notice("5")
        timer("respimy2", 1)
       end
       when respimy2.timer begin
        d.notice("4")
        timer("respimy3", 1)
       end
       when respimy3.timer begin
        d.notice("3")
        timer("respimy4", 1)
       end
       when respimy4.timer begin
        d.notice("2")
        timer("respimy5", 1)
       end
       when respimy5.timer begin
        d.notice("1")
        timer("respimy6", 1)
       end
       when respimy6.timer begin
        d.notice("Walka rozpoczyna się!")
        pc.setqf("time1", get_time())
        d.spawn_mob(5120, 4089, 690)
       end
       when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
        d.notice("Pokonałeś pierwszego moba, zaraz zrespi się drugi.")
        d.spawn_mob(5120, 4089, 690)
       end
       when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
        d.notice("Pokonałeś drugiego moba, zaraz zrespi się trzeci.")
        d.spawn_mob(5120, 4089, 690)
       end
       when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
        d.notice("Pokonałeś trzeciego moba, zaraz zrespi się czwarty.")
        d.spawn_mob(5120, 4089, 690)
       end
       when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
        d.notice("Pokonałeś wszystkie moby, zaraz zostaniesz wylogowany!")
        pc.setqf("time2", get_time())
pc.setqf("priv_bicie_mobow", 3)
        affect.remove()
        timer("dowidzenia", 10)
       end
       when dowidzenia.timer begin
        d.exit_all()
       end
       when login with pc.getqf("priv_bicie_mobow") == 3 begin
        pc.setqf("priv_bicie_mobow", 0)
        pc.remove_polymorph()
        local x = pc.getqf("time")

        local y = pc.getqf("time2")

        local diff = pc.setqf("time3", y-x)
if y-x > 60 then
         say("Twój czas to: "..diff/60.." minut.")
else
say("Twój czas to: "..diff.." sekund.")
end 
         end
       end

end

 

 

 

Przy wgrywaniu wywala błąd:

...

state kwiatmix_bosy2 begin
pc . setqf ( "priv_bicie_mobow" , 1 )
d . join ( 31 )
end

syntax error : [string "start"]:12: unexpected symbol near `if'
moby_na_czas.quest:69:Abort (core dumped)

 

Bardzo zależy mi aby ten quest działał.

Ktoś zrobi ?

:D

Opublikowano

Witam. Proszę o poprawę questa.

 

 


quest moby_na_czas begin
state start begin
when 20082.chat."Bicie mobów na czas" begin
say_reward("Ubijanie mobów na czas jest B.Trudnym wyzwaniem!")
say("Musisz ubić kilka potworów i zobaczysz po ubiciu wszystkich jaki miałeś czas[...]")
say("Jeżeli nagrasz film z ubijaniem potworów i zdobędziesz najlepszy czas ze wszystkich wygrasz nagrody!")
say_reward("Czy chcesz wejść na mapę?")
		local s = select("Chcę zrobić to wyzwanie!", "Rozmyśliłem się...")
if s == 2 then
return
elseif s == 1 then
				if pc.get_level() < 110 then
say("Wybacz, mogę wpuszczać tylko soby od 110 poziomu.")
							return

				if party.get_near_count() > 0 then
							 say("Wybacz, nie możesz iść z żadnymi członkami w PT na mapę.")
					 return
				end
				if party.is_leader() then
					 say("Nie możesz mieć PT na mapię ;/")
					   end

			   else
say("Ok, wybierz sobie bony:")
local bony = select("20% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie")
if bony == 1 then
affect.add(apply.MOV_SPEED, 20, 60*60*24*365*60)
set_state(kwiatmix_bosy)

					  elseif bony == 2 then
					   affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
					   set_state(kwiatmix_bosy)

					  elseif bony == 3 then
					   affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
					   set_state(kwiatmix_bosy)

					  elseif bony == 4 then
					   affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
					   set_state(kwiatmix_bosy)
					  end
end
end
state kwiatmix_bosy begin
say("Ok, teraz wybierz sobie marmurek.")
local poli = select("Dziki pies", "Dziki Sługa", "Młody pająk", "Ezot.Fanatyk")
if poli == 1 then
					   pc.polymorphy(101, 500)
					   set_state(kwiatmix_bosy2)

elseif poli == 2 then
					   pc.polymorphy(502, 500)
					   set_state(kwiatmix_bosy2)

elseif poli == 3 then
					   pc.polymorphy(2031)
					   set_state(kwiatmix_bosy2)

					elseif poli == 4 then
					   pc.polymorphy(701)
					   set_state(kwiatmix_bosy2)
					end
					end
					 state kwiatmix_bosy2 begin
					   pc.setqf("priv_bicie_mobow", 1)
					   d.join(31)
end
			end
	when login with pc.in_dungeon() with pc.getgf("priv_bicie_mobow") == 1 begin
			if pc.getqf("priv_bicie_mobow") == 1 then
			 pc.setqf("priv_bicie_mobow", 2)
			 d.notice("Ubij moby jak najszybciej potrafisz!")
			 d.notice("Powodzenia!")
			 timer("przygotuj", 5)
	   end
	 end
	when przygotuj.timer begin
	 d.notice("Za chwilę nastąpi odliczanie do respu potwora!")
	 timer("respimy", 5)
	end
	when respimy.timer begin
	 d.notice("5")
	 timer("respimy2", 1)
	end
	when respimy2.timer begin
	 d.notice("4")
	 timer("respimy3", 1)
	end
	when respimy3.timer begin
	 d.notice("3")
	 timer("respimy4", 1)
	end
	when respimy4.timer begin
	 d.notice("2")
	 timer("respimy5", 1)
	end
	when respimy5.timer begin
	 d.notice("1")
	 timer("respimy6", 1)
	end
	when respimy6.timer begin
	 d.notice("Walka rozpoczyna się!")
	 pc.setqf("time1", get_time())
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś pierwszego moba, zaraz zrespi się drugi.")
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś drugiego moba, zaraz zrespi się trzeci.")
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś trzeciego moba, zaraz zrespi się czwarty.")
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś wszystkie moby, zaraz zostaniesz wylogowany!")
	 pc.setqf("time2", get_time())
pc.setqf("priv_bicie_mobow", 3)
	 affect.remove()
	 timer("dowidzenia", 10)
	end
	when dowidzenia.timer begin
	 d.exit_all()
	end
	when login with pc.getqf("priv_bicie_mobow") == 3 begin
	 pc.setqf("priv_bicie_mobow", 0)
	 pc.remove_polymorph()
	 local x = pc.getqf("time")

	 local y = pc.getqf("time2")

	 local diff = pc.setqf("time3", y-x)
if y-x > 60 then
	  say("Twój czas to: "..diff/60.." minut.")
else
say("Twój czas to: "..diff.." sekund.")
end
	  end
	end

end

 

 

 

Przy wgrywaniu wywala błąd:

...

state kwiatmix_bosy2 begin
pc . setqf ( "priv_bicie_mobow" , 1 )
d . join ( 31 )
end

syntax error : [string "start"]:12: unexpected symbol near `if'
moby_na_czas.quest:69:Abort (core dumped)

 

Bardzo zależy mi aby ten quest działał.

 

Nie kończysz jednego if'a, a już zaczynasz następny.

 

# o matku, takiego burdelu to jeszcze nie widziałem, sry ja Ci nie pomogę.

Zbliżamy się ku końcowi.

 

95/100 %

 

Żegnaj MPC Forum

Opublikowano

ja poproszę o questa takiego co był na NevrasT..

 

naciskało się na ten papirus(na te zadanie w lewej czesci ekranu) i tylko 20 razy możesz przywołać mobki do siebie(cos jak peleryna mestwa..) jak zuzyje sie to 20 razy to zeby to sie juz nie pokazywalo...

 

proszę żeby było z 3-4 linijek say i tekst ja sam wpisze..

 

i zeby pisalo czy chcesz przywołać potwory? opcja tak/nie... nie to wyłącza okno a tak przywoluje.

Opublikowano

Tego questa nie ja pisałem. Może ktoś się podejmie poprawienia go? Lub napisania od nowa.

 

 

Witam. Proszę o poprawę questa.

 

 


quest moby_na_czas begin
state start begin
when 20082.chat."Bicie mobów na czas" begin
say_reward("Ubijanie mobów na czas jest B.Trudnym wyzwaniem!")
say("Musisz ubić kilka potworów i zobaczysz po ubiciu wszystkich jaki miałeś czas[...]")
say("Jeżeli nagrasz film z ubijaniem potworów i zdobędziesz najlepszy czas ze wszystkich wygrasz nagrody!")
say_reward("Czy chcesz wejść na mapę?")
		local s = select("Chcę zrobić to wyzwanie!", "Rozmyśliłem się...")
if s == 2 then
return
elseif s == 1 then
				if pc.get_level() < 110 then
say("Wybacz, mogę wpuszczać tylko soby od 110 poziomu.")
							return

				if party.get_near_count() > 0 then
							 say("Wybacz, nie możesz iść z żadnymi członkami w PT na mapę.")
					 return
				end
				if party.is_leader() then
					 say("Nie możesz mieć PT na mapię ;/")
					   end

			   else
say("Ok, wybierz sobie bony:")
local bony = select("20% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie")
if bony == 1 then
affect.add(apply.MOV_SPEED, 20, 60*60*24*365*60)
set_state(kwiatmix_bosy)

					  elseif bony == 2 then
					   affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
					   set_state(kwiatmix_bosy)

					  elseif bony == 3 then
					   affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
					   set_state(kwiatmix_bosy)

					  elseif bony == 4 then
					   affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
					   set_state(kwiatmix_bosy)
					  end
end
end
state kwiatmix_bosy begin
say("Ok, teraz wybierz sobie marmurek.")
local poli = select("Dziki pies", "Dziki Sługa", "Młody pająk", "Ezot.Fanatyk")
if poli == 1 then
					   pc.polymorphy(101, 500)
					   set_state(kwiatmix_bosy2)

elseif poli == 2 then
					   pc.polymorphy(502, 500)
					   set_state(kwiatmix_bosy2)

elseif poli == 3 then
					   pc.polymorphy(2031)
					   set_state(kwiatmix_bosy2)

					elseif poli == 4 then
					   pc.polymorphy(701)
					   set_state(kwiatmix_bosy2)
					end
					end
					 state kwiatmix_bosy2 begin
					   pc.setqf("priv_bicie_mobow", 1)
					   d.join(31)
end
			end
	when login with pc.in_dungeon() with pc.getgf("priv_bicie_mobow") == 1 begin
			if pc.getqf("priv_bicie_mobow") == 1 then
			 pc.setqf("priv_bicie_mobow", 2)
			 d.notice("Ubij moby jak najszybciej potrafisz!")
			 d.notice("Powodzenia!")
			 timer("przygotuj", 5)
	   end
	 end
	when przygotuj.timer begin
	 d.notice("Za chwilę nastąpi odliczanie do respu potwora!")
	 timer("respimy", 5)
	end
	when respimy.timer begin
	 d.notice("5")
	 timer("respimy2", 1)
	end
	when respimy2.timer begin
	 d.notice("4")
	 timer("respimy3", 1)
	end
	when respimy3.timer begin
	 d.notice("3")
	 timer("respimy4", 1)
	end
	when respimy4.timer begin
	 d.notice("2")
	 timer("respimy5", 1)
	end
	when respimy5.timer begin
	 d.notice("1")
	 timer("respimy6", 1)
	end
	when respimy6.timer begin
	 d.notice("Walka rozpoczyna się!")
	 pc.setqf("time1", get_time())
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś pierwszego moba, zaraz zrespi się drugi.")
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś drugiego moba, zaraz zrespi się trzeci.")
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś trzeciego moba, zaraz zrespi się czwarty.")
	 d.spawn_mob(5120, 4089, 690)
	end
	when id.kill with pc.in_duegon() and pc.getqf("priv_bicie_mobow") == 2 begin
	 d.notice("Pokonałeś wszystkie moby, zaraz zostaniesz wylogowany!")
	 pc.setqf("time2", get_time())
pc.setqf("priv_bicie_mobow", 3)
	 affect.remove()
	 timer("dowidzenia", 10)
	end
	when dowidzenia.timer begin
	 d.exit_all()
	end
	when login with pc.getqf("priv_bicie_mobow") == 3 begin
	 pc.setqf("priv_bicie_mobow", 0)
	 pc.remove_polymorph()
	 local x = pc.getqf("time")

	 local y = pc.getqf("time2")

	 local diff = pc.setqf("time3", y-x)
if y-x > 60 then
	  say("Twój czas to: "..diff/60.." minut.")
else
say("Twój czas to: "..diff.." sekund.")
end
	  end
	end

end

 

 

 

Przy wgrywaniu wywala błąd:

...

state kwiatmix_bosy2 begin
pc . setqf ( "priv_bicie_mobow" , 1 )
d . join ( 31 )
end

syntax error : [string "start"]:12: unexpected symbol near `if'
moby_na_czas.quest:69:Abort (core dumped)

 

Bardzo zależy mi aby ten quest działał.

Ktoś zrobi ?

:D

Opublikowano

Witam

 

Napisał by mi ktoś Małego Dungeona? Polegał by na tym że:

 

 

- Jesteśmy na tej samej mapie co Dungeon tylko inne kordy
- Dajemy Np 3x złoty klucz jakiemuś NPC który przenosi nas na dungeon
- Po wejscu na dungeon Są tam 4 Fazy
-Zabicie 3 Spotów Mobów i 4 faza to zabicie 3 bossów i po ich zabiciu teleportuje nas do Komnaty na inne kordy
-Tam zabjamy bossa i po jego zabiciu loga nas na sam poczatek mapy

Jeśli ktoś ma czas i chęć niech napisze i Da na PW lub tu

pozdrawiam

 

Opublikowano

@Stelios to wszystko przez to że nie miałem na czym przetestować. Teraz dzięki pomocy newjaa będę mógł testować questy u niej na serwerze , więc będę testować przez wrzuceniem.

 

@Vatu sprawdź teraz poprawiłem if-y

 

quest dugeon begin
state start begin
	when 20003.chat."Bicie mobów" begin
		say_title("Bicie mobów")
		say("Pamiętaj żeby przenieść się na mapę musisz mieć min. 50 lvl")
		say("Przenieść cię na mapę ??")
		local s = select("TAK","NIE")
		if s == 2 then
			return
		elseif s == 1 then
			if pc.get_level() < 50 then
				say("Musisz mieć min. 50 lvl żeby wejść.")
				return
			elseif party.is_leader() then
				say("Nie możesz mieć pt")
				return
			else
				say("OK zaraz cię przeniosę ")
				say("Wybierz sobie jeden bonus")
			end
			local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie", "Nie chce")
			if bony == 1 then
				affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60)
pc.setqf("dungeon", 1)
				d.join(12)
			elseif bony == 2 then
				affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
pc.setqf("dungeon", 1)
				d.join(12)
			elseif bony == 3 then
				affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
pc.setqf("dungeon", 1)
				d.join(12)
			elseif bony == 4 then
				affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
pc.setqf("dungeon", 1)
				d.join(12)
			elseif bony == 5 then
pc.setqf("dungeon", 1)
				d.join(12)
			end
		end
	end

	when login with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		if pc.getqf("dungeon") > 0 then
			pc.setqf("dungeon", 0)
			d.notice("Witaj na mapie.")
			d.notice("Porozwalj moby...")
			d.spawn_mob(691, 10000, 9900)
			pc.setqf("time1", get_time())
		end
	end

	when 691.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Wodz Orkow")
		d.notice("Zaraz pojawi się Elitarny Wodz Orkow")
		d.spawn_mob(692, 10000, 9900)
	end

	when 692.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Elitarny Wodz Orkow")
		d.notice("Zaraz pojawi się Umarly Rozpruwacz")
		d.spawn_mob(1093, 10000, 9900)
	end

	when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Umarłego Rozpruwacza")
		d.notice("Zaraz pojawi się Niebieska Smierc")
		d.spawn_mob(1095, 10000, 9900)
	end

	when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Niebieską Smierc")
		d.notice("Zaraz pojawi się Lodowa Wiedzma")
		d.spawn_mob(1191, 10000, 9900)
	end

	when 1191.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Lodową Wiedzme")
		d.notice("Zaraz pojawi się Silna Lodowa Wiedzma")
		d.spawn_mob(1192, 10000, 9900)
	end

	when 1192.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Silną Lodowa Wiedzme")
		d.notice("Pokonałeś już wszystkich.")
		pc.setqf("time2", get_time())
		pc.setqf("bicie_mobow", 3)
		timer("dowidzenia", 10)
		affect.remove()
	end

	when dowidzenia.timer begin
		d.exit_all()
	end

	when login with pc.getqf("bicie_mobow") == 3 begin
		pc.setqf("bicie_mobow", 0)
		local x = pc.getqf("time")
		local y = pc.getqf("time2")
		local diff = pc.setqf("time3", y-x)
		if y-x > 60 then
			say("Twój czas to: "..diff/60.." minut.")
		else
			say("Twój czas to: "..diff.." sekund.")
		end
	end
end
end

 

Opublikowano

@Stelios to wszystko przez to że nie miałem na czym przetestować. Teraz dzięki pomocy newjaa będę mógł testować questy u niej na serwerze , więc będę testować przez wrzuceniem.

 

@Vatu sprawdź teraz poprawiłem if-y

 

quest dugeon begin
state start begin
	when 20003.chat."Bicie mobów" begin
		say_title("Bicie mobów")
		say("Pamiętaj żeby przenieść się na mapę musisz mieć min. 50 lvl")
		say("Przenieść cię na mapę ??")
		local s = select("TAK","NIE")
		if s == 2 then
			return
		elseif s == 1 then
			if pc.get_level() < 50 then
				say("Musisz mieć min. 50 lvl żeby wejść.")
				return
			elseif party.is_leader() then
				say("Nie możesz mieć pt")
				return
			else
				say("OK zaraz cię przeniosę ")
				say("Wybierz sobie jeden bonus")
			end
			local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie", "Nie chce")
			if bony == 1 then
				affect.add(apply.MOV_SPEED, 10, 60*60*24*365*60)
				d.join(12)
				pc.setqf("dungeon", 1)
			elseif bony == 2 then
				affect.add(apply.ATT_GRADE_BONUS, 200, 60*60*24*365*60)
				d.join(12)
				pc.setqf("dungeon", 1)
			elseif bony == 3 then
				affect.add(apply.ATT_POINT_CRITICAL_PCT, 30, 60*60*24*365*60)
				d.join(12)
				pc.setqf("dungeon", 1)
			elseif bony == 4 then
				affect.add(apply.ATT_POINT_POISON_PCT, 30, 60*60*24*365*60)
				d.join(12)
				pc.setqf("dungeon", 1)
			elseif bony == 5 then
				d.join(12)
				pc.setqf("dungeon", 1)
			end
		end
	end

	when login with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		if pc.getqf("dungeon") > 0 then
			pc.setqf("dungeon", 0)
			d.notice("Witaj na mapie.")
			d.notice("Porozwalj moby...")
			d.spawn_mob(691, 10000, 9900)
			pc.setqf("time1", get_time())
		end
	end

	when 691.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Wodz Orkow")
		d.notice("Zaraz pojawi się Elitarny Wodz Orkow")
		d.spawn_mob(692, 10000, 9900)
	end

	when 692.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Elitarny Wodz Orkow")
		d.notice("Zaraz pojawi się Umarly Rozpruwacz")
		d.spawn_mob(1093, 10000, 9900)
	end

	when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Umarłego Rozpruwacza")
		d.notice("Zaraz pojawi się Niebieska Smierc")
		d.spawn_mob(1095, 10000, 9900)
	end

	when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Niebieską Smierc")
		d.notice("Zaraz pojawi się Lodowa Wiedzma")
		d.spawn_mob(1191, 10000, 9900)
	end

	when 1191.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Lodową Wiedzme")
		d.notice("Zaraz pojawi się Silna Lodowa Wiedzma")
		d.spawn_mob(1192, 10000, 9900)
	end

	when 1192.kill with pc.in_dungeon() and pc.get_map_index() >= 120000 and pc.get_map_index() < 130000 begin
		d.notice("Pokonałeś Silną Lodowa Wiedzme")
		d.notice("Pokonałeś już wszystkich.")
		pc.setqf("time2", get_time())
		pc.setqf("bicie_mobow", 3)
		timer("dowidzenia", 10)
		affect.remove()
	end

	when dowidzenia.timer begin
		d.exit_all()
	end

	when login with pc.getqf("bicie_mobow") == 3 begin
		pc.setqf("bicie_mobow", 0)
		local x = pc.getqf("time")
		local y = pc.getqf("time2")
		local diff = pc.setqf("time3", y-x)
		if y-x > 60 then
			say("Twój czas to: "..diff/60.." minut.")
		else
			say("Twój czas to: "..diff.." sekund.")
		end
	end
end
end

 

 

 local bony = select("10% szybkość ataku", "+200 siła ataku", "30% szansa na krytyczne uderzenie", "30% na otrucie"

Chociażby że nie zamknąłeś nawiasu ;)

 

umarł

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...