Advertisement
johnlol

invasion_mvp

May 22nd, 2019
276
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2. //%%           _____    _____   _____   _____   _____    _   _____   _   _            %%
  3. //%%          |  _  \  /  _  \ |  _  \ | ____| |  _  \  | | /  ___| | | / /           %%
  4. //%%          | |_| |  | | | | | | | | | |__   | |_| |  | | | |     | |/ /            %%
  5. //%%          |  _  /  | | | | | | | | |  __|  |  _  /  | | | |     | |\ \            %%
  6. //%%          | | \ \  | |_| | | |_| | | |___  | | \ \  | | | |___  | | \ \           %%
  7. //%%          |_|  \_\ \_____/ |_____/ |_____| |_|  \_\ |_| \_____| |_|  \_\          %%
  8. //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  9. //%%==================================================================================%%
  10. //%% | Desenvolvido Por [ADM] Roderick | Cronus | Por Favor, Não Retire Os Créditos | %%
  11. //%%==================================================================================%%
  12. //%%        |       TABELA SQL       (NÃO ESQUECER DE IMPORTAR PARA O BD)             %%
  13. //%%==================================================================================%%
  14. //%%            DROP TABLE IF EXISTS `invasao`;
  15. //%%            CREATE TABLE `invasao` (
  16. //%%            `id` int(11) unsigned NOT NULL auto_increment,
  17. //%%            `mobid` int(11) unsigned NOT NULL default '0',
  18. //%%            PRIMARY KEY (`id`)
  19. //%%            )ENGINE=MyISAM;
  20. //%%==================================================================================%%
  21. -   script  INVASAOMVP  -1,{   
  22. OnInit:
  23. //%%==================================================================================%%
  24. //%% Colocar aqui a ID dos MVPS "normais" ou seja os MVP's que vão ser sumonado em
  25. //%% maior quantidade
  26. setarray $MVP[1],1086,1087,1115,1147,1150,1159,1190,1251,1252,1389,1583,1688,1885,1980,2068,2094,2131,2194,1038,1039,1046,1059,1112,1157,1272,1312,1373,1418,1492,1511,1623,1630,1785,1957,2022,2087,2187,2188,2253,2327,2321,2441,2442,2996;
  27.  
  28. //%% Colocar aqui a ID dos MVPS "melhores" ou seja os MVP's que vão ser sumonado em
  29. //%% menor quantidade
  30. setarray $TopMVP[1],1658,1685,1708,1719,1734,1768,1779,1917,1929,1956,2156,3074,2189,2190,2202,2251,2255,2319,2362,1646,1647,1648,1649,1650,1651,1751,1832,1871,1874,2165,2235,2236,2237,2238,2239,2240,2241,2249;
  31.  
  32. //%% Aqui é a % de chance que os MVPs "normais", poderam ser sumonado 2 do mesmo!!
  33. //%% Pra cada monstro invocado, vai ser aplicado a taxa de porcetentagem para poder
  34. //%% dobrar e invocar 2 do mesmo, sendo assim só alguns vai ser dobrado conforme a %!
  35. //%% Colocar 100 para 100% e 0 para desabilitar essa função
  36. set $dobroMVP,30;
  37.  
  38. //%% Aqui é a % de chance que os MVPs "melhores", poderam ser sumonado 2 do mesmo!!
  39. //%% Pra cada monstro invocado, vai ser aplicado a taxa de porcetentagem para poder
  40. //%% dobrar e invocar 2 do mesmo, sendo assim só alguns vai ser dobrado conforme a %!
  41. //%% Colocar 100 para 100% e 0 para desabilitar essa função
  42. set $dobroTOP,20;
  43.  
  44. //%% Quantidade média de MVP "normais" que vai ser sumonado, média porquê esse número
  45. //%% poderá ser maior conforme a taxa de dobro (se estiver ativada)
  46. set $qtdeMVP,5;
  47.  
  48. //%% Quantidade média de MVP "melhores" que vai ser sumonado, média porquê esse nº
  49. //%% poderá ser maior conforme a taxa de dobro (se estiver ligada)%
  50. set $qtdeTOP,1;
  51.  
  52. //%% Chance do evento poder não acontecer, se quiser que o evento sempre aconteça
  53. //%% colocar o valor em 100 > 100%. O número equivale a % que evento VAI acontecer!!
  54. set $acontecer,40;
  55.  
  56. //%% MAPA que vai acontecer a invasão (colocar igual o nome digitado no @warp)
  57. set $mapa$,"prt_fild08";
  58.  
  59. //%% Nome do MAPA que vai aparecer nas mensagens globais anunciando o EVENTO!!
  60. set $nomemapa$,"SUL DE PRONTERA";
  61.  
  62. //%% Quando estiver faltando 'x' MVP's pra serem mortos o npc começa mandar global
  63. //%% avisando quantos MVP's faltam para ser mortos; Colocar 0 (zero) pra desativar
  64. set $faltam,5;
  65.  
  66. //%%
  67. end;
  68.  
  69. //%% Configure aqui os horários para acontecer o evento, coloque os horários em
  70. //%% formato PM sem o separador de horas e minutos. Ex: "1945" para 19:45> 07:45 PM
  71. //%% Pode colocar quantos horários quizer, ou também, apenas um
  72. //OnClock<hour><minute>:
  73. //OnMinute<minute>:
  74. //OnHour<hour>:
  75. //On<weekday><hour><minute>:
  76. //OnDay<month><day>:
  77.  
  78. OnMinute15:
  79. //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  80.  
  81. query_sql ("delete from `invasao` where id>0");
  82. set .@iniciar,rand(1,100);
  83.     if (.@iniciar > $acontecer){
  84.         end;
  85.     }
  86. for (set .@c,1; .@c <= $qtdeMVP; .@c++){
  87.     set .@max,getarraysize($MVP)-1;
  88.     set .@ID,rand(1,.@max);
  89.     query_sql ("select mobid from invasao where mobid='"+$MVP[.@ID]+"'",.@fromtable);
  90.         if ($MVP[.@ID] == .@fromtable){
  91.         while ($MVP[.@ID] == .@fromtable){     
  92.             set .@ID,rand(1,.@max);
  93.         }}
  94.     set .@dobrar,rand(1,100);
  95.         if(.@dobrar<=$dobroMVP)set .@quantos,2;
  96.         else{ set .@quantos,1;}
  97.         monster $mapa$,0,0,getmonsterinfo($MVP[.@ID],0),$MVP[.@ID],.@quantos,strnpcinfo(0)+"::OnKILLMOB";
  98.         query_sql("insert into `invasao` (mobid) value ('"+$MVP[.@ID]+"')");
  99. }
  100. for (set .@c,1; .@c <= $qtdeTOP; .@c++){
  101.         set .@max,getarraysize($TopMVP)-1;
  102.         set .@ID,rand(1,.@max);
  103.         query_sql ("select mobid from invasao where mobid='"+$TopMVP[.@ID]+"'",.@fromtable);
  104.         if ($TopMVP[.@ID] == .@fromtable){
  105.         while ($TopMVP[.@ID] == .@fromtable){                
  106.             set .@ID,rand(1,.@max);
  107.         }}
  108.     set .@dobrar,rand(1,100);
  109.         if(.@dobrar<=$dobroTOP)set .@quantos,2;
  110.         else{ set .@quantos,1;}
  111.         monster $mapa$,0,0,getmonsterinfo($TopMVP[.@ID],0),$TopMVP[.@ID],.@quantos,strnpcinfo(0)+"::OnKILLMOB";
  112.         query_sql("insert into `invasao` (mobid) value ('"+$TopMVP[.@ID]+"')");
  113. }
  114. announce "[Invasão MvP] Corram todos, vários MvP's surgiram do nada!!! "+$nomemapa$+"",bc_yellow;
  115. sleep 5000;
  116. announce "[Invasão MvP] Corram porquê eles vão fugir em 30 minutos!!!",bc_yellow;   //Não esqueça de alterar essa linha, caso você altere o tempo da Invasão!
  117. initnpctimer;
  118. set $mob,mobcount($mapa$,strnpcinfo(0)+"::OnKILLMOB");
  119. end;
  120. OnTimer1800000:                     //Configure o tempo que a invasão durará aqui, coloque o tempo em segundos!!
  121. killmonster $mapa$,strnpcinfo(0)+"::OnKILLMOB";
  122. cleanmap $mapa$;
  123. announce "[Invasão MvP] OS MvP's fugiram, a INVASÃO terminou!!!",bc_all,0xFF0000;
  124. stopnpctimer;
  125. end;
  126. OnKILLMOB:
  127.     $mob--;
  128.     if($mob==0){
  129.         sleep 3000;
  130.         announce "[Invasão MvP] Todos os MvP's foram mortos, a INVASÃO terminou!!!",bc_all,0xFF0000;
  131.         stopnpctimer;
  132.         end;
  133. }
  134.     if($mob==1){
  135.         sleep 3000;
  136.         announce "[Invasão MvP] Falta apenas 1 MvP para a INVASÃO terminar!",bc_yellow;
  137.     }
  138.     if($mob<=$faltam && $mob>1){
  139.         sleep 3000;
  140.         announce "[Invasão MvP] Ainda existe "+$mob+" MvP's em' "+$nomemapa$+"!!",bc_yellow;
  141.         }
  142.         end;
  143.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement