Advertisement
Guest User

Untitled

a guest
Feb 16th, 2015
242
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 6.83 KB | None | 0 0
  1. --**
  2. --** Script biologo lv30
  3. --** by BlackYuko Skype: manu___88
  4. --**
  5.  
  6. quest collect_quest_lv30 begin
  7.     state start begin
  8.         function GetFailurePerc()
  9.             return 0    -- Inserire qua la percentuale di fallimento degli oggetti consegnati
  10.         end
  11.    
  12.         when login or levelup with pc.get_level() >= 30 begin
  13.             set_state("information")
  14.         end
  15.     end
  16.  
  17.     state information begin
  18.         when letter begin
  19.             local v = find_npc_by_vnum(20084)
  20.             if v != 0 then
  21.                 target.vid("biologo", v, "Biologo")
  22.             end
  23.             q.set_icon("scroll_open_green.tga")
  24.             send_letter("&Gli studi del Biologo")
  25.         end
  26.  
  27.         when button or info begin
  28.             say_title("Le richieste del biologo")
  29.             say("Il biologo Chaegirab, l'allievo di")
  30.             say("Uriel, sta disperatamente cercando")
  31.             say("il tuo aiuto. Vai da lui per aiutarlo.[ENTER]")
  32.         end
  33.        
  34.         when biologo.target.click or 20084.chat."I denti di Orco" begin
  35.             target.delete("biologo")
  36.             say_title("Biologo Chaegirab")
  37.             say("Salve avventuriero.")
  38.             say("Sto raccogliendo informazioni sui")
  39.             say("mostri del nostro regno, ma non")
  40.             say("posso occuparmene da solo.")
  41.             say("Penso immaginerai che io, in")
  42.             say("quanto semplice biologo, ho dei")
  43.             say("problemi nel farlo. Per favore,")
  44.             say("aiutami. Ovviamente riceverai una")
  45.             say("ricompensa per l'aiuto.[ENTER]")
  46.             wait()
  47.             say_title ( "Biologo Chaegirab" )
  48.             say("Al momento sto esaminando" )
  49.             say("gli orchi neri della Valle del Drago.")
  50.             say("I loro denti sono ricchi di calcio,")
  51.             say("ecco perche sono cosi' interessanti")
  52.             say("per la produzione di medicine.[ENTER]")
  53.             wait()
  54.             say_title("Biologo Chaegirab")
  55.             say("Potresti procurarmi 10")
  56.             say("denti? Ma mi servono dei")
  57.             say("particolari denti, percio' fai molta")
  58.             say("attenzione quando me li porti.[ENTER]")                     
  59.             set_state("go_to_disciple")
  60.         end
  61.     end
  62.  
  63.     state go_to_disciple begin
  64.         when enter begin
  65.             pc.setqf("collect_count", 0)
  66.         end
  67.        
  68.         when letter begin
  69.             q.set_icon("scroll_open_green.tga")
  70.             send_letter("&I Denti della Valle")
  71.         end
  72.  
  73.         when button or info begin
  74.             say_title("I denti della Valle del Drago")
  75.             say("Il biologo Chaegirab ha bisogno")
  76.             say("di 10 denti degli orchi della Valle")
  77.             say("del Drago per le sue ricerche.")
  78.             say("Portagliene sempre uno alla volta,")
  79.             say("cosi da dargli il tempo di")
  80.             say("esaminarli.[ENTER]")
  81.             say_item_vnum(30006)
  82.             say("")
  83.             say_reward("Finora hai raccolto "..pc.getqf("collect_count").." denti.[ENTER]")
  84.         end
  85.  
  86.         when 20084.chat."Hai un Dente D'Orco?" with pc.count_item(30006) > 0 begin
  87.             say_title("Biologo Chaegirab")
  88.             say("Mi hai portato "..pc.count_item("30006").." denti d'orco...")
  89.             say("Fammelo esaminare un attimo.[ENTER]")
  90.             if pc.count_item("30006") > 10 then
  91.                 if pc.getqf("collect_count") + pc.count_item("30006") >= 10 then
  92.                     pc.remove_item(30006, 10 - pc.getqf("collect_count"))
  93.                 else
  94.                     pc.remove_item(30006, 10)
  95.                 end
  96.             else
  97.                 if pc.getqf("collect_count") + pc.count_item("30006") >= 10 then
  98.                     pc.remove_item(30006, 10 - pc.getqf("collect_count"))
  99.                 else
  100.                     pc.remove_item(30006, pc.count_item("30006"))
  101.                 end
  102.             end
  103.             wait() 
  104.             local n = number(1, 100)
  105.             if n < collect_quest_lv30.GetFailurePerc() then
  106.                 say_title("Biologo Chaegirab")
  107.                 say("Questo dente non e' adatto alle")
  108.                 say("mie ricerche. Portamene un altro.[ENTER]")
  109.                 return
  110.             end        
  111.             if pc.getqf("collect_count")+ pc.count_item("30006") < 9  and pc.count_item("30006") <= 10 then
  112.                 pc.setqf("collect_count", pc.getqf("collect_count")+pc.count_item("30006"))
  113.                 say_title("Biologo Chaegirab")
  114.                 say("Ben fatto avventuriero!")
  115.                 say("Questo dente Orco e' adatto alle mie ricerche.[ENTER]")
  116.                 say_reward("Devi portarmi solo altri "..10-pc.getqf("collect_count").." denti d'Orco.[ENTER]")
  117.                 return
  118.             end
  119.             if pc.getqf("collect_count")+ pc.count_item("30006") < 9  and pc.count_item("30006") > 10 then
  120.                 pc.setqf("collect_count", pc.getqf("collect_count")+pc.count_item("30006"))
  121.                 say_title("Biologo Chaegirab")
  122.                 say("Ben fatto avventuriero!")
  123.                 say("Questo dente Orco e' adatto alle mie ricerche.[ENTER]")
  124.                 say_reward("Devi portarmi solo altri "..10-pc.getqf("collect_count").." denti d'Orco.[ENTER]")
  125.                 return
  126.             end
  127.             say_title("Biologo Chaegirab")
  128.             say("Perfetto, ora ho denti a sufficienza per")
  129.             say("le mie ricerche.")
  130.             say("")
  131.             set_state("key_item")
  132.         end
  133.        
  134.         when leave begin
  135.             pc.delqf("collect_count")
  136.         end
  137.     end
  138.    
  139.     state key_item begin
  140.         when letter begin
  141.             if pc.count_item(30220) > 0 then
  142.                 q.set_icon("scroll_open_green.tga")
  143.                 send_letter("&Hai trovato la Pietra Anime")
  144.             else
  145.                 q.set_icon("scroll_open_green.tga")
  146.                 send_letter("&Trova la Pietra delle Anime")
  147.             end
  148.         end
  149.        
  150.         when button or info begin
  151.             say_title("Pietra Anime")
  152.             if pc.count_item(30220) > 0 then
  153.                 say("Hai trovato la Pietra Anime,")
  154.                 say("torna dal Biologo Chaegirab per")
  155.                 say("ottenere la ricompensa.[ENTER]")
  156.             else               
  157.                 say("Trova la Pietra delle Anime")
  158.                 say("per finire la missione:[ENTER]")
  159.                 say_item_vnum(30220)
  160.                 say("")
  161.             end
  162.         end
  163.    
  164.         when kill with npc.get_race() == 635 or npc.get_race() == 636 or npc.get_race() == 637 begin
  165.             if pc.count_item(30220) == 0 then
  166.                 local s = number(1, 100)
  167.                 if s == 7 or s == 20 then
  168.                     pc.give_item2(30220, 1)
  169.                     chat("Hai trovato la pietra delle anime! Torna dal biologo")   
  170.                 end
  171.             end
  172.         end
  173.    
  174.         when 20084.chat."Ho la Pietra Anime" with pc.count_item(30220) > 0 begin
  175.             say_title("Biologo Chaegirab")
  176.             say("Adesso che hai trovato la Pietra Anime")
  177.             say("potrò finalmente completare le mie")  
  178.             say("ricerche. Vai a risquotere la ricompensa")
  179.             say("da Baek-Go.[ENTER]" )
  180.             pc.remove_item(30220, 1)
  181.             set_state("__reward")
  182.         end
  183.     end
  184.  
  185.     state __reward begin
  186.         when letter begin
  187.             q.set_icon("scroll_open_green.tga")
  188.             send_letter("&Trova Baek-go")
  189.             local v = find_npc_by_vnum(20018)
  190.             if v != 0 then
  191.                 target.vid("baekgo", v, "Baek-go")
  192.             end
  193.         end
  194.        
  195.         when button or info begin
  196.             say_title("Trova Baek-go")
  197.             say("Hai aiutato il biologo con le sue ricerche.")
  198.             say("Vai da Baek-Go per la ricompensa.[ENTER]")
  199.         end
  200.        
  201.         when baekgo.target.click  or 20018.chat."Ricompensa Denti Orco"  begin
  202.             target.delete("baekgo")
  203.             say_title("Baek-go")
  204.             say("Mi ha detto il biologo che sei riuscito")
  205.             say("a concludere le sue ricerche,")
  206.             say("portandogli cio' di cui aveva bisogno.")
  207.             say("Ti preparo una pozione speciale per")
  208.             say("ricompensarti.[ENTER]")
  209.             say_reward("Ricevi:")
  210.             say_reward("  +10% velocita' movimento (permanente).[ENTER]")
  211.             affect.add_collect(apply.MOV_SPEED, 10, 60*60*24*365*60)
  212.             q.done()           
  213.             set_quest_state("collect_quest_lv40", "run")
  214.             set_state("__complete")
  215.         end
  216.     end
  217.    
  218.     state __complete begin
  219.     end
  220. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement