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

[Quest] Marmury u NPC - Odświeżona edycja


Cort

Rekomendowane odpowiedzi

Opublikowano

Czołem. Z góry pozdrawiam z4zola, on wie o co chodzi :D No to tutaj podrzucam Wam questa. To taki system z marmurami, progi kupna itp. Z resztą, zobaczcie sami, wszystko jest opisane na screenach ;]

5pocbz.jpg354krw.jpgiu0xmy.jpgnr70ep.jpgrcu1qy.jpg3udjzq.jpgjcm7xf.jpgzjmgak.jpg

Teraz przeciągam sobie marmur na NPC i wpisuję cene. Wpiszmy np 10.000.000

jcz0ms.jpgf2kgni.jpgh1q48f.jpg

Oczywiście marmur działa jak gra chciała, ze wszystkimi atrybutami itp. Z tym przeciąganiem to działa na zasadzie item.set_socket. Questa pewnie da napisać się krócej, dzisiaj nie miałem akurat na to pomysłu. Moby są w tablicy, a nazwy przy losowaniu odczytuje też z tablicy, jednak ich nazwy w polu z zaklętymi potworami i ceny progów już nie. No to co, tutaj quest:

http://pastebin.com/LEZdJ0pZ

 


quest marmureq begin
state start begin
when 20094.chat."Marmury Polimorfii" begin
npc.name()
say("Potrzebujesz marmuru polimorfii?")
say("W zależności ile zapłacisz, mogę Ci")
say("dać różne marmury. Płacisz w yangach")
say("No to jeśli to Cię zainteresowało")
say("zobacz na następujące opcje:")
local s = select("Jak to działa?","Kup czysty marmur","Jakie stwory są zaklęte?","Progi płatności","Zamknij")
if s == 1 then
npc.name()
say("To działa bardzo prosto.")
say("Kupujesz ode mnie pusty marmur.")
say("Kosztuje on jedynie 1.000.000 yang.")
say("Potem, w zależności od tego, ile mi")
say("wpłacisz, takie będziesz mieć dostępne")
say("marmury. Dzielą się one na trzy kategorie.")
say("Aby uzyskać marmur, przeciągnij go na mnie,")
say("potem wybierz próg płatności i wpłać pieniądze.")
say("Następnie dostaniesz marmur z losowym mobem.")
elseif s == 2 then
npc.name()
say_item_vnum(70104)
say_reward("Koszt: 1.000.000 yang")
if select("Kup Marmur","Anuluj") == 1 then
if pc.money < 1000000 then
npc.name()
say("Nie stać Cię na zakup marmuru!")
else
npc.name()
say("Kupiono marmur:")
say_item_vnum(70104)
pc.give_item2(70104)
pc.change_money(-1000000)
end
end
elseif s == 3 then
npc.name()
say("Wybierz próg płatności:")
local p = select("Próg I","Próg II","Próg III","Anuluj")
if p == 1 then
say_reward("Dziki Pies")
say_reward("Zaprzysiężony Żołnierz")
say_reward("Jin-Hee")
say_reward("Dziki Sługa")
say_reward("Goo-Pae")
elseif p == 2 then
say_reward("Ork")
say_reward("Best Kapitan")
say_reward("Silny Dziki Sługa")
say_reward("Elitarny Ork Generał ")
say_reward("Duży Łysy Czarny Ork")
elseif p == 3 then
say_reward("Wódz Orków")
say_reward("Ezoteryczny Fanatyk")
say_reward("Król Demonów")
say_reward("Młody Trujący Pająk")
say_reward("Pustynny Zawadiaka")
end
elseif s == 4 then
npc.name()
say("Próg płatności to określona kwota")
say("za którą możesz otrzymać marmur.")
say("W zależności od tego, czy zapłacisz")
say("5kk czy 50kk, otrzymasz moba z lepszej")
say("grupy. Progi są następujące:")
say("")
say_reward("Próg I - 5-25kk Yang")
say_reward("Próg II - 25-50kk Yang")
say_reward("Próg III - 50-100kk Yang")
end
end
when 20094.take with item.vnum == 70104 begin
local uno = {
[1] = {101},
[2] = {331},
[3] = {394},
[4] = {502},
[5] = {493},
}
local two = {
[1] = {601},
[2] = {591},
[3] = {552},
[4] = {635},
[5] = {657},
}
local drei = {
[1] = {691},
[2] = {701},
[3] = {1091},
[4] = {2061},
[5] = {2108},
}
local x = number(1, table.getn(uno))
local y = number(1, table.getn(two))
local z = number(1, table.getn(drei))
npc.name()
say("Wybierz próg płatności:")
local cash = tonumber(input())
if cash > pc.money then
npc.name()
say("Nie masz tylu yang!")
elseif cash == "" or cash <= 0 then
npc.name()
say("Wpisz poprawną kwotę.")
elseif cash < 5000000 then
npc.name()
say("Ta liczba nie zalicza się do żadnego z progów.")
else
if cash >= 5000000 and cash <= 25000000 then
npc.name()
say("Twoja cena zalicz się do Progu I.")
say("Czy chcesz zaklnąć moba w swój marmur?")
if select(locale.yes,locale.no) == 1 then
npc.name()
say("Twój mob to "..mob_name(uno[x][1]))
say("Używaj go rozważnie!")
pc.change_gold(-cash)
item.set_socket(0, uno[x][1])
end
elseif cash >= 25000000 and cash <= 50000000 then
npc.name()
say("Twoja cena zalicz się do Progu II.")
say("Czy chcesz zaklnąć moba w swój marmur?")
if select(locale.yes,locale.no) == 1 then
npc.name()
say("Twój mob to "..mob_name(two[y][1]))
say("Używaj go rozważnie!")
pc.change_gold(-cash)
item.set_socket(0, uno[y][1])
end
elseif cash >= 50000000 and cash <= 75000000 then
npc.name()
say("Twoja cena zalicz się do Progu III.")
say("Czy chcesz zaklnąć moba w swój marmur?")
if select(locale.yes,locale.no) == 1 then
npc.name()
say("Twój mob to "..mob_name(drei[z][1]))
say("Używaj go rozważnie!")
pc.change_gold(-cash)
item.set_socket(0, drei[z][1])
end 
end
end
end
end
end

 

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Opublikowano

@offtop

A już chciałem do Ciebie napisać gz 333 postów, a zrobiłeś temacik <3

 

@topic

Ciekawe, na pewno się przyda!

Mfg. <3

KsOC7.jpgPOMOGŁEM? KLIKNIJ LUBIĘ TO!
Opublikowano

 

 

Czołem. Z góry pozdrawiam z4zola, on wie o co chodzi :D No to tutaj podrzucam Wam questa. To taki system z marmurami, progi kupna itp. Z resztą, zobaczcie sami, wszystko jest opisane na screenach ;]

5pocbz.jpg354krw.jpgiu0xmy.jpgnr70ep.jpgrcu1qy.jpg3udjzq.jpgjcm7xf.jpgzjmgak.jpg

Teraz przeciągam sobie marmur na NPC i wpisuję cene. Wpiszmy np 10.000.000

jcz0ms.jpgf2kgni.jpgh1q48f.jpg

Oczywiście marmur działa jak gra chciała, ze wszystkimi atrybutami itp. Z tym przeciąganiem to działa na zasadzie item.set_socket. Questa pewnie da napisać się krócej, dzisiaj nie miałem akurat na to pomysłu. Moby są w tablicy, a nazwy przy losowaniu odczytuje też z tablicy, jednak ich nazwy w polu z zaklętymi potworami i ceny progów już nie. No to co, tutaj quest:

http://pastebin.com/LEZdJ0pZ

 


quest marmureq begin
state start begin
when 20094.chat."Marmury Polimorfii" begin
npc.name()
say("Potrzebujesz marmuru polimorfii?")
say("W zależności ile zapłacisz, mogę Ci")
say("dać różne marmury. Płacisz w yangach")
say("No to jeśli to Cię zainteresowało")
say("zobacz na następujące opcje:")
local s = select("Jak to działa?","Kup czysty marmur","Jakie stwory są zaklęte?","Progi płatności","Zamknij")
if s == 1 then
npc.name()
say("To działa bardzo prosto.")
say("Kupujesz ode mnie pusty marmur.")
say("Kosztuje on jedynie 1.000.000 yang.")
say("Potem, w zależności od tego, ile mi")
say("wpłacisz, takie będziesz mieć dostępne")
say("marmury. Dzielą się one na trzy kategorie.")
say("Aby uzyskać marmur, przeciągnij go na mnie,")
say("potem wybierz próg płatności i wpłać pieniądze.")
say("Następnie dostaniesz marmur z losowym mobem.")
elseif s == 2 then
npc.name()
say_item_vnum(70104)
say_reward("Koszt: 1.000.000 yang")
if select("Kup Marmur","Anuluj") == 1 then
if pc.money < 1000000 then
npc.name()
say("Nie stać Cię na zakup marmuru!")
else
npc.name()
say("Kupiono marmur:")
say_item_vnum(70104)
pc.give_item2(70104)
pc.change_money(-1000000)
end
end
elseif s == 3 then
npc.name()
say("Wybierz próg płatności:")
local p = select("Próg I","Próg II","Próg III","Anuluj")
if p == 1 then
say_reward("Dziki Pies")
say_reward("Zaprzysiężony Żołnierz")
say_reward("Jin-Hee")
say_reward("Dziki Sługa")
say_reward("Goo-Pae")
elseif p == 2 then
say_reward("Ork")
say_reward("Best Kapitan")
say_reward("Silny Dziki Sługa")
say_reward("Elitarny Ork Generał ")
say_reward("Duży Łysy Czarny Ork")
elseif p == 3 then
say_reward("Wódz Orków")
say_reward("Ezoteryczny Fanatyk")
say_reward("Król Demonów")
say_reward("Młody Trujący Pająk")
say_reward("Pustynny Zawadiaka")
end
elseif s == 4 then
npc.name()
say("Próg płatności to określona kwota")
say("za którą możesz otrzymać marmur.")
say("W zależności od tego, czy zapłacisz")
say("5kk czy 50kk, otrzymasz moba z lepszej")
say("grupy. Progi są następujące:")
say("")
say_reward("Próg I - 5-25kk Yang")
say_reward("Próg II - 25-50kk Yang")
say_reward("Próg III - 50-100kk Yang")
end
end
when 20094.take with item.vnum == 70104 begin
local uno = {
[1] = {101},
[2] = {331},
[3] = {394},
[4] = {502},
[5] = {493},
}
local two = {
[1] = {601},
[2] = {591},
[3] = {552},
[4] = {635},
[5] = {657},
}
local drei = {
[1] = {691},
[2] = {701},
[3] = {1091},
[4] = {2061},
[5] = {2108},
}
local x = number(1, table.getn(uno))
local y = number(1, table.getn(two))
local z = number(1, table.getn(drei))
npc.name()
say("Wybierz próg płatności:")
local cash = tonumber(input())
if cash > pc.money then
npc.name()
say("Nie masz tylu yang!")
elseif cash == "" or cash <= 0 then
npc.name()
say("Wpisz poprawną kwotę.")
elseif cash < 5000000 then
npc.name()
say("Ta liczba nie zalicza się do żadnego z progów.")
else
if cash >= 5000000 and cash <= 25000000 then
npc.name()
say("Twoja cena zalicz się do Progu I.")
say("Czy chcesz zaklnąć moba w swój marmur?")
if select(locale.yes,locale.no) == 1 then
npc.name()
say("Twój mob to "..mob_name(uno[x][1]))
say("Używaj go rozważnie!")
pc.change_gold(-cash)
item.set_socket(0, uno[x][1])
end
elseif cash >= 25000000 and cash <= 50000000 then
npc.name()
say("Twoja cena zalicz się do Progu II.")
say("Czy chcesz zaklnąć moba w swój marmur?")
if select(locale.yes,locale.no) == 1 then
npc.name()
say("Twój mob to "..mob_name(two[y][1]))
say("Używaj go rozważnie!")
pc.change_gold(-cash)
item.set_socket(0, uno[y][1])
end
elseif cash >= 50000000 and cash <= 75000000 then
npc.name()
say("Twoja cena zalicz się do Progu III.")
say("Czy chcesz zaklnąć moba w swój marmur?")
if select(locale.yes,locale.no) == 1 then
npc.name()
say("Twój mob to "..mob_name(drei[z][1]))
say("Używaj go rozważnie!")
pc.change_gold(-cash)
item.set_socket(0, drei[z][1])
end
end
end
end
end
end

 

 

 

 

 

 

Skorzystam dzięki leci +

2421404553.png
Opublikowano

@offtop

A już chciałem do Ciebie napisać gz 333 postów, a zrobiłeś temacik <3

 

@topic

Ciekawe, na pewno się przyda!

Mfg. <3

Jak chcesz jakiegoś questa, to mogę spróbować Ci napisać.

 

Zrób bez take :)

Wolna ręka, chcecie, zróbcie bez take ;)

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Opublikowano

Nie lepiej tak ?

xxx

Po co tyle pierdolenia , tyle tekstu ( Moja opinia ale jak kto woli )

Co do tematu quest jak najbardziej przydatny

Opublikowano

Weź to pod uwagę, że u mnie jest opcja kupna marmuru, te wszystkie progi itd. Mam jedynie wątpliwości co do tego timera. Cały czas sprawdza, przy ok 500 graczach to musi ostro zamulać serwer. Nie mniej jednak, działa to też całkiem fajnie.

@down

Dzięki :)

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Opublikowano

A creditsy dla mnie? :(

Nie ma, znikły :c Nie sugerowałem się Twoim questem, item.set_socket zbudowałem raczej z daawnego poradnika Wojtka :P

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Opublikowano

Wówczas gracze, co używają chociaż jednej szarej komórki zostaną. Nie potrzebuję fali neosów na serwerze*

*Jeśli u nich sm się zgadzają, to nic nie mówiłem :D

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Opublikowano

Tutaj również wspomnę o funkcji item.set_socket. Jeżeli mam wgrany diff na zmianę bonusów u npc, który używa tej funkcji, to marmurek nam się nie stworzy.

 

umarł

Opublikowano

Już lepiej było podmienić jakąś nieużywaną funkcję na item*, ja się na podmianie nie znam, mnie nie pytajcie :(

ePc0b.jpg

mcn_cc.pl - banda złodziei

;)

Piszę questy na zamówienie - Zostanę questerem na serwerze dedykowanym - Na zlecenie napiszę questy - Zakoduję stronę HTML5/CSS3

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...