z4z0l Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 Witam. Napisałem quest na swój serwer, ale, że lubię się dzielić z innymi udostępnię go wam. Jest to mój własny ale to KURWA własnoręcznie napisany dozorca oraz bankier. Nie ma bugu z wypłacaniem 1kkk yang, dodane zostały małe zabezpieczenia. Jeżeli znajdziecie jakiś błąd czy cokolwiek, piszcie pod tematem. Pozdrawiam. quest dozorca begin state start begin when 9005.chat."Chcę otworzyć magazyn" begin say_title("Dozorca : ") say("Możesz u mine przechowywać swoje") say("przedmioty. Jeżeli chcesz, musisz") say("wykupić sobie miejsce.") say("Będzie Cię to kosztowało 500 yang.") say("") say_reward("Czy chcesz otworzyć prywatny magazyn?") local s=select("Zapłać " , "Nie płać ") if s==1 and pc.get_money()>=500 then say_title("Dozorca :") say("A więc zdecydowałeś się ") say("skorzystać z moich usług!") say("Twoje hasło do magazynu to : 000000") pc.change_gold(-500) pc.setqf("mamkonto", 0) set_state(drugi) elseif pc.get_money()<=500 then say_title("Dozorca : ") say("Nie posiadasz wystarczającej") say("ilości yang !") end end end state drugi begin when 9005.click begin say_title("Dozorca :") say("Witaj! Jestem dozorcą. ") say("Możesz u mnie przechowywać przedmioty.") local f=select("Otwórz magazyn" , "Odbierz przedmioty z ItemShop" , "Kupno Srebrnej lub Złotej Sztabki" , "Bank" , "Anuluj") if f==1 then game.open_safebox() elseif 2==f then game.open_mall() elseif 3==f then npc.open_shop(7) elseif 4==f then say_title("Dozorca :") say("Witaj. Możesz u mnie zostawić swoje całe") say("oszczędności bądź wziąć kredyt.") say("") if pc.getqf("mamkonto") == 0 then say("Nie masz jeszcze konta. Czy chcesz je") say("utworzyć ? Kosztuje to 1 000 000 yang") say("oraz poziom Twojej postaci musi być ") say("większy niż 75.") if pc.get_level() >= 75 then local g=select("Tak" , "Nie") if g==1 then if pc.get_money() >= 1000000 then say_title("Dozorca :") say("Twoje konto bankowe zostało utworzone.") pc.change_money(-1000000) pc.setqf("mamkonto", 1) else say_title("Dozorca :") say("Nie masz wystarczającej ilości yang aby") say("utworzyć konto.") end end else say_title("Dozorca :") say("Nie masz 75 poziomu!") end else local stankkonta = pc.getqf("stankonta") local h=select("Sprawdź stan konta" , "Wpłać pieniądze" , "Wypłać pieniądze" , "Anuluj") if h==1 then say_title("Dozorca :") say("Stan Twojego konta to:") say_reward("" ..pc.getqf("stankonta").. " yang.") elseif 2==h then say_title("Dozorca :") say("Wpisz ilość yang którą chcesz wpłacić.") local wplac = tonumber(input("")) if wplac > 0 and wplac < 2000000000 then if wplac == "" then say_title("Dozorca :") say("Musisz wpisać ilość yang !") end end if wplac > pc.get_money() then say_title("Dozorca :") say("Nie masz " ..wplac.. " yang.") end if wplac <= pc.get_money() and wplac > 0 then local stannowy = tonumber(wplac) + pc.getqf("stankonta") pc.change_money(-wplac) pc.setqf("stankonta", stannowy) say_title("Dozorca :") say("Wpłaciłeś yangi na swoje konto.") say("Aktualny stan Twojego konta to :") say_reward("" ..pc.getqf("stankonta").. " yang.") else say_title("Dozorca :") say("Nie możesz wpłacić tej kwoty!") end elseif 3==h then say_title("Dozorca :") say("Aktualny stan Twojego konta to :") say_reward("" ..pc.getqf("stankonta").. " yang.") say("") say("Jednorazowo możesz wypłacić nie więcej") say("niż 500 000 000 yang.") local wyplac = tonumber(input("")) if wyplac > 0 and wyplac < 500000000 then if wyplac > pc.getqf("stankonta") then say_title("Dozorca :") say("Nie masz tyle yang na koncie.") else local yang_bug = pc.get_money() + wyplac if yang_bug <= 1999999999 then local stannowy = pc.getqf("stankonta") - tonumber(wyplac) pc.change_money(wyplac) pc.setqf("stankonta", stannowy) say_title("Dozorca :") say("Twoje yangi zostały wypłacone z konta.") say("Aktualny stan Twojego konta to :") say_reward("" ..pc.getqf("stankonta").. " yang.") else say_title("Dozorca :") say("Nie możesz wypłacić yang. Stan Twoich") say("yang w ekwpiunku wynosiłby więcej niż ") say("dopuszczalna norma.") end end else say_title("Dozorca :") say("Nie możesz wypłacić tej kwoty!") end end end end end end end Linki abyście widzieli TABki. http://wklej.to/AA1tD http://speedy.sh/7pZv6/dozorca.quest http://www.virustotal.com/file-scan/report.html?id=db14cbaeaa0348ebafb3be0a267172714aa9a1da3e2a9c9a0db9bd2370f6b1b5-1322076981 umarł Odnośnik do komentarza
Sunushi Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 No jedyne czego można się tu doczepić to brak tabów przez co mało czytelne. Niepotrzebnie też dzielisz na 2 lub więcej state. Zrób tak: quest asd begin state start begin when xxx.chat begin ... end when xxx.chat begin ... end end end Każda rozmowa może być w jednym state, stosuje się go zazwyczaj po to by oddzielić jakąś część misji, kolejny krok tak jakby (często gęsto stosuje się też wtedy zmianę letter i buttona) edit. aha, forum nie uwzględnia tabów. Gratulacje dla teamu! Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
z4z0l Opublikowano 23 Listopada 2011 Autor Udostępnij Opublikowano 23 Listopada 2011 Tak ale nie będą co chwilę "kupować" dostępu do magazynu. Tabów nie rozumiem czemu ale nie wyświetla, wklejam z notepada++ gdzie są taby ;| Zaraz podam linka do downloadu abyście mieli z TABami. umarł Odnośnik do komentarza
Sunushi Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 To się robi poprzez qf a nie state Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
z4z0l Opublikowano 23 Listopada 2011 Autor Udostępnij Opublikowano 23 Listopada 2011 No tak, ale co to za różnica :P if pc.getqf("mammagazyn") == 1 then ... Dodane linki, zaraz pewnie zostaną dodane mi %. umarł Odnośnik do komentarza
Sunushi Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 Przy usuwaniu questa wystarczy usunąć jeden plik ze state zamiast 3 :P Wystarczy w pierwszym chat ustawić qf na 1 a później when xxx.chat with pc.getqf("nazwa") == 1 begin i wszystko Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
z4z0l Opublikowano 23 Listopada 2011 Autor Udostępnij Opublikowano 23 Listopada 2011 Ja to wiem, mam to zmienić żeby Ci pasowało ? umarł Odnośnik do komentarza
Sunushi Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 Zostaw, najważniejsze że bank jest odbugowany. Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
Qentinios Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 Patrze na treść widzę "wziąć kredyt" już się cieszę a w quescie ni ma takiej opcji Ogółem jeżeli jest naprawdę odbugowany to bardzo To Lubię! Odnośnik do komentarza
Sunushi Opublikowano 23 Listopada 2011 Udostępnij Opublikowano 23 Listopada 2011 Nie da się wypłacić tak, by mieć więcej niż 2kkk więc jest odbugowany. Co do kredytu, kto by go spłacał? edit. Komornika na postać raczej nie naślesz Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
swierzaczek Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 komornika nie naślesz, ale możesz zrobić automatyczne spłacanie kredytu. Czyli jeśli nie spłacisz kredytu w wyznaczonym terminie, po 2 dniu będą pobierane yangi, jeśli będziesz je mieć. Czyli na postaci pojawi się 100kk yang, odbierze Ci momentalnie 100kk yang. Drastyczniej może być np blokada konta na pewien czas, jako wysłanie do więzienia za niespłacanie należności. Dodatkową opcją może być wpłacanie kaucji, a zarazem przez to odbanowanie postaci . Kombinujcie a pomysłów jest dużo. Możecie wprowadzić też nową mapę która posłuży jako więzienie, oczywiście mapa bez teleporterów z zablokowaną możliwością teleportu do małżonka. Czas gry będzie liczony jeśli bedzie się zalogowanym. np 2kkk yang trzeba będzie wysiedzieć z tydzień W zależności od inflacji serwera. Boo: czyli prawie jak narodziny Frankenstein'a. http://www.youtube.com/watch?v=UXBdZu82-9A Odnośnik do komentarza
Unikatowy Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 na pewno skorzystam Odnośnik do komentarza
z4z0l Opublikowano 24 Listopada 2011 Autor Udostępnij Opublikowano 24 Listopada 2011 Co do kredytu, nie udostępniam na razie bo nie mam czasu skończyć pisać w całości. Będzie to polegało na 24h kredycie. Jeżeli go ine spłacimy w tym czasie, nasze punkty statystyk(najprawdopodobniej) będą wyzerowane bądź wpadnie komornik (joke). Jeszcze coś wymyślę umarł Odnośnik do komentarza
Vanirek Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 Na inforge znalazłem kiedyś questa z kredytem, ale nie miałem czasu się jakoś za niego zabrać i zobaczyć czy działa A co do banku dobra robota, przynajmniej odbugowany i 100% sprawny Like ! Odnośnik do komentarza
Sunushi Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 when 9005.chat "Dawaj kredyt!" begin say_title(mob_name(9005)..":") say("Chcesz kredytu? Nie ma sprawy tylko pamiętaj,") say("że oprocentowanie wynosi 10% na dzień!") say("Wypłacona kwota również nie może przekraczać ") say("10kk. Wpisz jaką kwotę chcesz pobrać:") local kredyt = tonumber(input()) if kredyt > 10000000 then -- tutaj można zmienić max wartość kredytu say_title(mob_name(9005)..":") say("Nie możesz tyle wypłacić.") say("") elseif kredyt + pc.get_gold() >= 2000000000 then say_title(mob_name(9005)..":") say("Nie możesz tyle wypłacić, gdyż zbugują ") say("Ci się yangi.") say("") else pc.changegold(kredyt) pc.setqf("kredyt", kredyt+kredyt*0.1) -- 0.1 = 10%, można zmienić wg. uznania pc.setqf("czas", get_time()+24*60*60) say_title(mob_name(9005)..":") say("Otrzymałeś kredyt. Musisz spłacić go do jutra") say("albo komornik zrobi Ci wjazd na chatę.") say("Miłego spłacania.") end end when 9005.chat "Spłać kredyt" with pc.getqf("czas") > get_time() begin say_title(mob_name(9005)..":") say("Nono, zmieściłeś się w czasie.") say("Na pewno chcesz spłacić?") say_notice("Posiadasz "..pc.get_gold().." a musisz spłacić "..pc.getqf("kredyt").." Yang.") local a = select("Tak","Nie") if a == 2 then return end if pc.get_gold() < pc.getqf("kredyt") then say_title(mob_name(9005)..":") say("Nie masz tyle Yang!") say("") return end pc.changegold(-pc.getqf("kredyt")) say_title(mob_name(9005)..":") say("Mamona, ah mamona!") say("") end http://pastebin.pl/50959 Macie system kredytu + spłacanie. Nie testowane, nie wiem czy działa, nie ponoszę odpowiedzialności za błędne działanie. Karę opracujcie sobie sami. Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
z4z0l Opublikowano 24 Listopada 2011 Autor Udostępnij Opublikowano 24 Listopada 2011 when 9005.chat "Dawaj kredyt!" begin zmienić na when 9005.chat. "Dawaj kredyt!" begin Reszta powinna działać. PS. ta kropka ma tutaj znaczenie ? umarł Odnośnik do komentarza
Sunushi Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 Hm, ma ogromne znaczenie. Bez niej quest nie przejdzie przez qf tylko errora sypnie Dawno questów nie pisałem, stąd też taka pomyłeczka. Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
Qentinios Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 Widzę że ograniczenie do 10kk jest, ale nie ma opcji sprawdzania czy ktoś już jest zadłużony. Może sobie wziąć kredytów ile chce. Jeżeli się mylę to sory Odnośnik do komentarza
z4z0l Opublikowano 24 Listopada 2011 Autor Udostępnij Opublikowano 24 Listopada 2011 Tak faktycznie nie ma żadnego "zabezpieczenia" przed możliwością brania jednego kredytu. umarł Odnośnik do komentarza
™Rampager Opublikowano 24 Listopada 2011 Udostępnij Opublikowano 24 Listopada 2011 to z kredytem nie ma sensu biore kredyt 10kk przekladam kase kasuje postac i robie nowe O_O ale ten quest na gorze spoko Odnośnik do komentarza
z4z0l Opublikowano 25 Listopada 2011 Autor Udostępnij Opublikowano 25 Listopada 2011 Ja u siebie mam inny kredyt niż wyżej napisany. Mogą wziąć go postacie tylko 75+ lvl a 75 lvl wbić to ciężka sprawa Nie problem dodać takie cuś. umarł Odnośnik do komentarza
Sunushi Opublikowano 25 Listopada 2011 Udostępnij Opublikowano 25 Listopada 2011 Zmieńcie when 9005.chat "Dawaj kredyt!" begin na when 9005.chat."Dawaj kredyt!" with pc.get_level() >= 75 and pc.getqf("kredyt") == 0 begin i macie całe zabezpieczenie.. Przy spłacaniu kredytu należy też dodać zerowanie qf("kredyt") bo zapomniałem o tym edit. ™Rampager, niekoniecznie. Wystarczy zapisać id konta gracza (najlepiej w tym wypadku użyć game.set_event_flag() co by było globalne lecz jest to troszku bez sensu. Są inne sposoby na to ) i when login with pc.getqf("kredyt") != 0 and pc.getqf("czas") < get_time() and (jeśli użyjemy event flaga no to game.get_event_flag("id") == pc.get_account_id()) begin po czym dodać repeata aż do uzyskania z yangów kwoty z getqf("kredyt"). Proste Koniec z MPCForum.pl i ogółem z metinem Sygnatura wykonana przez Isuribi aka Amelka. Odnośnik do komentarza
Piciasek Opublikowano 28 Listopada 2011 Udostępnij Opublikowano 28 Listopada 2011 Osobiscie mozliwosc brania kredytu bym udostepnil n.p od 90lvl'a bo myslac logicznie kazdy bedzie robil sobie nowa postac z 1lvl'em bral kredyt i przekladal na glowna postac. Odnośnik do komentarza
SDeath Opublikowano 28 Listopada 2011 Udostępnij Opublikowano 28 Listopada 2011 @Piciasek Zobacz, że możesz sobie wartości zmieniać. Powiedzmy, że posiadamy serwer z maksymalnym lvl 250, aby wziąć kredyt trzeba mieć hm.. 130lvl. Zmieniamy i git, kto na serwerze wbije tak szybko 130? No, z tym będzie już problem. Więc graczom będzie szkoda 130 lvl zesłać na zbanowanie czy też kare w jakiś inny sposób. Co do tematu, spoko Quest. Prosił bym o pozwolenie edytowania Questu, oczywiście bez możliwości udostępienia na inne fora Bądź z dopiskiem waszych nicków ;p Odnośnik do komentarza
,,,,,,,,,,,,,,,,,,, Opublikowano 28 Listopada 2011 Udostępnij Opublikowano 28 Listopada 2011 @UP Questa sobie nie zastrzegł, więc spokojnie możesz edytować na własne potrzeby ;D Odnośnik do komentarza
Rekomendowane odpowiedzi
Zarchiwizowany
Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.