Advertisement
deadx2

Untitled

Sep 5th, 2017
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 14.35 KB | None | 0 0
  1. quest collect_quest_lv155 begin
  2.     state start begin
  3.     end
  4.     state run begin
  5.         when login or levelup begin
  6.             if pc.level >= 155 then
  7.                 set_state(information)
  8.                 cmdchat("oddaj "..q.getcurrentquestindex())
  9.             else
  10.                 cmdchat("biolog 0|0|0|0|0")            
  11.             end
  12.         end
  13.     end
  14.  
  15.     state information begin
  16.         when letter begin
  17.             local v = find_npc_by_vnum(30016)
  18.             if v != 0 then
  19.                 target.vid("__TARGET__", v, "Biologist Chaegirab")
  20.             end
  21.             q.set_icon("scroll_open_green.tga")
  22.             send_letter("Analiza Biologa")
  23.         end
  24.  
  25.         when login begin
  26.             cmdchat("oddaj "..q.getcurrentquestindex())
  27.             cmdchat("biolog 0|0|0|0|0")    
  28.         end
  29.  
  30.         when button or info begin
  31.             target.delete("__TARGET__")
  32.             say_title("Biolog Chaegirab:")
  33.             say("")
  34.             say("Aktualnie badam Płonący Węgiel.")
  35.             say("Musze przeprowadzić kilka eksperymentów,")
  36.             say("dlatego potrzebuje kilku sztuk.")
  37.             say("Czy mógłbyś przynieść mi 10 Węgla?")
  38.             say("Proszę, pomóż mi! Zawsze przynoś mi po jednym,")
  39.             say("abym miał czas na ich dokładne przebadanie!")
  40.             say("Powodzenia!")
  41.             say("")
  42.             cmdchat("biolog 28027|".. pc.getqf("duration").."|"..pc.getqf("collect_count").."|3|30")
  43.             cmdchat("oddaj "..q.getotherquestindex("collect_quest_lv155_okno"))
  44.             set_state(go_to_disciple)
  45.             set_quest_state("collect_quest_lv155_okno","run")
  46.             pc.setqf("duration",60*60*24)
  47.             pc.setqf("collect_count",0)
  48.             pc.setqf("drink_drug",0)
  49.         end
  50.  
  51.         when __TARGET__.target.click or 30016.chat."Potrzebuje Twojej pomocy." begin
  52.             target.delete("__TARGET__")
  53.             say_title("Biolog Chaegirab:")
  54.             say("")
  55.             say("Niebiosa,proszę pomóżcie mi...")
  56.             say("Zbieram informacje na temat potworów w tym ")
  57.             say("imperium. Jest bardzo dużo rzeczy,")
  58.             say("które muszą zostać zrobione. Nie mam")
  59.             say("czasu abym mógł sam wybrać się na wyprawę.")
  60.             say("Proszę,pomóż mi.")
  61.             say("")
  62.             wait()
  63.             say("")
  64.             say("Aktualnie badam Płonący Węgiel.")
  65.             say("Musze przeprowadzić kilka eksperymentów,")
  66.             say("dlatego potrzebuje kilku sztuk.")
  67.             say("Czy mógłbyś przynieść mi 10 sztuk Węgla?")
  68.             say("Proszę,pomóż mi! Zawsze przynoś mi po jednym,")
  69.             say("abym miał czas na ich dokładne przebadanie!")
  70.             say("")
  71.             say("Węgla szukaj w Bramach Piekieł-dungeon 150!")
  72.             say("")
  73.             say("Powodzenia!")
  74.             say("")
  75.             cmdchat("biolog 28027|".. pc.getqf("duration").."|"..pc.getqf("collect_count").."|3|30")
  76.             cmdchat("oddaj "..q.getotherquestindex("collect_quest_lv155_okno"))
  77.             set_state(go_to_disciple)
  78.             set_quest_state("collect_quest_lv155_okno","run")
  79.             pc.setqf("duration",60*60*24)
  80.             pc.setqf("collect_count",0)
  81.             pc.setqf("drink_drug",0)
  82.         end
  83.     end
  84.            
  85.     state go_to_disciple begin
  86.         when letter begin
  87.             q.set_icon("scroll_open_green.tga")
  88.             send_letter("Analiza Biologa")
  89.         end
  90.  
  91.         when login with pc.get_level() >= 155 begin
  92.             if pc.getqf("duration") - get_time() > 0 then
  93.                 cmdchat("biolog 28027|".. pc.getqf("duration").."|"..pc.getqf("collect_count").."|3|30")
  94.             else
  95.                 cmdchat("biolog 28027|0|"..pc.getqf("collect_count").."|3|30")
  96.             end
  97.         end
  98.  
  99.         when button or info begin
  100.             say_title("Znajdź Płonący Węgiel.")
  101.             say("")
  102.             say("Biolog Chaegirab, uczeń Uriela,")
  103.             say("szuka Płonącego Węgla.")
  104.             say("Zawsze przynoś mu po jednym, aby miał czas")
  105.             say("na ich dokładne przebadanie.")
  106.             say("Węgla szukaj w Bramach Piekieł-dungeon 155!")
  107.             say("")
  108.             say("")
  109.             say_item_vnum(28027)
  110.             say("")
  111.             say("")
  112.             say_reward("Do tej pory zebrałeś: "..pc.getqf("collect_count").."szt. Płonący Węgiel.")
  113.             say("")
  114.         end
  115.  
  116.  
  117.         when kill with npc.get_race() == 5014 begin
  118.             local s = number(1, 3)
  119.             if s == 1 then
  120.                 pc.give_item2(28027, 1)
  121.             end
  122.         end
  123.  
  124.         when 28001.use begin
  125.             if get_time() < pc.getqf("duration") then
  126.                 syschat("Nie możesz jeszcze użyć Eliksiru Poszukiwacza.")
  127.                 return
  128.             end
  129.             if pc.getqf("drink_drug")==1 then
  130.                 syschat("Użyłeś już Eliksiru Poszukiwacza.")
  131.                 return
  132.             end
  133.             if pc.count_item(28001)==0 then
  134.                 syschat("Możesz użyć Eliksir Poszukiwacza tylko gdy posiadasz Płonący Węgiel.")
  135.                 return
  136.             end
  137.             pc.remove_item(28001, 1)
  138.             pc.setqf("drink_drug",1)
  139.         end
  140.        
  141.         when 28002.use begin
  142.             if get_time() > pc.getqf("redm_duration") then
  143.                 pc.setqf("monocles_used", 0)
  144.             end
  145.             if get_time() > pc.getqf("duration") then
  146.                 syschat("Możesz już oddać przedmiot do badań Biologa nie potrzebujesz Zaklinacza Czasu.")
  147.                 return
  148.             end
  149.             if pc.getqf("monocles_used") > 4 then
  150.                 syschat("Możesz zużyć tylko pięć Zaklinaczy Czasu na dzień.")
  151.                 return
  152.             end
  153.             if pc.getqf("monocles_used") == 0 then
  154.                 pc.setqf("redm_duration", get_time()+24*60*60)
  155.             end
  156.             pc.remove_item(28002, 1)
  157.             pc.setqf("duration", get_time()-1)
  158.             local use = pc.getqf("monocles_used")+1
  159.             pc.setqf("monocles_used",use)
  160.             syschat("Użyłeś Zaklinacza Czasu. Możesz teraz oddać przedmiot do badań Biologa.")
  161.         end
  162.        
  163.         when 30016.chat."GM: Płonący Węgiel lv155" with pc.count_item(28027) >0 and pc.is_gm() and get_time() <= pc.getqf("duration") begin
  164.             say(mob_name(30016))
  165.             say("Jesteś GM, OK")
  166.             pc.setqf("duration", get_time()-1)
  167.             return
  168.         end
  169.        
  170.         when 30016.chat."Płonący Węgiel" begin
  171.             if pc.count_item(28027) >0 then
  172.                 if get_time() > pc.getqf("duration") then
  173.                     if  pc.count_item(28027) >0 then
  174.                         say_title("Biolog Chaegirab:")
  175.                         say("")
  176.                         say("Oh!!Znalazłeś!")
  177.                         say("Pozwól, że rzucę okiem...")
  178.                         say("Jeszcze chwilkę.")
  179.                         say("")
  180.                         pc.remove_item("28027",1)
  181.                         pc.setqf("duration",get_time()+1)
  182.                         wait()
  183.                         local pass_percent
  184.                         if pc.getqf("drink_drug")==0 then
  185.                             pass_percent=70
  186.                         else
  187.                             pass_percent=100
  188.                         end
  189.                         local s= number(1,3)
  190.                         if s<= pass_percent  then
  191.                             if pc.getqf("collect_count")< 2 then
  192.                                 local index =pc.getqf("collect_count")+1
  193.                                 pc.setqf("collect_count",index)
  194.                                 say_title("Biolog Chaegirab:")
  195.                                 say("")
  196.                                 say("Oh!! Ten Węgiel jest doskonałej jakości!")
  197.                                 say("Przynieś mi jeszcze: "..10-pc.getqf("collect_count").. "szt. Płonący Węgiel.")
  198.                                 say("Proszę, spróbuj je znaleźć! ")
  199.                                 say("")
  200.                                 pc.setqf("drink_drug",0)
  201.                                 cmdchat("biolog 28027|".. pc.getqf("duration").."|"..pc.getqf("collect_count").."|3|30")
  202.                                 return
  203.                             end
  204.                             cmdchat("biolog 28028|0|0|1|30")
  205.                             say_title("Biolog Chaegirab:")
  206.                             say("")
  207.                             say("Oh, zebrałeś już wszystkie?")
  208.                             say("Dobra robota...")
  209.                             say("Ale poczekaj!")
  210.                             say("Aby zakończyć swoją pracę, potrzebuję ")
  211.                             say("jeszcze jednego przedmiotu! Kamień Władcy. ")
  212.                             say("")
  213.                             say("Znajdziesz go w Bramach Piekieł-dungeon 155!.")
  214.                             say("")
  215.                             pc.setqf("collect_count",0)
  216.                             pc.setqf("drink_drug",0)
  217.                             pc.setqf("duration",0)
  218.                             set_quest_state("collect_quest_lv155_okno","key")
  219.                             set_state(key_item)
  220.                             return
  221.                         else
  222.                             say_title("Chaegirab:")
  223.                             say("")
  224.                             say("Ten Węgiel jest złej jakości!")
  225.                             say("Spróbuj przynieść inny!")
  226.                             say("Proszę, pomóż mi!")
  227.                             say("")
  228.                             pc.setqf("drink_drug",0)
  229.                             return
  230.                         end
  231.                     else
  232.                         say_title("Chaegirab:")
  233.                         say("")
  234.                         say("Nie masz "..item_name(28027).."!")
  235.                         return
  236.                     end
  237.                 else
  238.                     say_title("Chaegirab:")
  239.                     say("")
  240.                     say("Jest mi bardzo przykro ....")
  241.                     say("Nie przeanalizowałem jeszcze ostatniego Ognistego ")
  242.                     say("Węgla... ")
  243.                     say("")
  244.                     return
  245.                 end
  246.             else
  247.                 say("Nie masz przy sobie Ognistego Węgla.")
  248.             end
  249.         end
  250.     end
  251.            
  252.     state key_item begin
  253.         when login with pc.get_level() >= 155 begin
  254.             cmdchat("biolog 28028|0|0|1|30")
  255.         end
  256.  
  257.         when letter begin
  258.             q.set_icon("scroll_open_green.tga")
  259.             send_letter("Analiza Biologa")
  260.             if pc.count_item(28028)>0 then
  261.                 local v = find_npc_by_vnum(30016)
  262.                 if v != 0 then
  263.                     target.vid("__TARGET__", v, "")
  264.                 end
  265.             end
  266.         end
  267.        
  268.         when button or info begin
  269.             if pc.count_item(28028) >0 then
  270.                 say_title("Kamień Władny")
  271.                 say("")
  272.                 say("Wróć do Biologa, aby")
  273.                 say("oddać mu kamień!")
  274.                 say("")
  275.                 return
  276.             end
  277.             say_title("Specjalny Kamień ")
  278.             say("")
  279.             say("Zebrałeś już wszystkie 10 przedmiotów!")
  280.             say("Teraz, biolog potrzebuje ostatni ")
  281.             say("przedmiot, aby zakończyć swoje badania!")
  282.             say("")
  283.             say("")
  284.             say_item_vnum(28028)
  285.             say("")
  286.             say("")
  287.             say("Możesz go w Bramach Piekieł-dungeon 155!")
  288.             say("Potwory które mogą mieć kamień to "..mob_name(5014)..".")
  289.             say("")
  290.         end
  291.  
  292.         when 5014.kill begin
  293.             local s = number(1, 5)
  294.             if s == 1 and pc.count_item(28028)==0 then
  295.                 pc.give_item2(28028, 1)
  296.                 q.set_icon("scroll_open_green.tga")
  297.                 send_letter("Znalazłeś Kamienistą Małże. ")
  298.             end
  299.         end
  300.  
  301.         when __TARGET__.target.click or 30016.chat."Zdobyłem Kamienistą Małże " with pc.count_item(28028) > 0  begin
  302.             if pc.count_item(28028) > 0 then
  303.                 target.delete("__TARGET__")
  304.                 say_title("Biolog Chaegirab")
  305.                 say("")
  306.                 say("Oh, Znalazłeś!")
  307.                 say("Bardzo Tobie dziękuję!")
  308.                 say("Stworzyłem przepis na niezwykłą siłę!")
  309.                 say("Możesz teraz iść do Alchemika po nagrodę!")
  310.                 say("Z twoją pomocą dowiedziałem się wiele o Władcy tej Krainy.")
  311.                 say("")
  312.                 cmdchat("biolog 0|0|0|0|0")
  313.                 pc.remove_item(28028,1)
  314.                 set_state(__reward)
  315.                 set_quest_state("collect_quest_lv155_okno","reward")
  316.             else
  317.                 say_title("Biolog Chaegirab")
  318.                 say("Nie masz "..item_name(28028).."!")
  319.                 say("")
  320.                 return
  321.             end
  322.         end
  323.     end
  324.            
  325.     state __reward begin
  326.         when login with pc.get_level() >= 155 begin
  327.             cmdchat("biolog 0|0|0|0|0")
  328.         end
  329.         when letter begin
  330.             q.set_icon("scroll_open_green.tga")
  331.             send_letter("Sekretny Przepis")
  332.             local v = find_npc_by_vnum(30017)
  333.             if v != 0 then
  334.                 target.vid("__TARGET__", v, "Alchemik")
  335.             end
  336.         end
  337.    
  338.         when button or info begin
  339.             say_title("Nagroda Biologa")
  340.             say("")
  341.             say("W nagrodę za zdobycie Płonących Węgli i Kamienia Władcy,")
  342.             say("Biolog Chaegirab dał Ci przepis.")
  343.             say("Przynieś go Alchemikowi a on stworzy specjalny eliksir!")
  344.             say("")
  345.         end
  346.        
  347.         when __TARGET__.target.click or 30017.chat."Sekretny Przepis"  begin
  348.             target.delete("__TARGET__")
  349.             say_title("Alchemik:")
  350.             say("")
  351.             say("Hmm, a więc Biolog")
  352.             say("wysłał Cię po nagrodę?")
  353.             say("Zobaczmy, co tam masz...")
  354.             say("")
  355.             say_reward("Jako nagrodę otrzymujesz:")
  356.             say_reward("+10% Silny przeciwko Surze")
  357.             say_reward("+10% Silny przeciwko Szamanowi")
  358.             say("")
  359.             say_reward("Wpływ ten nie jest tymczasowy tylko stały.")
  360.             affect.add_collect(apply.ATT_BONUS_TO_SURA, 10, 60*60*24*365*60) -- 60Years
  361.             affect.add_collect(apply.ATT_BONUS_TO_SHAMAN, 10, 60*60*24*365*60) -- 60Years
  362.             clear_letter()
  363.             set_quest_state("collect_quest_lv155_okno","__complete")
  364.             set_state(__complete)
  365.         end
  366.     end
  367.     state __complete begin
  368.     end
  369. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement