Advertisement
johnlol

sacer_v2

May 27th, 2019
311
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //  ___________________________________________________________________________
  2. // /                                                                           \
  3. // |                 _           _   _   _                                      |
  4. // |                | |__  _ __ / \ | |_| |__   ___ _ __   __ _                 |
  5. // |                | '_ \| '__/ _ \| __| '_ \ / _ \ '_ \ / _` |                |
  6. // |                | |_) | | / ___ \ |_| | | |  __/ | | | (_| |                |
  7. // |                |_.__/|_|/_/   \_\__|_| |_|\___|_| |_|\__,_|                |
  8. // |                                                                            |
  9. // |                              brAthena Script                               |
  10. // |----------------------------------------------------------------------------|
  11. // | Nome do Script: "Emilyn, The Full Support" - sacer_v2.txt                  |
  12. // |----------------------------------------------------------------------------|
  13. // | Criado por: eA/brA Dev. Team                                               |
  14. // |----------------------------------------------------------------------------|
  15. // | Versão brA: 2.0                                                            |
  16. // |----------------------------------------------------------------------------|
  17. // | Descrição:                                                                 |
  18. // | A primeira e única sacerzinha disponível no centro da cidade distribuindo  |
  19. // | curas e buffs extamente igual a uma jogadora de verdade, e ainda, natural- |
  20. // | mente simpática e carismática! Muito generosa, porém incansável, Emilyn só |
  21. // | exige um pequeno donativo pelos benefícios do seu Portal escolhido pelo    |
  22. // | char, Gema Azul e 2.5k, pode remover. Para VIP's ainda mais interessante,  |
  23. // | pois melhora seus benefícios e caem seus custos. Não utilize outro healer/ |
  24. // | buffer/warper, por mais 'completo' que seja! A Emilyn supre a necessidade  |
  25. // | básica do seu servidor com mais naturalidade e nenhuma apelação!           |
  26. // |----------------------------------------------------------------------------|
  27. // | Changelog:                                                                 |
  28. // | 1.0 Modificação [brAthena]                                                 |
  29. // | [brA] Damascus  [NPC]                                                      |
  30. // | [brA] Floozie   [Desenvolvimento]                                          |
  31. // | - Anotações:                                                               |
  32. // | db/mob_avail.txt (item 1551/5074) - 1844,4009,2,21,3,15,0,38,158,0,0,1     |
  33. // | Link: brathena.org/forum/index.php?/topic/122-buffer-emilyn-full-support/  |
  34. // \___________________________________________________________________________/
  35.  
  36. //===============================================================================
  37. // Configurações :
  38. //===============================================================================
  39.  
  40. -   script  Emilyn#config   -1,{
  41.  
  42. OnInit:
  43.     set $@portal,1;                         // Portal: 1 tivar, 0 desativar.
  44.     set $@porta_price,2500;                 // Preço do Portal.
  45.  
  46.     // NOTA: Moscovia, Niflheim são mapas de Quest, desabilite-os caso prefira que seus
  47.     // jogadores cumpram missões de acesso, adicione ou remova da lista o que preferir.
  48.     setarray $@portal_maps$,"alberta","aldebaran","amatsu","ayothaya","brasilis","comodo",
  49.                             "dicastes01","einbech","einbroch","geffen","gonryun","hugel",
  50.                             "izlude","lighthalzen","louyang","manuk","morocc","moscovia",
  51.                             "niflheim","payon","prontera","rachel","splendide","umbala",
  52.                             "veins","xmas","yuno";
  53.    
  54.     set $@heal_type,0;                      // Tipo de cura, 0 para recuperar todo o HP do jogador e 1 para curar os valores especificados na array seguinte.
  55.     setarray $@heal_values[1],2500,4000;    // Valores de cura de HP, respectivamente: HP para não vips, HP para vips.
  56.     end;
  57. }
  58.  
  59. //===============================================================================
  60. // Suporte :
  61. //===============================================================================
  62.  
  63. prontera,156,180,3  script  Emilyn::E_P 1844,{
  64. end;
  65.  
  66. toHeal:
  67.     if(agitcheck() || agitcheck2()) end;
  68.     if(Hp == MaxHp) end;
  69.     npctalk "Curar !!";
  70.     specialeffect2 312;
  71.     heal(($@heal_type) ? $@heal_values[1] : MaxHp-Hp),0;
  72.     specialeffect2 313;
  73.     end;
  74.  
  75. toBuff:
  76.     if(agitcheck() || agitcheck2()) end;
  77.     if(sc_check(SC_INCREASEAGI) && sc_check(SC_BLESSING)) end;
  78.     specialeffect 12;
  79.     specialeffect2 60;
  80.     if(!sc_check(SC_INCREASEAGI)){
  81.     sleep2 3000;
  82.     sc_start SC_INCREASEAGI,((getgmlevel()) ? 600000 : 300000),10;
  83.     specialeffect2 37;
  84.     npctalk "Agi Up !!";
  85.     }
  86.     if(!sc_check(SC_BLESSING)){
  87.     sleep2 1000;
  88.     specialeffect2 42;
  89.     sc_start SC_BLESSING,((getgmlevel()) ? 600000 : 300000),10;
  90.     npctalk "Benção !!";
  91.     }
  92.     end;
  93.  
  94. toPortal:
  95.     if(agitcheck() || agitcheck2()) end;
  96.     set e_portal$, $@p2$;
  97.     if(!$@portal) end;
  98.     else if(getmapusers(e_portal$) == -1){ dispbottom "Emilyn : Não memorizei esse mapa!"; end; }
  99.     else if(getmapflag(e_portal$,MF_NOWARPTO) == 1){ dispbottom "Emilyn : Esse local é proibido!"; end; }
  100.     else if(!getgmlevel() && (!countitem(717) || (Zeny < $@porta_price))){ dispbottom "Emilyn : Eu preciso de Gema Azul e 2.5k!"; end; }
  101.     else {
  102.         for(set .@i,0; .@i < getarraysize($@portal_maps$); set .@i,.@i+1){
  103.             if(e_portal$ == $@portal_maps$[.@i]){
  104.                 if(!getgmlevel()){ delitem 717,1; set Zeny,Zeny-$@porta_price; }
  105.                 specialeffect 12;
  106.                 specialeffect2 316;
  107.                 sleep2 1000;
  108.                 specialeffect2 317;
  109.                 sleep2 1000;
  110.                 warp e_portal$,0,0;
  111.             }
  112.         }
  113.     }
  114.     end;
  115.  
  116. OnTimer60000:
  117.     initnpctimer;
  118.     callfunc("emilyn_talk");
  119.  
  120. OnTimer15000:
  121.     npcwalkto 163+rand(-6,6),184+rand(-4,4);
  122.     end;
  123.  
  124. OnInit:
  125.     defpattern 1, "([^:]+):.*cura.*", "toHeal";
  126.     defpattern 1, "([^:]+):.*buff.*", "toBuff";
  127.     defpattern 1, "([^:]+):.*heal.*", "toHeal";
  128.     defpattern 1, "([^:]+):.*portal\\s+(.*)", "toPortal";
  129.     defpattern 1, "([^:]+):.*teleporte\\s+(.*)", "toPortal";
  130.     activatepset 1;
  131.     npcspeed 220;
  132.     initnpctimer;
  133.     end;
  134.  
  135. }
  136.  
  137. -   script  Emilyn_Agit -1,{
  138.  
  139. OnAgitStart:
  140. OnAgitStart2:
  141. disablenpc "E_P";
  142. stopnpctimer "E_P";
  143. end;
  144.  
  145. OnAgitEnd:
  146. OnAgitEnd2:
  147. enablenpc "E_P";
  148. startnpctimer "E_P";
  149. end;
  150.  
  151. }
  152.  
  153. function    script  emilyn_talk {
  154.     set .@TFS, rand(24);
  155.     setarray .@talk$[0],"Abençoado sejas tú!","Que Deus o Proteja!","Buffs!","Buffs?","Eu te ajudarei!","Conte comigo, viajante!","Eu abençou os heróis!","Meu coração está contigo!","Seja forte!","Busque a imortalidade dos deuses!","Que os deuses lhe abençoem!";
  156.     setarray .@emotion[11],e_kis,e_kis2,e_lv,e_lv2,e_awsm,e_ok,e_go,e_ho,e_heh,e_no1,e_com,e_pat,e_brazil,e_mp;
  157.     if(.@TFS >= 0 && .@TFS <= 10)
  158.         npctalk .@talk$[.@TFS];
  159.     else if(.@TFS >= 11 && .@TFS <= 24)
  160.         emotion .@emotion[.@TFS];
  161.     end;
  162. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement