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

Ponieważ każdy item , który ma mieć podobną funkcję , musi też posiadać substype18 & type10 lub na odwrót

PS. ustawiasz to w Nawikacie

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

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

Witam , dodałem dungeona na swój serwer.

Jest tylko problem.

Nie teleportuje nas chociaż spełniamy wymogi i mamy grupę.

Tutaj kod dungeona

 

Id mapy - 22 ( atlantyda)

kordy - 1536+180, 12032+180 ( na komnate smoka )

 

quest wymiarepik begin
state start begin
when 20092.chat."Wymiar Metina" begin
say_red("Hwa-Hae:")
say("Witaj wojowniku! Mogę cię wpuścić do")
say("Wymiaru Metina, w którym znajdują się ")
say("Najgroźniejsze metiny jakie żyją w naszym")
say("Świecie. Możesz udać się tam tylko ze ")
say("Swoją grupą.")
say("Czy chcecie się tam udać?")
local open = select("Przenieś Nas!","Może Później!")
if open == 1 then
if party.is_leader() == 0 then
say_red("Hwa-Hae:")
say("Nie jesteś liderem grupy!")
return
end
if pc.level < 110 then
say_red("Hwa-Hae:")
say("Lider musi posiadać przynajmniej 110 Poziom!")
return
end
if party.get_near_count() < 2 then
say_red("Hwa-Hae:")
say("W grupie musi być przynajmniej 3 członków!")
return
end
pc.setqf("dungeon", 1)
d.jump_all(22, 1536+180, 12032+180)
elseif open == 2 then
return
end
end
-- 1 Piętro
when login with pc.in_dungeon() and pc.getqf("p1") begin
if pc.getqf("p1") > 0 then
pc.setqf("p1", 0)
d.notice("Witaj w Wymiarze Metina, wszystkie poziom mają metiny")
d.notice("które trzeba rozwalić. Powodzenia!")
d.spawn_mob(8028, 216, 668)
d.spawn_mob(8028, 210, 633)
d.spawn_mob(8028, 197, 613)
d.spawn_mob(8028, 165, 600)
d.spawn_mob(8028, 137, 602)
d.spawn_mob(8028, 105, 632)
d.spawn_mob(8028, 102, 663)
d.spawn_mob(8028, 110, 684)
d.spawn_mob(8028, 132, 705)
d.spawn_mob(8028, 157, 711)
end
end

when 8028.kill with pc.in_dungeon() and pc.getqf("p1") begin
party.setf("rozwal", party.getf("rozwal") +1)
if party.getf("rozwal") >= 10 then
d.notice("Udało ci się przejść pierwszy poziom, za chwilę pojawią się ")
d.notice("kolejne metiny!")
timer("tajm1",5)
end
end
-- 2 Piętro
when tajm1.timer with pc.in_dungeon() and pc.getqf("p1") begin
d.spawn_mob(8029, 216, 668)
d.spawn_mob(8029, 210, 633)
d.spawn_mob(8029, 197, 613)
d.spawn_mob(8029, 165, 600)
end

when 8029.kill with pc.in_dungeon() and pc.getqf("p1") begin
party.setf("rozwal2", party.getf("rozwal2") +1)
if party.getf("rozwal2") >= 4 then
d.notice("Udało ci się przejść drugi poziom, za chwilę pojawią się ")
d.notice("kolejne metiny!")
timer("tajm2",5)
end
end
-- 3 Piętro
when tajm2.timer with pc.in_dungeon() and pc.getqf("p1") begin
d.notice("Witaj na 3 poziomie, zasada jest taka sama za każdym razem")
d.notice("lecz metiny są coraz bardziej silniejsze.")
d.spawn_mob(8031, 216, 668)
d.spawn_mob(8031, 210, 633)
end

when 8031.kill with pc.in_dungeon() and pc.getqf("p1") begin
party.setf("rozwal3", party.getf("rozwal3") +1)
if party.getf("rozwal3") >= 2 then
d.notice("Udało ci się przejść pierwsze piętro, za chwilę zostaniesz przeniesiony!")
timer("tajm3", 5)
end
end
-- 4 Piętro
when tajm3.timer with pc.in_dungeon() and pc.getqf("p1") begin
d.notice("Dotarłeś na ostatnie czyli 4 piętro.")
d.notice("Tutaj zamiast Metina jest Krąg Ognia. Powodzenia.")
d.spawn_mob(11506, 146, 655)
end

when 11506.kill with pc.in_dungeon() and pc.getqf("p1") begin
timer("thekoniec", 30)
end

when thekoniec.timer with pc.in_dungeon() and pc.getqf("p1") begin
d.exit_all()
end
-- Dodatkowe Zabezpieczenia
when logout with pc.in_dungeon() and pc.getqf("p1") begin
party.setf("rozwal", 0)
party.setf("rozwal2", 0)
party.setf("rozwal3", 0)
d.exit_all()
end
end
end

1377774857-U369478.png


Opublikowano

VirQu, zamień funkcję:

d.jump_all

na:

d.new_jump_all 

- a jak nie zadziała to

d.join(22)

- a jak nie zadziała to napisz, wina wtedy będzie po stronie serwera ;)

KONIEC


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


2013-08-15

Opublikowano

Prosiłbym o napisanie dwóch questów (bez żadnych dialogów) [ Oczywiście nagrodzę limitem + 5 do profilu ]:

 

1.Quest na Kamień Duchowy, który sprawdza czy mamy każdy skill na G w zależności od klasy zapewne :) i jeżeli mamy to daje nam wszystkie te skille na P.

 

2.Poprosiłbym o quest na 2 sklepy w jednym.

 

Z góry dziękuję i pozdrawiam.

 

 

Zależy mi na czasie ;x.

"Kiedy nie chcesz - szukasz powodów. Gdy chcesz - szukasz sposobów"

Opublikowano

Prosiłbym o napisanie dwóch questów (bez żadnych dialogów) [ Oczywiście nagrodzę limitem + 5 do profilu ]:

 

1.Quest na Kamień Duchowy, który sprawdza czy mamy każdy skill na G w zależności od klasy zapewne :) i jeżeli mamy to daje nam wszystkie te skille na P.

 

2.Poprosiłbym o quest na 2 sklepy w jednym.

 

Z góry dziękuję i pozdrawiam.

 

 

Zależy mi na czasie ;x.

Quest z kamieniem duchowym,
xxx 

Napisałem go tka, że wszystkie skile muszą być minimum na poziomie G1 i wtedy jak wszystkie są na minimum G1 on nam daje wszystkie na P.

A tu masz quest ze sklepem

xxx

 

LINKI NA PROŚBĘ @Xenore USUNIĘTE

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

Chodziło mi właśnie o minimum G1 jak napisałeś.

 

@Wklej nie działa x.x . Jak poprawisz i zadziała oczywiście dam obiecaną nagrodę.

"Kiedy nie chcesz - szukasz powodów. Gdy chcesz - szukasz sposobów"

Opublikowano

Ale nie wiem czy mnie rozumiesz. Wszystkie skile czyli u bodego Aura, berserk itp muszą być na g1 minimum , jeśli chodź jeden nie jest na G1 to on nie da skili na P

 

@Down

A to w takim razie w porzo. Niestety nie mam już tych questów, musisz czekać , aż storna zadziała. Bo ja zawsze jak napisze questa komuś i dam na wklej.to to go usuwam z plupitu. Przyzwyczajenie

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

Dokładnie o to mi chodzi :)

"Kiedy nie chcesz - szukasz powodów. Gdy chcesz - szukasz sposobów"

Opublikowano

Chcialbym zrobic zamowienie na questa typu:

 

Event ox pozycja 20358. Bez /m20358. prosiłbym Na zapytanie klient i zapytanie navicat, ox wydarzenie Questy .

 

pamietam taki byl Ravia.eu oraz Nawie.eu bez /m 20358 . bylo taki item nie wiem nazwe ;x

REF@
Opublikowano

Naprawi ktoś quest? Są to katakumby. Wszystko działa do momentu przeniesienia klucza (30311) na statuę kuda (30101). Nic się wtedy nie dzieje. Czy mógłby ktoś naprawić to miejsce i dopisać możliwość przenoszenia się w grupie i klikania na statuę jako lider grupy?

 

 

 

-------------------------------
---Devils Catacomb by Exterminatus---
---Letzte bearbeitung am 03.03.2012 um 12:20Uhr durch Exterminatus
---Spolszczona wersja oraz drobne poprawki by Swierko12
-------------------------------
quest devilcave begin
state start begin
--Reset stanu DC
when 20350.chat."Zresetuj stan" with pc.is_gm begin
say_title("Strażnik Katakumb")
say("")
say_reward("Status zresetowany!")
say("")
game.set_event_flag("dc_versuche",1)
game.set_event_flag("dcgamer",0)
game.set_event_flag("dc_geschaft",0)
end
--Konfiguracja
when 20350.chat."Konfiguracja" with game.get_event_flag("block_dc_config") == 0 and pc.is_gm begin
game.set_event_flag("dc_is_ok",1)
game.set_event_flag("block_dc_config",1)
game.set_event_flag("dc_versuche",1)
end
--Nieudane wejście
--when 20351.chat."[Lv.80] Devil's Catacomb" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 and pc.get_level() > 80 begin
--say_title("Strażnik Katakumb")
--say("")
--say_reward("Nie możesz wejść do Devil's Catacomb!")
--say("")
--say_reward("Przynieś mi Relikt Żniwiarza!")
--say_reward("Wtedy pozwolę Ci iść dalej!")
--end
--when 20351.chat."[Lv.80] Devil's Catacomb" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 1 and pc.get_level() < 80 begin
--say_title("Strażnik Katakumb")
--say("")
--say_reward("Posiadasz zbyt niski poziom!")
--say("")
--end
--Oddanie przedmiotu
--when 20351.take with item.vnum == 30122 and pc.getqf("can_in_dc") == 0 begin
--if pc.get_level() < 80 then
--say_title("Strażnik Katakumb")
--say("")
--say_reward("Musisz posiadać 80 poziom oraz Relikt Żniwiarza!")
--say("")
--else
--item.remove()
--say_title("Strażnik Katakumb")
--say("")
--say_reward("Dobrze, możesz wejść do Devil's Catacomb!")
--say("")
--pc.setqf("can_in_dc", 1)
--end
--end
--Wejście
when 20350.chat."W Diabelskich Katakumbach" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 begin
if pc.get_level() < 75 then
say_title("Strażnik Katakumb")
say("")
say_reward("Posiadasz zbyt niski poziom!")
say("")
else
say_title("Strażnik Katakumb")
say("")
say("")
say("")
say("")
say("")
say("")
say("")
say("")
say("")
say("")
wait()
say_title("Strażnik Katakumb")
say("")
say("Do tej pory "..game.get_event_flag("dcgamer").." wojowników weszło")
say("do Katakumb. Tylko "..game.get_event_flag("dc_geschaft").." wróciło")
say("bezpiecznie do swoich domów!")
wait()
say_title("Strażnik Katakumb")
say("")
say_reward("Jesteś pewien swojej decyzji ?")
say_reward("Wojowników których próbowało przejść")
say_reward("przez Katakumby, było aż "..game.get_event_flag("dc_versuche").." .")
say_reward("Niewielu z nich dożyło dnia dzisiejszego...")
say("")
local dc_login = select("Spróbuj", "Anuluj")
if dc_login == 1 then
pc.warp(6008000, 6000)
elseif dc_login == 2 then
return
end
end
end
--Ebene 1
when login with pc.get_map_index() == 16 begin
game.set_event_flag(("dcgamer"), game.get_event_flag("dcgamer")+1)
game.set_event_flag(("dc_versuche"), game.get_event_flag("dc_versuche")+1)
say_title("Devil's Catacomb")
say("Aby dostać się na drugi poziom musisz...")
say_item("Kryształowy Klucz Duszy", 30311, "") -- Serwer nie posiada owego przedmiotu, dodaj go lub zmień ID przedmiotu w tekście
say("przeciągnąć klucz na posąg!")
say("")
say_reward("Powodzenia!")
say("")
pc.setqf("sksgedroppt", 0)
end
when kill with not npc.is_pc() and pc.get_map_index() == 16 begin
local sks = number(1,200)
if sks==1 and pc.getqf("sksgedroppt")==0 then
pc.setqf("sksgedroppt", 1)
chat("Udało Ci się! Znalazłeś Kryształowy Klucz Duszy!")
game.drop_item(30311, 1)
else
chat("Ten potwór nie posiadał Klucza...")
end
end
when 30101.take with item.vnum == 30311 begin
item.remove()
d.new_jump_all(16, 6054400, 4100)
timer("dc1", 600)
d.notice("~~~Musisz przedostać się przez Piekielne Bramy!~~~")
d.notice("~~~Twój czas to tylko 10 minut!~~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene2.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore.txt") -- regen zmieniony, ponieważ nie istniał, oryginalna nazwa dc_regen_tore_unten
d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt")
d.spawn_mob(30104, 741, 221) -- mob nie istnieje na plikach oyun, trzeba go dodać ręcznie
end
when dc1.timer begin
d.notice("Czas upłynął, zostaniesz przeniesiony do M1!")
warp_all_to_village()
end

-- TIMERY POPRAWIONE, AUTOR QUESTA CHYBA SIĘ NA RZECZY NIE ZNAŁ, Swierko12
when dc2.timer begin
d.notice("Pozostało 50 minut!")
timer("dc3", 300)
end
when dc3.timer begin
d.notice("Pozostało 45 minut!")
timer("dc4", 300)
end
when dc4.timer begin
d.notice("Pozostało 40 minut!")
timer("dc5", 300)
end
when dc5.timer begin
d.notice("Pozostało 40 minut!")
timer("dc6", 300)
end
when dc6.timer begin
d.notice("Pozostało 35 minut!")
timer("dc7", 300)
end
when dc7.timer begin
d.notice("Pozostało 30 minut!")
timer("dc8", 300)
end
when dc8.timer begin
d.notice("Pozostało 25 minut!")
timer("dc9", 300)
end
when dc9.timer begin
d.notice("Pozostało 20 minut!")
timer("dc10", 300)
end
when dc10.timer begin
d.notice("Pozostało 15 minut!")
timer("dc11", 300)
end
when dc11.timer begin
d.notice("Pozostało 10 minut!")
timer("dc12", 600)
end
when dc12.timer begin
d.notice("Czas upłynął, zostaniesz przeniesiony do M1!")
warp_all_to_village()
end
--Poziom 2
when 30104.chat."[Poziom 3] Strażnik" begin
npc.purge()
say("To dopiero początek...")
wait()
d.new_jump_all(300, 4427, 12284)
timer("dc1", 6000)
timer("dc2", 600)
d.setf("goto_ebene3", 0)
d.notice("~~Przed tobą jeszcze długa droga...")
d.notice("~~Znajdź i zniszcz Metiny Odwetu~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene3.txt")
local metindv = number(1,4)
if metindv==1 then
d.spawn_mob(8028, 1351, 348)
d.spawn_mob(8028, 1148, 350)
d.spawn_mob(8028, 1151, 155)
d.spawn_mob(8029, 1351, 149)
end
if metindv==2 then
d.spawn_mob(8028, 1351, 348)
d.spawn_mob(8028, 1148, 350)
d.spawn_mob(8029, 1151, 155)
d.spawn_mob(8028, 1351, 149)
end
if metindv==3 then
d.spawn_mob(8028, 1351, 348)
d.spawn_mob(8029, 1148, 350)
d.spawn_mob(8028, 1151, 155)
d.spawn_mob(8028, 1351, 149)
end
if metindv==4 then
d.spawn_mob(8029, 1351, 348)
d.spawn_mob(8028, 1148, 350)
d.spawn_mob(8028, 1151, 155)
d.spawn_mob(8028, 1351, 149)
end
end
when 8028.kill with pc.in_dungeon() begin
d.notice("~~Zniszczyłeś fałszywy Kamień Metin~~")
end
when 8029.kill with pc.in_dungeon() begin
d.notice("~~Prawdziwy Kamień Metin został zniszczony~~")
timer("dc2", 6000)
timer("devils_catacomb_goto_ebene5", 5)
end
when dc2.timer begin
d.notice("Czas upłynął, zostaniesz przeniesiony do M1!")
warp_all_to_village()
end

--Poziom 4 (Labirynt)
when devils_catacomb_goto_ebene4.timer begin
d.new_jump_all(300, 3143, 12657)
d.setf("labyrinth", 1)
timer("dc3", 600)
d.notice("~~Znajdź wyjście z labiryntu~~")
d.notice("~~następnie przeczytaj napis z posągu~~")
if game.get_event_flag("dc_is_wartung") == 1 then
d.spawn_mob(30104, 72, 586)
end
end
when 30104.chat."[Labirynt] Napis" with pc.in_dungeon() begin
say_title(".....")
timer("dc3", 6000)
d.notice("~~Odnalałeś właściwą drogę~~")
timer("devils_catacomb_goto_ebene5", 5)
end
when dc3.timer begin
d.notice("Czas upłynął, zostaniesz przeniesiony do M1!")
warp_all_to_village()
end
--Poziom 6 (Tartar)
when devils_catacomb_goto_ebene5.timer begin
d.new_jump_all(300, 3917, 12925)
d.notice("~~Znajdź i zabij Tartara, aby otrzymać Totem!~~")
d.notice("~~Gdy go otrzymasz, przeciągnij i upuść na obelisku~~")
d.spawn_mob(30102, 848, 739)
timer("dc4", 600)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene5.txt")
local tartaros = number(1,4)
if tartaros==1 then
d.spawn_mob(2593, 991, 848)
end
if tartaros==2 then
d.spawn_mob(2593, 999, 652)
end
if tartaros==3 then
d.spawn_mob(2593, 848, 577)
end
if tartaros==4 then
d.spawn_mob(2593, 703, 644)
end
if tartaros==5 then
d.spawn_mob(2593, 692, 817)
end
end
when 2593.kill with pc.in_dungeon() begin
d.notice("~~~Tartar został pokonany!~~~")
game.drop_item(30312, 1)
end
when 30102.take with item.vnum == 30312 begin
timer("dc4", 6000)
item.remove()
npc.purge()
say_reward("...")
d.notice("~~Udało się!~~")
timer("devils_catacomb_goto_ebene6", 5)
end
when dc4.timer begin
d.notice("Czas upłynął, zostaniesz przeniesiony do M1!")
warp_all_to_village()
end
--Poziom 7 (Charon)
when devils_catacomb_goto_ebene6.timer begin
d.new_jump_all(300, 4411, 12736)
timer("dc5", 600)
d.notice("~~Zabij Charona aby dostać się na ostatni poziom!~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene6.txt")
end
when 2597.kill with pc.in_dungeon() begin
timer("dc5", 6000)
d.notice("~~Pokonałeś Charona!~~")
d.notice("~~Przygotuj się do walki z Azraelem!~~")
timer("devils_catacomb_goto_ebene7", 10)
end
when dc5.timer begin
d.notice("Czas upłynął, zostaniesz przeniesiony do M1!")
warp_all_to_village()
end
--Poziom 8 (Azrael)
when devils_catacomb_goto_ebene7.timer begin
d.new_jump_all(300, 3147, 13191)
d.notice("~~Pokonaj Azraela, wówczas otrzymasz nagrodę!~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene7.txt")
end
when 2598.kill with pc.in_dungeon() begin
game.set_event_flag(("dc_geschaft"), game.get_event_flag("dc_geschaft")+1)
local level = pc.get_level()
d.notice("~~Pokonałeś Azraela, zasłużyłeś na nagrodę!~~")
d.kill_all()
d.kill_all()
notice_all("Gracz "..pc.get_name().." z poziomem "..(level).." zabił Azraela!")
timer("goout_from_dc", 60)
d.spawn_mob(9012, 74, 1159)
pc.give_item2(50186)
end
end
end

 

Opublikowano

@Nexicoll

 

Teraz przeniosło, ale jakoś dziwnie.

Po pierwsze nie na kordy 6054400, 4100 tylko tak jakby na początek mapy (tak jakby na Town).

Po drugie po przeniesieniu jestem na początku tam gdzie sie klucz dropi, ale nie respią się moby (a akurat na niej jest regen ustawiony).

Opublikowano

Dziwisz się, w tym queście co podałeś wyżej w ogóle nie jest dana funkcja wywołująca dany regen, czyli tego

d.regen_file("")

A co do przenoszenia to spróbuj tak

d.join(16, 6054400+4100)

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

Dziwisz się, w tym queście co podałeś wyżej w ogóle nie jest dana funkcja wywołująca dany regen, czyli tego

d.regen_file("")

A co do przenoszenia to spróbuj tak

d.join(16, 6054400+4100)

d.join przyjmuje tylko 1 argument jakim jest index mapy. Przenosi na koordy w town.txt

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

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Dalej to samo. Czyli co powinienem zrobić?

Jeśli zmienie town i ktoś padnie na 1 pietrze i da miasto to przeniesie go na 2 pietro.

Opublikowano

!sVp, tego d.new_jump_all nie ruszaj, dobrze jest..

Co do klucza, spróbuj zamienić to:

 

 

when 30101.take with item.vnum == 30311 begin
item.remove()
d.new_jump_all(16, 6054400, 4100)
timer("dc1", 600)
d.notice("~~~Musisz przedostać się przez Piekielne Bramy!~~~")
d.notice("~~~Twój czas to tylko 10 minut!~~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene2.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore.txt") -- regen zmieniony, ponieważ nie istniał, oryginalna nazwa dc_regen_tore_unten
d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt")
d.spawn_mob(30104, 741, 221) -- mob nie istnieje na plikach oyun, trzeba go dodać ręcznie
end

 

na to:

 

when 30101.take with item.vnum == 30311 begin
d.new_jump_all(16, 6054400, 4100)
timer("dc1", 600)
d.notice("~~~Musisz przedostać się przez Piekielne Bramy!~~~")
d.notice("~~~Twój czas to tylko 10 minut!~~~")
d.regen_file("data/dungeon/devilcave/dc_regen_ebene2.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore.txt") -- regen zmieniony, ponieważ nie istniał, oryginalna nazwa dc_regen_tore_unten
d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt")
d.spawn_mob(30104, 741, 221) -- mob nie istnieje na plikach oyun, trzeba go dodać ręcznie
item.remove()
end

 

 

KONIEC


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


2013-08-15

Opublikowano

A to nie działa tak, ze po d.new_jump_all() trzeba dać when login bo reszta nie zadziała?

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

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

A spróbuj tak

 

when 30101.take with item.vnum == 30311 begin

item.remove()

d.join(16)

end

when login with pc.in_dungeon begin

pc.warp( 6054400, 4100)

timer("dc1", 600)

d.notice("~~~Musisz przedostać się przez Piekielne Bramy!~~~")

d.notice("~~~Twój czas to tylko 10 minut!~~~")

d.regen_file("data/dungeon/devilcave/dc_regen_ebene2.txt")

d.regen_file("data/dungeon/devilcave/dc_regen_tore.txt") -- regen zmieniony, ponieważ nie istniał, oryginalna nazwa dc_regen_tore_unten

d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt")

d.spawn_mob(30104, 741, 221) -- mob nie istnieje na plikach oyun, trzeba go dodać ręcznie

end

 

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

Ooo teraz działa :D

Tylko że przenosi tak jakby dwa razy i po przeniesieniu dalej pokazuje się informacja o szukaniu klucza. W queście jest

when login with pc.get_map_index() == 16 begin
say_title("Devil's Catacomb")
say("Aby dostać się na drugi poziom musisz...")
itd.

Więc za każdym razem będzie pokazywać kiedy wejde na mapę o indexie 16.

A co by było jakbym skopiował folder katakumb po stronie klienta i wrzucił drugi raz żeby były 2 foldery katakumb, ale ten drugi ze zmienionym Town (żeby przenosiło na 2 pietro)

Następnie wpisał to do index z inną liczbą i do CONFIG też tą liczbe i wtedy funkcją d.join(i tu nie 16 tylko inny) przenosi na town z drugiej mapy(2 pietro).

Wtedy nie będzie przenosiło tak jakby 2 razy i nie będzie informacji o szukaniu klucza.

Tylko nwm czy CONFIG się jakoś nie zepsuje bo podobno może tam być 32 mapy.

Opublikowano

Witam Może Ktoś Mi Poprawić Tego Questa ? :D

Consola:

 

/usr/home/game/share/locale/germany/quest$ ./qc panel_admina.quest

QUEST : panel_admina

StATE : state

WHEN : 69100.use

Calls undecleard function! : query

Abort (core dumped)

 

Okenko:

 

Błąd

Polecienie './qc panel_admina.quest'

zawiodło zwracając kod wyniku 134 oraz komunikat błędu

 

Quest:

 

quest panel_admina begin
state start begin
when 69100.use begin
say_size(400,400)
say_reward("Książka Administratora:")
local s = select("Zbanuj Gracza", "Odbanuj Gracza", "Kick Kill Stun", "Zrzuć Moby na Mapę ", "Wymiar Władców Zarządzanie ", "Otwórz NPC ", "Banowanie na czas", "Smocze Monety ", "Pokaż gracza ", "Wyjdź ")
if s == 10 then
return
elseif s == 1 then
say("Podaj nick gracza:")
local nick = input()
say("Podaj powód zbanowania:")
local powod = input()
say("Na pewno chcesz zbanować?")
local na_pewno = select("Tak", "Nie")
if na_pewno == 2 then
return
elseif na_pewno == 1 then
local id = query("SELECT account_id FROM player.player WHERE name = '"..nick.."';")
query("UPDATE account.account SET status = 'BLOCK' WHERE id = '"..id.."';")
query("UPDATE account.account SET channel_company = '"..powod.."' WHERE id = '"..id.."';")
notice_all("Gracz o nicku "..nick.." został Zablokowany! ")
end
elseif s == 2 then
say("Podaj nick gracza:")
local nick = input()
say("Na pewno chcesz odbanować gracza?")
local na_pewno = select("Tak", "Nie")
if na_pewno == 2 then
return
elseif na_pewno == 1 then
local id = query("SELECT account_id FROM player.player WHERE name = '"..nick.."';")
query("UPDATE account.account SET status = 'OK', availDt = '0000-00-00 00:00:00' WHERE id = '"..id.."';")
notice_all("Gracz o nicku "..nick.." został Odblokowany! ")
end
elseif s == 3 then
say("Co chcesz?")
local co = select("Kick", "Kill", "Stun", "Spowolnij", "Anuluj")
if co == 5 then
return
elseif co == 1 then
say("Wpisz nick gracza:")
local nick = input()
command("dc "..nick)
say_red("Gracz o nicku "..nick.." został Wyrzucony! ")
elseif co == 2 then
say("Wpisz nick gracza:")
local nick = input()
command("kill "..nick)
say_red("Gracz o nicku "..nick.." został Zabity! ")
elseif co == 3 then
say("Wpisz nick gracza:")
local nick = input()
command("stun "..nick)
say_red("Gracz o nicku "..nick.." został Omdlony! ")
elseif co == 4 then
say("Wpisz nick gracza:")
local nick = input()
command("slow "..nick)
say_red("Gracz o nicku "..nick.." został Spowolniony! ")
end
elseif s == 4 then
local e = select("Zrzuć Moby koło siebie", "Skasuj Potwory obok siebie", "Skasuj na Mapie", "Moby po całej mapie", "Anuluj")
if e == 5 then
return
elseif e == 1 then
say_red("Zrzuć Moby koło siebie ")
say("Na pewno chcesz zrzucać moby? ")
local resp = select("Tak", "Nie")
if resp == 2 then
return
elseif resp == 1 then
say("Podaj ID Potwora i ilość ")
say_red("Przykład: 1093 10 ")
local spawn = input()
command("m "..spawn)
say("Zostały Zrzucone moby o id i ilości " ..spawn)
end
elseif e == 2 then
say("Skasowano!")
command("purge")
elseif e == 3 then
say("Skasowano!")
command("purge all")
elseif e == 4 then
say("Czy na pewno chcesz zrzucić moby po całej mapie? ")
local resp1 = select("Tak", "Nie")
if resp1 == 2 then
return
elseif resp1 == 1 then
say("Wpisz id moba:")
local id = input()
say("Wpisz ilość:")
local ilosc = input()
for i = 1, ilosc do
command("mm "..id)
end
end
end
elseif s == 5 then
say("Możesz tutaj zarządzać wymiarem:")
local x = select("Dodaj do Wymiaru", "Skasuj Czasy Wymiaru", "Anuluj")
if x == 3 then
return
elseif x == 1 then
say("Podaj nick:")
local nick = input()
say("Podaj czas:")
local czas = input()
say("Na pewno chcesz dodać?")
local tak = select("Tak", "Nie")
if tak == 2 then
return
elseif tak == 1 then
say("DONE!")
end
elseif x == 2 then
say("Chcesz skasować czasy Wymiaru?")
local tak = select("Tak", "Nie")
if tak == 2 then
return
elseif tak == 1 then
notice_all("Czasy Wymiaru Władców Zostały Zrestartowane !")
end
end
elseif s == 6 then
say("Wybierz Jaki Sklep Chcesz Otworzyć: ")
local shop = select("Handlarka", "H.Bronią ", "H.Zbroją ", "Rybak", "Item-Shop", "Dozorca", "IS Dozorca ", "Anuluj")
if shop == 8 then
return
elseif shop == 1 then
npc.open_shop(9003)
chat("Sklep Został Otwarty ")
elseif shop == 2 then
npc.open_shop(9001)
chat("Sklep Został Otwarty ")
elseif shop == 3 then
npc.open_shop(9002)
chat("Sklep Został Otwarty ")
elseif shop == 4 then
npc.open_shop(9009)
chat("Sklep Został Otwarty ")
elseif shop == 5 then
npc.open_shop(9010)
chat("Sklep Został Otwarty ")
elseif shop == 6 then
game.open_safebox()
chat("Dozorca Został Otwarty ")
elseif shop == 7 then
game.open_mall()
chat("Dozorca IS Został Otwarty ")
end
elseif s == 7 then
say("Podaj nick:")
local nick = input()
say("Podaj do kiedy ma być zbanowany:[ENTER]Podaj w foramcie: yyyy-mm-dd gg:mm:ss")
local dni = input()
say("[ENTER]Podaj Powód Blokady ")
local powod = input()
say("Na pewno chcesz zbanować?")
local tak = select("Tak", "Nie")
if tak == 2 then
return
elseif tak == 1 then
local id = query("SELECT account_id FROM player.player WHERE name = '"..nick.."';")
query("UPDATE account.account SET availDt = '"..dni.."' WHERE id = '"..id.."';")
query("UPDATE account.account SET channel_company = '"..powod.."' WHERE id = '"..id.."';")
notice_all("Gracz o nicku "..nick.." został Zablokowany ")
notice_all("Do dnia "..dni.." powód blokady: "..powod.." ! ")
end
elseif s == 8 then
say_title("Możesz tutaj: ")
say_green("Doładować Smocze Monety Sprawdzić Ile kto Ma ")
say_green("Ująć SM ")
local sm = select("Doładuj SM", "Sprawdź Stan SM", "Ujmij SM", "Anuluj")
if sm == 4 then
return
elseif sm == 1 then
say("Wpisz nick, któremu chcesz doładować sm:")
local nick = input()
say("Ile SM chcesz doładować?")
local ile_sm = input()
say("Na pewno chcesz doładować: "..nick.." SM: "..ile_sm.."?")
local tak = select("Tak", "Nie")
if tak == 2 then
return
elseif tak == 1 then
query("UPDATE account.account SET cash = cash + '"..ile_sm.."' WHERE login= '"..nick.."';")
say("DONE!")
end
elseif sm == 2 then
say("Wpisz nick, do sprawdzenia stanu SM:")
local nick = input()
local sm = query("SELECT cash FROM account.account WHERE login = '"..nick.."';")
say(nick.." ma: "..sm.." SM!")
elseif sm == 3 then
say("Wpisz nick, któremu chcesz odjąć SM:")
local nick = input()
say("Wpisz ile chcesz odjąć SM:")
local ile_sm = input()
say("Chcesz odjąć: "..ile_sm.." graczowi: "..nick.."?")
local tak = select("Tak", "Nie")
if tak == 2 then
return
elseif tak == 1 then
query("UPDATE account.account SET cash = cash - '"..ile_sm.."' WHERE login= '"..nick.."';")
say("DONE!")
end
end
elseif s == 9 then
say("Wpisz nick gracza:")
local nick = input()
local ip = query("SELECT ip FROM player.player WHERE name = '"..nick.."';")
say("Podaj Ponownie Nick w celu potwierdzenia ")
local nick2 = input()
local infoid = query("SELECT account_id FROM player.player WHERE name = '"..nick2.."';")
local login = query("SELECT login FROM account.account WHERE id = '"..infoid.."';")
local lvl = find_pc_by_name(nick)
say("Level: "..pc.get_level(lvl))
say("Czas gry: "..pc.getplaytime(lvl))
say("Ip: "..ip)
say("Ilość Expa:"..pc.get_exp(lvl))
say("Postać Zawiera:"..pc.getgold(lvl).." Yang ")
say("Max HP:"..pc.get_hp(lvl))
say("Login Postaci to : "..login)
end
end
end
end

 

 

 

 

 

 

 

 

 

 

czego tu szukasz ?

 

 

 

 

 

 

 

 

Opublikowano

Ooo teraz działa :D

Tylko że przenosi tak jakby dwa razy i po przeniesieniu dalej pokazuje się informacja o szukaniu klucza. W queście jest

when login with pc.get_map_index() == 16 begin
say_title("Devil's Catacomb")
say("Aby dostać się na drugi poziom musisz...")
itd.

Więc za każdym razem będzie pokazywać kiedy wejde na mapę o indexie 16.

A co by było jakbym skopiował folder katakumb po stronie klienta i wrzucił drugi raz żeby były 2 foldery katakumb, ale ten drugi ze zmienionym Town (żeby przenosiło na 2 pietro)

Następnie wpisał to do index z inną liczbą i do CONFIG też tą liczbe i wtedy funkcją d.join(i tu nie 16 tylko inny) przenosi na town z drugiej mapy(2 pietro).

Wtedy nie będzie przenosiło tak jakby 2 razy i nie będzie informacji o szukaniu klucza.

Tylko nwm czy CONFIG się jakoś nie zepsuje bo podobno może tam być 32 mapy.

Jeśli się nie mylę chodzi Ci o ten wycinek

 

when 20350.chat."W Diabelskich Katakumbach" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 begin

if pc.get_level() < 75 then

say_title("Strażnik Katakumb")

say("")

say_reward("Posiadasz zbyt niski poziom!")

say("")

else

say_title("Strażnik Katakumb")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

wait()

say_title("Strażnik Katakumb")

say("")

say("Do tej pory "..game.get_event_flag("dcgamer").." wojowników weszło")

say("do Katakumb. Tylko "..game.get_event_flag("dc_geschaft").." wróciło")

say("bezpiecznie do swoich domów!")

wait()

say_title("Strażnik Katakumb")

say("")

say_reward("Jesteś pewien swojej decyzji ?")

say_reward("Wojowników których próbowało przejść")

say_reward("przez Katakumby, było aż "..game.get_event_flag("dc_versuche").." .")

say_reward("Niewielu z nich dożyło dnia dzisiejszego...")

say("")

local dc_login = select("Spróbuj", "Anuluj")

if dc_login == 1 then

pc.warp(6008000, 6000)

elseif dc_login == 2 then

return

end

end

end

--Ebene 1

when login with pc.get_map_index() == 16 begin

game.set_event_flag(("dcgamer"), game.get_event_flag("dcgamer")+1)

game.set_event_flag(("dc_versuche"), game.get_event_flag("dc_versuche")+1)

say_title("Devil's Catacomb")

say("Aby dostać się na drugi poziom musisz...")

say_item("Kryształowy Klucz Duszy", 30311, "") -- Serwer nie posiada owego przedmiotu, dodaj go lub zmień ID przedmiotu w tekście

say("przeciągnąć klucz na posąg!")

say("")

Tak więc mam pomysł jak to naprawić.Powinno zadziałać

when 20350.chat."W Diabelskich Katakumbach" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 begin

if pc.get_level() < 75 then

say_title("Strażnik Katakumb")

say("")

say_reward("Posiadasz zbyt niski poziom!")

say("")

else

say_title("Strażnik Katakumb")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

say("")

wait()

say_title("Strażnik Katakumb")

say("")

say("Do tej pory "..game.get_event_flag("dcgamer").." wojowników weszło")

say("do Katakumb. Tylko "..game.get_event_flag("dc_geschaft").." wróciło")

say("bezpiecznie do swoich domów!")

wait()

say_title("Strażnik Katakumb")

say("")

say_reward("Jesteś pewien swojej decyzji ?")

say_reward("Wojowników których próbowało przejść")

say_reward("przez Katakumby, było aż "..game.get_event_flag("dc_versuche").." .")

say_reward("Niewielu z nich dożyło dnia dzisiejszego...")

say("")

pc.getqf("logowanko", 1)

local dc_login = select("Spróbuj", "Anuluj")

if dc_login == 1 then

pc.warp(6008000, 6000)

elseif dc_login == 2 then

return

end

end

end

--Ebene 1

when login with pc.get_map_index() == 16 and pc.getqf("logowanko") > 0 begin

game.set_event_flag(("dcgamer"), game.get_event_flag("dcgamer")+1)

game.set_event_flag(("dc_versuche"), game.get_event_flag("dc_versuche")+1)

if pc.getqf("logowanko") > 0 then

pc.setqf("logowanko", 0)

say_title("Devil's Catacomb")

say("Aby dostać się na drugi poziom musisz...")

say_item("Kryształowy Klucz Duszy", 30311, "") -- Serwer nie posiada owego przedmiotu, dodaj go lub zmień ID przedmiotu w tekście

say("przeciągnąć klucz na posąg!")

say("")

say_reward("Powodzenia!")

say("")

pc.setqf("sksgedroppt", 0)

end

end

 

 

 

nexi.png

 

CYTOWAĆ MOJE POSTY, JEŚLI LICZYCIE NA POMOC !!

Opublikowano

@2x up

say_reward("Wojowników których próbowało przejść")

Polski znak diakrytyczny przy cudzysłowie ;)

 

umarł

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...