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

Opublikowano

Zabrałem się za quest na start.

Wygląda tak:

 

quest itemynastart begin
state start begin
when login begin
say_size(40,30)
setbgimage("papirus.tga")
if pc.getqf("Impurity") == 0 then
say_tytul("Witamy w Krainie ImpurityMT2!")
say("")
say_title("Informacja:")
say_informacja("HeadAdmin: [HA]JonyNawalony")
say("")
say_title("Raty na serwerze:")
say("Exp: 200%")
say("Drop: 200%")
say("Yang: 200%")
say("")
say_informacja("Na pewno serwer różni się od innych,")
say_informacja("koniecznie to sprawdź.")
say_informacja("Gra zaczyna się dopiero od 30 poziomu.")
wait()
say_tytul("ImpurityMT2")
say("")
say_title("Informacja:")
say_informacja("Na start otrzymałeś:")
pc.give_item2 (80009,1)
say_nagroda("Otrzymano: Pierścień Teleportacji")
pc.give_item2 (72701,1)
say_nagroda("Otrzymano: Buty Wiatru")
pc.give_item2 (70038,20)
say_nagroda("Otrzymano: Peleryny Męstwa x 20")
pc.give_item2 (27003,200)
say_nagroda("Otrzymano: Czerwona Mikstura(Duża) x 200")
pc.give_item2 (27006,200)
say_nagroda("Otrzymano: Niebieska Mikstura(Duża) x 200")
pc.set_skill_level (131,5)
say_nagroda("Otrzymano: Oswajanie Konia: 5 poziom")
horse.set_level (11)
say_nagroda("Otrzymano: Koń Bojowy (11 poziom)")
pc.change_money(1000)
say_nagroda("Otrzymano: 1000 Yang")
pc.give_item2(13009)
say_nagroda("Otrzymano: Bojowa Tarcza+9")
horse.ride()
if pc.job==0 then
pc.give_item2 (19,1)
say_nagroda("Otrzymano: Miecz+9")
pc.give_item2 (3009,1)
say_nagroda("Otrzymano: Glewia+9")
pc.give_item2 (11209,1)
say_nagroda("Otrzymano: Mnisia Zbroja+9")
end
if pc.job==1 then
pc.give_item2 (1009,1)
say_nagroda("Otrzymano: Sztylet+9")
pc.give_item2 (2009,1)
say_nagroda("Otrzymano: Łuk+9")
pc.give_item2 (8000,50)
say_nagroda("Otrzymano: Drewniana Strzała x 50")
pc.give_item2 (11409,1)
say_nagroda("Otrzymano: Błękitne Ubranie+9")
end
if pc.job==2 then
pc.give_item2 (19,1)
say_nagroda("Otrzymano: Miecz+9")
pc.give_item2 (11609,1)
say_nagroda("Otrzymano: Żałobna Zbroja+9")
end
if pc.job==3 then
pc.give_item2 (7009,1)
say_nagroda("Otrzymano: Wachlarz+9")
pc.give_item2 (11809,1)
say_nagroda("Otrzymano: Błękitna Szata")
end
wait()
say_tytul("ImpurityMT2")
say("")
say_item_vnum(3)
say_lokalizacja("Życzymy miłej gry.")
pc.setqf("Impurity", 1)
clear_letter ()
end
end
end
state impurity begin
end
end

 

http://wklej.to/FT4r6

Normalnie się wszystko ładnie otwiera, ale po naciśnięciu localnej "Kontunuuj" (wait()) - quest znika i nie pokazuje się następna strona...

Od 21 linijki koniec questa...:/

Co jest źle, dlaczego nie pojawia się kolejna strona questa?

 

na końcu masz

state impurity begin
end
end

a nie widzę nigdzie

setstate(impurity)

 

@EDIT takie pytanie mam, czy jest jakaś możliwość sprawdzenia przez quest tego co wpisuje gracz?

np. jeśli wpisze "blabla" to go wywala z serwera.

Chodzi mi o pisanie na zwykłym czacie.

***


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.


***

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

na końcu masz

state impurity begin
end
end

a nie widzę nigdzie

setstate(impurity)

 

@EDIT takie pytanie mam, czy jest jakaś możliwość sprawdzenia przez quest tego co wpisuje gracz?

np. jeśli wpisze "blabla" to go wywala z serwera.

Chodzi mi o pisanie na zwykłym czacie.

XaviPrawdziwy posiadał kiedyś logi wszystkich pw, niestety nie mam pojęcia jak to zrobił. Tak samo ze zwykłym czatem, domyślnie logi się nie tworzą, tylko z wołacza a więc musiałbyś popytać osób które w tym bardziej siedzą. Jak dla mnie wywalenie w czasie rzeczywistym (tj zaraz po wysłaniu wiadomości) jest niemożliwe do osiągnięcia

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Sunushi quest wzięty z germany cantrix2 ^^ Hmm prosze jeszcze o quest do biologa na 100 lv ze trzeba dropnac klejnoty zawisci (na setaou) oddac ich 40 co godzine szansa 30% nagroda:15 ludzi i 100kk

Szukam Ekipy / Gildii na s9 agronas czerwoni lv +35

Opublikowano

Z questem na biologa to sobie chyba sam poradzisz, weź jakiegoś gotowego i poprzerabiaj ;)

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Jeśli wgrałeś jakiś quest to musisz go usunąć z folderu object. Jest on (jak zapewne wiesz) tam podzielony na kilka folderów, m.in state i pewnie w folderach z id npc z którymi wykonujesz interakcje. Nigdy nie chciało mi się z tym bawić to po prostu usuwałem object i wgrywałem questy na nowo ;)

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

local minuty3 = minuty2 - godziny2*60

tak spróbuj

 

Kubaman:

local a = select("Tak","Wyjdź")

zamień na

local a = select("Tak","Wyjdź ")

 

P.S. W drugiej części questa (nasionko) wszystkie itemy[n] zamień na itemy2[n] - takie małe niedopatrzenie z mojej strony :)

Teraz mi w VB wyskakuje:

Calls undeclared function! :

item.name

Abort (core dumped)

누가 뭐라 해도 난 나야 난 그냥 내가 되고 싶어
I WANNA BE ME ME ME

Opublikowano

item.name pozmieniaj na item_name - kolejna pomyłka ;s

A możesz mi jakoś przerobić ten quest, aby np. gdy nie mamy 100.000.000 yang wyskakuje "Tępy huju! Nie masz 100.000.000 yang"

Tak samo z nasionkiem.

누가 뭐라 해도 난 나야 난 그냥 내가 되고 싶어
I WANNA BE ME ME ME

Opublikowano

local minuty3 = minuty2 - godziny2*60

tak spróbuj

 

Teraz jest problem...

Jak skończe tego questa powyżej godziny, say zatrzymuje się przed lokalnymi.

W ogóle nie pokazuje tego czasu, jak wcześniej...

Ten wycinek z tego questa wygląda tak:

http://wklej.to/r7ZF7

 

local sekundy = pc.getqf("dzony") - pc.getqf("jony")
local minuty = sekundy/60
local minuty2 = math.floor(minuty)
local sekundy2 = sekundy - minuty2*60
local godziny = minuty2/60
local godziny2 = math.floor(godziny)
local minuty3 = minuty2 - godziny2*60
if godziny2 == 0 then
say_informacja("Czas: "..minuty2.." minut, "..sekundy2.." sekund")
else
say_informacja("Czas: "..godziny2.." godzin, "..minuty3.." minut, "..sekundy2.." sekund")
end

 

KONIEC


-----------------------------------------


2013-08-15

Opublikowano

http://wklej.to/eD8Zv

 

Jony, wywal to local minuty3, przeedytuj tam żeby znowu odczytywało z minuty2 i zobacz czy działa Ci quest czy dalej nie. Ewentualnie możesz zobaczyć do syserr channelu na którym jesteś i pokazać mi co tam błąd pokazuje

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

na końcu masz

state impurity begin
end
end

a nie widzę nigdzie

setstate(impurity)

 

To nic nie da, próbowałem wcześniej.

Sunushi nie da się:)

Próbowałem z moim questem

wait() - say("") byle co

jak i ze starym, czystym questem.

Nie wiem dlaczego, ale w queście powitalnym po kliknięciu "Kontynuuj" zamyka się quest..

KONIEC


-----------------------------------------


2013-08-15

Opublikowano

@up

Jakieś problemy z wklej.to więc tutaj wrzucam

 

 

quest itemynastart begin
 state start begin
when login begin
  say_size(80,60)
   if pc.getqf("Impurity") == 0 then
	pc.setqf("Impurity", 1)
	say_title("Witamy w Krainie ImpurityMT2!")
	say("")
	say_title("Informacja:")
	say("HeadAdmin: [HA]JonyNawalony")
	say("")
	say_title("Raty na serwerze:")
	say("Exp: 200%")
	say("Drop: 200%")
	say("Yang: 200%")
	say("")
	say("Na pewno serwer różni się od innych,")
	say("koniecznie to sprawdź.")
	say("Gra zaczyna się dopiero od 30 poziomu.")
	set_state(impurity)
   end
end
 end
	state impurity begin
	end
end

 

U mnie to działa, niepotrzebny wait, say(), clear_letter. say_size masz ustawiony chyba za mały, obrazek nie powinien sprawiać problemu.

 

 

@edit

Po chuj usuwać np. clear_letter skoro nawet listu nie dostaliśmy ? Jeżeli chcesz 3 strony to robisz tak :

 

http://wklej.to/TQGiQ

 

Jak już wspomniałem, u mnie działa ...

 

umarł

Opublikowano

@z4z0l

Chyba mnie nie zrozumiałeś, jak właśnie chce, aby ten quest był taki rozbudowany!

Przeczytaj wcześniejsze posty.

Chce, aby ten quest miał 3 strony.

KONIEC


-----------------------------------------


2013-08-15

Opublikowano

@up

 

spróbuj tak :

 

when 8044.kill with item.select_cell(97) == 40003 or item.select_cell(98) == 40003 begin
say("działa")
end

 

97 i 98 to pola na buty wiatru, pd itp.

 

umarł

Opublikowano

@z4z0l, zadziwię Cię:)

Wgrałem tego questa:

http://wklej.to/g4RHz

 

quest itemynastart begin
state start begin
when login begin
if pc.getqf("impurity") == 0 then
pc.setqf("impurity", 1)
say_tytul("Witamy w Krainie ImpurityMT2!")
say("")
say_title("Informacja:")
say_informacja("HeadAdmin: [HA]JonyNawalony")
say("")
say_title("Raty na serwerze:")
say("Exp: 200%")
say("Drop: 200%")
say("Yang: 200%")
say("")
say_informacja("Na pewno serwer różni się od innych,")
say_informacja("koniecznie to sprawdź.")
say_informacja("Gra zaczyna się dopiero od 30 poziomu.")
wait()
say_tytul("ImpurityMT2")
say("")
say_title("Informacja:")
say_informacja("Na start otrzymałeś:")
pc.give_item2(80009)
say_nagroda("Otrzymano: Pierścień Teleportacji")
pc.give_item2(72701)
say_nagroda("Otrzymano: Buty Wiatru")
pc.give_item2(70038, 20)
say_nagroda("Otrzymano: Peleryny Męstwa x 20")
pc.give_item2(27003, 200)
say_nagroda("Otrzymano: Czerwona Mikstura(Duża) x 200")
pc.give_item2(27006, 200)
say_nagroda("Otrzymano: Niebieska Mikstura(Duża) x 200")
pc.set_skill_level(131, 5)
say_nagroda("Otrzymano: Oswajanie Konia: 5 poziom")
horse.set_level(11)
say_nagroda("Otrzymano: Koń Bojowy (11 poziom)")
pc.change_money(1000)
say_nagroda("Otrzymano: 1000 Yang")
pc.give_item2(13009)
say_nagroda("Otrzymano: Bojowa Tarcza+9")
horse.ride()
if pc.job==0 then
pc.give_item2 (19,1)
say_nagroda("Otrzymano: Miecz+9")
pc.give_item2 (3009,1)
say_nagroda("Otrzymano: Glewia+9")
pc.give_item2 (11209,1)
say_nagroda("Otrzymano: Mnisia Zbroja+9")
end
if pc.job==1 then
pc.give_item2 (1009,1)
say_nagroda("Otrzymano: Sztylet+9")
pc.give_item2 (2009,1)
say_nagroda("Otrzymano: Łuk+9")
pc.give_item2 (8000,50)
say_nagroda("Otrzymano: Drewniana Strzała x 50")
pc.give_item2 (11409,1)
say_nagroda("Otrzymano: Błękitne Ubranie+9")
end
if pc.job==2 then
pc.give_item2 (19,1)
say_nagroda("Otrzymano: Miecz+9")
pc.give_item2 (11609,1)
say_nagroda("Otrzymano: Żałobna Zbroja+9")
end
if pc.job==3 then
pc.give_item2 (7009,1)
say_nagroda("Otrzymano: Wachlarz+9")
pc.give_item2 (11809,1)
say_nagroda("Otrzymano: Błękitna Szata+9")
end
wait()
say_tytul("ImpurityMT2")
say("")
say_item_vnum(3)
say_lokalizacja("Życzymy miłej gry.")
set_state(impurity)
end
end
end
state impurity begin
end
end

 

-> Naciskam "Kontynuuj" i quest znika. Amen..:/

W ogóle tego nie ogarniam...

KONIEC


-----------------------------------------


2013-08-15

Opublikowano

szukam questa ze jezeli zabije metina 5020 to OD RAZU do eq wpadnie mi item o ID 2523 daj ktos dam like.

Opublikowano

szukam questa ze jezeli zabije metina 5020 to OD RAZU do eq wpadnie mi item o ID 2523 daj ktos dam like.

quest metin begin
state start begin
when 5020.kill begin
pc.give_item2(2523,1)
end
end
end

1377371138-U1002370.png

Opublikowano

quest drop_z_metka begin
state start begin
 when 5020.kill begin
  pc.give_item2(2523, 1)
 end
end
end

 

up. szybszy ;d

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

pc.job

??

 

pc.get_job()

 

 

@down

 

w ten sposób na pewno zadziała

 

 

quest metek begin
state start begin
 when 40003.use begin
  if pc.getqf("use") == 0 then
   pc.setqf("use", 1)
  else
   pc.setqf("use", 0)
  end
 end

 when 8022.kill begin
  if item.select_cell(97) and pc.getqf("use") == 1 or item.select_cell(98) and pc.getqf("use") == 1 then
   say("działa")
  else
   say("błąd")
  end
 end
end
end

 

umarł

Opublikowano

Poprawi ktos questa na DT nie pokazuja sie pieczecie na 5pietrze ogolnie bugniety ^^:

 

 

quest deviltower_zone begin

state start begin

when login begin

if pc.get_map_index() == 66 then

-- ¨Ă«D¦b1ĽÓ?É, °eŞđĄ~­±.

-- ĽhĽĆ ˝dłň

-- 1ĽÓ 88 577 236 737

-- 2ĽÓ 91 343 238 504

-- 3ĽÓ 104 107 248 269

if pc.get_x() < 2048+88 or pc.get_y() < 6656+577 or pc.get_x() > 2048+236 or pc.get_y() > 6656+737 then

pc.warp((5376+532)*100, (512+596+4)*100, 65)

end

pc.set_warp_location(65, 5376+532, 512+596+4)

elseif pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 then

pc.set_warp_location(65, 5376+532, 512+596+4)

end

end

when deviltower_man.chat.locale.deviltower_man_chat begin

if pc.get_level() < 40 then

say(locale.deviltower_man_say_you_cant)

else

say(locale.deviltower_man_say)

local s = select(locale.deviltower_enter,locale.deviltower_no_enter)

if s == 1 then

-- warp into!

pc.warp(216500,727000)

end

end

end

when devil_stone1.kill begin

timer("devil_stone1_1", 6)

end

when devil_stone1_1.timer begin

local mapto7= pc.count_item(30302) -- ?ř·Ŕ¤ŁŞľ¬O§_¦s¦bŞşŻu¤`ĆFđ

pc.remove_item(30302,mapto7)

 

local boxto7= pc.count_item(30300) -- ?ř·Ŕ¤ŁŞľ¬O§_¦s¦bŞş¤ŁŞľ¦WŞş˝c¤l

pc.remove_item(30300,boxto7)

 

d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])

d.regen_file("data/dungeon/deviltower2_regen.txt")

d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/deviltower3_regen.txt")

end

--when devil_stone2.kill begin

--d.jump_all_local(special.devil_tower[2][1], special.devil_tower[2][2])

--end

when devil_stone3.kill begin

--d.jump_all_local(special.devil_tower[3][1], special.devil_tower[3][2])

--d.set_exit_all_at_eliminate(6)

--d.set_warp_at_eliminate(6, d.get_map_index(), 100, 100)

--d.set_warp_at_eliminate(4, 65, 5376+532, 512+596+4)

d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[3][1], special.devil_tower[3][2], "data/dungeon/deviltower4_regen.txt")

d.check_eliminated()

--d.exit_all()

end

function get_4floor_stone_pos()

local positions = {

{368, 629},

{419, 630},

{428, 653},

{422, 679},

{395, 689},

{369, 679},

{361, 658},

}

for i = 1, 6 do

local j = number(i, 7)

if i != j then

local t = positions;

positions = positions[j];

positions[j] = t;

end

end

--for i = 1, 7 do

-- positions[1] = positions[1] * 100

-- positions[2] = positions[2] * 100

-- end

return positions

end

when 8016.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

d.setf("level", 4)

-- ¦A˛{¤jqÇŞ«¤Î»słyŻuĄŰŔYM°˛ĄŰŔY

--d.regen_file("data/dungeon/deviltower4_regen.txt")

local positions = deviltower_zone.get_4floor_stone_pos()

for i = 1, 6 do

chat(positions[1], positions[2])

d.set_unique("fake" .. i , d.spawn_mob(8017, positions[1], positions[2]))

end

chat(positions[7][1], positions[7][2])

local vid = d.spawn_mob(8017, positions[7][1], positions[7][2])

chat(vid)

d.set_unique("real", vid)

server_loop_timer('devil_stone4_update', 10, pc.get_map_index())

server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())

 

d.notice("Brawo, udalo sie Tobie");

d.notice("zniszczyc kamien metin!");

d.notice("Macie 15 minut na nastepnym pietrze[ENTER] zanim zostaniecie wylogowani.");

d.notice("Spieszcie sie!");

end

 

when devil_stone4_fail1.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Pozostalo 10 minut!")

server_timer('devil_stone4_fail2', 5*60, get_server_timer_arg())

end

end

 

when devil_stone4_fail2.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Pozostalo 5 minut!")

server_timer('devil_stone4_fail', 5*60, get_server_timer_arg())

end

end

 

when devil_stone4_fail.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Nie udalo sie, zostaniecie wylogowany!")

d.exit_all()

clear_server_timer('devil_stone4_update', get_server_timer_arg())

end

end

 

when devil_stone4_update.server_timer begin

if d.select(get_server_timer_arg()) then

if not d.is_unique_dead("real") then

for i = 1, 6 do

if d.getf("fakedead" .. i) == 0 then

if d.unique_get_hp_perc("fake" .. i) < 50 then

d.purge_unique("fake" .. i)

d.setf("fakedead" .. i, 1)

d.notice("To nie ten kamien!");

end

end

end

else

--d.clear_regen()

--d.regen_file("data/dungeon/deviltower5_regen.txt")

server_timer("devil_stone4_end", 5, get_server_timer_arg())

d.notice("Udalo sie! Zabij wszystkie potwory na nastepnym");

d.notice("pietrze, aby zdobyc kamien otwarcia!")

clear_server_timer('devil_stone4_fail1', get_server_timer_arg())

clear_server_timer('devil_stone4_fail2', get_server_timer_arg())

clear_server_timer('devil_stone4_fail', get_server_timer_arg())

end

else

server_timer('devil_stone4_stop_timer', 1, get_server_timer_arg())

end

end

 

when devil_stone4_stop_timer.server_timer begin

clear_server_timer('devil_stone4_update', get_server_timer_arg())

end

 

when devil_stone4_end.server_timer begin

if d.select(get_server_timer_arg()) then

d.setf("level", 5)

d.setf("stone_count", 5)

d.notice("Brawo, jestes na 5 pietrze!")

d.notice("Aby przejsc na 6 pietro musisz zabic")

d.notice("wszystkie potwory tutaj, zdobyc kamien")

d.notice("otwarcia i otworzyc pieczecie przed czasem!")

d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])

server_timer('devil_stone5_fail1', 5*60, get_server_timer_arg())

clear_server_timer('devil_stone4_update', get_server_timer_arg())

 

-- 5ĽÓÄ~Äň¦A˛{

d.set_regen_file("data/dungeon/deviltower5_regen.txt")

 

-- 5ĽÓ«Ę¦LĄŰ¦A˛{

d.spawn_mob(20073, 421, 452)

d.spawn_mob(20073, 380, 460)

d.spawn_mob(20073, 428, 414)

d.spawn_mob(20073, 398, 392)

d.spawn_mob(20073, 359, 426)

end

end

when devil_stone5_fail1.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Pozostalo 15 minut!")

server_timer('devil_stone5_fail2', 5*60, get_server_timer_arg())

end

end

 

when devil_stone5_fail2.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Pozostalo 10 minut!")

server_timer('devil_stone5_fail3', 5*60, get_server_timer_arg())

end

end

 

when devil_stone5_fail3.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Pozostalo 5 minut!")

server_timer('devil_stone5_fail', 5*60, get_server_timer_arg())

end

end

 

when devil_stone5_fail.server_timer begin

if d.select(get_server_timer_arg()) then

d.notice("Nie udalo sie, zostaniesz wylogowany!")

d.exit_all()

end

end

 

--when devil_stone4.kill begin

--d.setf("level", 5)

--d.setf("stone_count", 4)

--d.clear_regen()

--d.regen_file("data/dungeon/deviltower5_regen.txt")

--d.jump_all_local(special.devil_tower[4][1], special.devil_tower[4][2])

--end

 

when 1062.kill with pc.in_dungeon() and d.getf("level") == 5 begin

local KILL_COUNT_FOR_DROP_KEY = 50

--if is_test_server() then

--KILL_COUNT_FOR_DROP_KEY = 1

--end

local n =d.getf("count") + 1

d.setf("count", n)

if n == KILL_COUNT_FOR_DROP_KEY then

-- ±Ľ¤UÂę°Í

game.drop_item(50084, 1)

d.setf("count", 0)

end

end

when devil_stone5.take with item.vnum == 50084 begin

npc.purge()

item.remove()

d.setf("stone_count", d.getf("stone_count") - 1)

if d.getf("stone_count") <= 0 then

d.setf("level", 6)

d.clear_regen()

d.regen_file("data/dungeon/deviltower6_regen.txt")

 

d.notice("Brawo udalo sie! jestes na 6 pietrze!")

d.notice("Zabij wszystkie potwory!")

d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])

clear_server_timer('devil_stone5_fail1', get_server_timer_arg())

clear_server_timer('devil_stone5_fail2', get_server_timer_arg())

clear_server_timer('devil_stone5_fail3', get_server_timer_arg())

clear_server_timer('devil_stone5_fail', get_server_timer_arg())

else

d.notice("Zostalo"..d.getf("stone_count").."pieczeci")

end

end

 

when devil_stone6.kill begin

-- ǰe¨ě·Ň¸tҦbŞş¦aąĎ

-- §_«hˇA}ł]¤@­Ó·s·Ň¸t

--d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2])

d.kill_all()

-- d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4)

d.check_eliminated()

local reward_alchemist = {20074, 20075, 20076}

d.spawn_mob(reward_alchemist[number(1,3)], 425, 216);

d.setqf("can_refine", 1)

end

 

--------------------------------------

-- ĄŃi¤J7ĽÓ¦Ü¨ěąF8ĽÓ¤§«e

--------------------------------------

 

when 20074.chat."Chce przejsc dalej" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

say(""..mob_name(20074).."")

say("Zostaniesz przeniesiony")

say("na 7 pietro Wiezy Demonow!")

say("Lecz uwazaj...")

say("Tam nie bedzie tak latwo jak wczesniej!")

wait()

if pc.level >=75 then

say("Kazdy z graczy zostanie przeniesiony!")

timer("devil_jump_7", 6)

return

end

say("Mozesz przejsc dalej!")

say("")

say("")

wait()

pc.warp(590500, 110500)

return

end

when 20075.chat."Chce przejsc dalej" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

say(""..mob_name(20075).."")

say("Zostaniesz przeniesiony")

say("na 7 pietro Wiezy Demonow!")

say("Lecz uwazaj...")

say("Tam nie bedzie tak latwo jak wczesniej!")

wait()

if pc.level >=75 then

say("Kazdy z graczy zostanie przeniesiony!")

timer("devil_jump_7", 6)

return

end

say("Mozesz przejsc dalej!")

say("")

say("")

wait()

pc.warp(590500, 110500)

return

end

when 20076.chat."Chce przejsc dalej" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

say(""..mob_name(20076).."")

say("Zostaniesz przeniesiony")

say("na 7 pietro Wiezy Demonow!")

say("Lecz uwazaj...")

say("Tam nie bedzie tak latwo jak wczesniej!")

wait()

if pc.level >=75 then

ssay("Kazdy z graczy zostanie przeniesiony!")

timer("devil_jump_7", 6)

return

end

say("Mozesz przejsc dalej!")

say("")

say("")

wait()

pc.warp(590500, 110500)

return

end

 

when devil_jump_7.timer begin

d.clear_regen()

 

d.spawn_mob(8018, 639, 658)

d.spawn_mob(8018, 611, 637)

d.spawn_mob(8018, 596, 674)

d.spawn_mob(8018, 629, 670)

 

d.setf("level", 7)

 

d.jump_all(2048+590, 6656+638)

end

 

when 8018.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

local cont = d.getf("7_stone_kill") + 1

d.setf("7_stone_kill", cont)

 

if cont >= 4 then

d.setf("7_stone_kill", 0)

d.set_regen_file("data/dungeon/deviltower7_regen.txt")

end

end

 

when 8019.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

game.drop_item(30300, 1)

end

 

when 30300.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

pc.remove_item("30300", 1)

 

local pct = number(1,10)

 

if pct == 1 then

-- ±Ľ¤UŻu¦aąĎ

game.drop_item(30302, 1)

d.clear_regen()

else

-- ±Ľ¤U°˛¦aąĎ

game.drop_item(30301, 1)

 

end

end

 

when 30302.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

-- ǰe¨ě8ĽÓ

say("Przeniesiesz sie na 8 pietro!")

pc.remove_item("30302", 1)

timer("devil_jump_8", 6)

d.clear_regen()

end

 

--------------------------------------------

-- ĄŃi¤J8ĽÓ¦Ü¨ěąF9ĽÓ¤§«e

--------------------------------------------

when devil_jump_8.timer begin

d.setf("level", 8)

d.jump_all(2048+590, 6656+403)

d.set_regen_file("data/dungeon/deviltower8_regen.txt")

d.spawn_mob(20366, 640, 460)

local _count= pc.count_item(30302)-- ?ř·ŔŻu¤`ĆFđ

pc.remove_item(30302,_count)

 

end

 

when 1040.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

local pct1 = number(1, 5)

if pct1 == 1 then

local pct2 = number(1, 10)

if pct2 == 1 then

-- ±Ľ¤UŻuÂę°Í

game.drop_item(30304, 1)

else

-- ±Ľ¤U°˛Âę°Í

game.drop_item(30303, 1)

end

else

return

end

end

 

when 20366.take with item.vnum == 30304 begin

-- 9ĽÓ«Ę¦L¸Ń°Ł

d.notice("Zostaniecie przeniesieni na 9 pietro!")

npc.purge()

item.remove()

timer("devil_jump_9", 6)

end

 

---------------------------------------------

-- ĄŃi¤J9ĽÓ¦Üµ˛§ô

---------------------------------------------

when devil_jump_9.timer begin

d.setf("level", 9)

d.jump_all(2048+590, 6656+155)

d.regen_file("data/dungeon/deviltower9_regen.txt")

end

 

when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin

d.kill_all()

notice_all(pc.get_name().." zabil Umarlego Rozpruwacza!")

timer("devil_end_jump", 60)

end

 

when devil_end_jump.timer begin

d.exit_all()

end

end

end

 

 

Szukam Ekipy / Gildii na s9 agronas czerwoni lv +35

Opublikowano

quest metin begin
state start begin
when 5020.kill begin
pc.give_item2(2523,1)
end
end
end

a da sie jeszcze zrobic tak ze z ograniczeniem levelowym do np 20?

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...