Advertisement
Guest User

Untitled

a guest
Apr 25th, 2019
166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 14.19 KB | None | 0 0
  1. //===== rAthena Script =======================================
  2. //= Devil Square
  3. //===== By: ==================================================
  4. //= Kirlein, Stillhard (translation), AnnieRuru (rewrite)
  5. //===== Current Version: =====================================
  6. //= 1.0
  7. //===== Compatible With: =====================================
  8. //= rAthena Project
  9. //===== Description: =========================================
  10. //= Devil Square, based on the event in MU Online.
  11. //= Defeat three waves of monsters for treasure.
  12. //===== Additional Comments: =================================
  13. //= 1.0 First version, edited. [Euphy]
  14. //============================================================
  15.  
  16. prontera,135,206,5 script Guardião Zona Sombria#1 10092,{
  17. set .@gm_level, 99; // GM level required to start/stop the event
  18.  
  19. mes "[Guardião da Zona Sombria]";
  20. mes "Olá aventureiro, sou o Guardião do portal para a ^FF0000Zona Sombria^000000, um lugar habitado pela trevas!";
  21. mes "Se aceitar, posso te leva-lo até lá, mas não demore muito pois o portal tem um tempo limitado e se fechará. Caso se feche, tente novamente na próxima abertura.";
  22. next;
  23. switch(select("Entrar.:Informação.:" + ((getgmlevel() >= .@gm_level) ? "GM Menu." : "") + ":Cancelar.")) {
  24. case 1:
  25. if (.start != 1) { // registration period
  26. mes "[Guardião da Zona Sombria]";
  27. mes "Devil Square está fechada.";
  28. mes "Aqui estão os horários de funcionamento:";
  29. mes "Domingo - 22:00 Horas.";
  30. mes "Segunda - 22:00 Horas.";
  31. mes "Terça - 22:00 Horas.";
  32. mes "Quarta - 20:00 Horas.";
  33. mes "Quinta - 22:00 Horas.";
  34. mes "Sexta - 22:00 Horas.";
  35. mes "Sabádo - 18:00 Horas.";
  36. close;
  37. }
  38. if (BaseLevel < 160 || Zeny < 100000 || countitem(3003) < 1) { // requirements
  39. mes "[Guardião da Zona Sombria]";
  40. mes "Você não pode entrar na Zona Sombria.";
  41. mes " ";
  42. mes "Requerimentos:";
  43. mes " - Level Base 160";
  44. mes " - Taxa de Registro 100000z.";
  45. mes " - 1 Moedas Ragnakid.";
  46. close;
  47. }
  48. delitem 3003,1;
  49. Zeny -= 100000;
  50. announce "[Evento] O Jogador(a) "+strcharinfo(0)+" entrou na *Zona Sombria*.", bc_npc,0xADD8E6;
  51. percentheal 100,100;
  52. warp "ordeal_1-1",183,182;
  53. close;
  54. case 2:
  55. mes "[Guardião da Zona Sombria]";
  56. mes "Lá dentro, você vai encontrar 6 rounds com monstros. Os monstros ficam mais forte a cada round.";
  57. next;
  58. mes "[Guardião da Zona Sombria]";
  59. mes "Se você derrotar todos os inimigos, você terá a oportunidade de receber um ^FF0000Galho do Baú Divino^000000, equipamentos, e moedas Ragnakid!";
  60. close;
  61. case 3:
  62. mes "[Guardião da Zona Sombria]";
  63. switch (.start) { // event states
  64. case 0: mes "A Zona Sombria ainda não foi aberta."; break;
  65. case 1: mes "A Zona Sombria está atualmente aceitando participantes."; break;
  66. case 2: mes "A Zona Sombria está atualmente no Round "+ .round +" com "+ .mob +" monstros restantes."; break;
  67. }
  68. next;
  69. switch(select("Começar evento.:Parar Evento.:Cancelar.")) {
  70. case 1:
  71. mes "[Guardião da Zona Sombria]";
  72. if (.start)
  73. mes "A Zona Sombria já começou.";
  74. else {
  75. mes "Iniciando Devil Square...";
  76. donpcevent strnpcinfo(0)+"::OnStartEvent";
  77. }
  78. close;
  79. case 2:
  80. mes "[Guardião da Zona Sombria]";
  81. if (!.start)
  82. mes "A Zona Sombria ainda não começou.";
  83. else {
  84. mes "Parando Zona Sombria...";
  85. donpcevent strnpcinfo(0)+"::OnStopEvent";
  86. }
  87. close;
  88. case 3:
  89. break;
  90. }
  91. break;
  92. case 4:
  93. break;
  94. }
  95. mes "[Guardião da Zona Sombria]";
  96. mes "Adeus.";
  97. close;
  98.  
  99. OnStartEvent:
  100. OnSun2200:
  101. OnMon2200:
  102. OnTue2200:
  103. OnWed2000:
  104. OnThu2200:
  105. OnFri2200:
  106. OnSat1800:
  107. .start = 1;
  108. disablenpc "ord11-12"; //from npc/warps/pvp.txt
  109. disablenpc "Guardião da Zona Sombria#2";
  110. mapannounce "ordeal_1-1","A Zona Sombria está fechada.", bc_map;
  111. getmapxy .@map$, .@x, .@y, UNITTYPE_NPC;
  112. mapwarp "ordeal_1-1", .@map$, .@x, .@y;
  113. killmonsterall "ordeal_1-1";
  114. announce "[Evento]: *A Zona Sombria* está aberta. O evento vai começar em 5 minutes.",bc_all,0xADD8E6;
  115. sleep 60000;
  116. announce "[Evento]: *A Zona Sombria* será aberta em 4 minutos.",bc_all,0xADD8E6;
  117. sleep 60000;
  118. announce "[Evento]: *A Zona Sombria* será aberta em 3 minutos.",bc_all,0xADD8E6;
  119. sleep 60000;
  120. announce "[Evento]: *A Zona Sombria* será aberta em 2 minutos.",bc_all,0xADD8E6;
  121. sleep 60000;
  122. announce "[Evento]: *A Zona Sombria* será aberta em 1 minuto.",bc_all,0xADD8E6;
  123. sleep 60000;
  124. announce "O Desafio da Zona Sombria COMEÇOU!", bc_all;
  125. if ( !getmapusers("ordeal_1-1") )
  126. goto OnStopEvent;
  127. .start = 2;
  128. .round = 1;
  129. .mob = 80;
  130. areamonster "ordeal_1-1",183,182,246,244,"[DS] Garm",1252,1,strnpcinfo(0)+"::OnDevilDead";
  131. areamonster "ordeal_1-1",183,182,246,244,"[DS] Moonlight Flower",1150,1,strnpcinfo(0)+"::OnDevilDead";
  132. areamonster "ordeal_1-1",183,182,246,244,"[DS] Phreeoni",1159,1,strnpcinfo(0)+"::OnDevilDead";
  133. areamonster "ordeal_1-1",183,182,246,244,"[DS] Mistress",1059,1,strnpcinfo(0)+"::OnDevilDead";
  134. areamonster "ordeal_1-1",183,182,246,244,"[DS] Drake",1112,1,strnpcinfo(0)+"::OnDevilDead";
  135. areamonster "ordeal_1-1",183,182,246,244,"[DS] Sasquatch",1243,15,strnpcinfo(0)+"::OnDevilDead";
  136. areamonster "ordeal_1-1",183,182,246,244,"[DS] Sohee",1170,15,strnpcinfo(0)+"::OnDevilDead";
  137. areamonster "ordeal_1-1",183,182,246,244,"[DS] Scorpion",1001,15,strnpcinfo(0)+"::OnDevilDead";
  138. areamonster "ordeal_1-1",183,182,246,244,"[DS] Argiope",1099,15,strnpcinfo(0)+"::OnDevilDead";
  139. areamonster "ordeal_1-1",183,182,246,244,"[DS] Penomena",1216,15,strnpcinfo(0)+"::OnDevilDead";
  140. end;
  141.  
  142. OnDevilDead:
  143. .mob--;
  144. if ( .mob == 25 || .mob == 5 )
  145. announce "Zona Sombria : "+ .mob +" monstros restantes no 1º round.", bc_map,0xADD8E6;
  146. else if ( .mob <= 0 ) {
  147. announce "Começando o 2º round...", bc_map;
  148. sleep 10000;
  149. goto OnDevil2;
  150. }
  151. end;
  152.  
  153. OnDevil2:
  154. .round = 2;
  155. .mob = 80;
  156. areamonster "ordeal_1-1",183,182,246,244,"[DS] Ktullanux",1779,1,strnpcinfo(0)+"::OnDevilDead2";
  157. areamonster "ordeal_1-1",183,182,246,244,"[DS] Leak",2156,1,strnpcinfo(0)+"::OnDevilDead2";
  158. areamonster "ordeal_1-1",183,182,246,244,"[DS] Atroce",1785,1,strnpcinfo(0)+"::OnDevilDead2";
  159. areamonster "ordeal_1-1",183,182,246,244,"[DS] Baphomet",1039,1,strnpcinfo(0)+"::OnDevilDead2";
  160. areamonster "ordeal_1-1",183,182,246,244,"[DS] Evil Snake Lord",1418,1,strnpcinfo(0)+"::OnDevilDead2";
  161. areamonster "ordeal_1-1",183,182,246,244,"[DS] Gazeti",1778,15,strnpcinfo(0)+"::OnDevilDead2";
  162. areamonster "ordeal_1-1",183,182,246,244,"[DS] Elusive Comodo",2867,15,strnpcinfo(0)+"::OnDevilDead2";
  163. areamonster "ordeal_1-1",183,182,246,244,"[DS] Swift Hill Wind",2804,15,strnpcinfo(0)+"::OnDevilDead2";
  164. areamonster "ordeal_1-1",183,182,246,244,"[DS] Swift Mantis",2764,15,strnpcinfo(0)+"::OnDevilDead2";
  165. areamonster "ordeal_1-1",183,182,246,244,"[DS] Elusive Evil Nymph",2617,15,strnpcinfo(0)+"::OnDevilDead2";
  166. end;
  167.  
  168. OnDevilDead2:
  169. .mob--;
  170. if ( .mob == 25 || .mob == 5 )
  171. announce "Zona Sombria : "+ .mob +" monstros restantes no 2º round.", bc_map,0xADD8E6;
  172. else if ( .mob <= 0 ) {
  173. announce "Começando o 3º round...", bc_map;
  174. sleep 10000;
  175. goto OnDevil3;
  176. }
  177. end;
  178.  
  179. OnDevil3:
  180. .round = 3;
  181. .mob = 80;
  182. areamonster "ordeal_1-1",183,182,246,244,"[DS] Beelzebub",1873,1,strnpcinfo(0)+"::OnDevilDead3";
  183. areamonster "ordeal_1-1",183,182,246,244,"[DS] Vesper",1685,1,strnpcinfo(0)+"::OnDevilDead3";
  184. areamonster "ordeal_1-1",183,182,246,244,"[DS] Stormy Knight",1251,1,strnpcinfo(0)+"::OnDevilDead3";
  185. areamonster "ordeal_1-1",183,182,246,244,"[DS] Orc Hero",1087,1,strnpcinfo(0)+"::OnDevilDead3";
  186. areamonster "ordeal_1-1",183,182,246,244,"[DS] Incantation Samurai",1492,1,strnpcinfo(0)+"::OnDevilDead3";
  187. areamonster "ordeal_1-1",183,182,246,244,"[DS] Necromancer Ringleader",2736,15,strnpcinfo(0)+"::OnDevilDead3";
  188. areamonster "ordeal_1-1",183,182,246,244,"[DS] Venatu",1676,15,strnpcinfo(0)+"::OnDevilDead3";
  189. areamonster "ordeal_1-1",183,182,246,244,"[DS] Garm Baby",1888,15,strnpcinfo(0)+"::OnDevilDead3";
  190. areamonster "ordeal_1-1",183,182,246,244,"[DS] High Orc",1213,15,strnpcinfo(0)+"::OnDevilDead3";
  191. areamonster "ordeal_1-1",183,182,246,244,"[DS] Shinobi",1401,15,strnpcinfo(0)+"::OnDevilDead3";
  192.  
  193. end;
  194.  
  195. OnDevilDead3:
  196. .mob--;
  197. if ( .mob == 25 || .mob == 5 )
  198. announce "Zona Sombria : "+ .mob +" monstros restantes no 3º round.", bc_map,0xADD8E6;
  199. else if ( .mob <= 0 ) {
  200. announce "Começando o 4º round...", bc_map;
  201. sleep 10000;
  202. goto OnDevil4;
  203. }
  204. end;
  205.  
  206. OnDevil4:
  207. .round = 4;
  208. .mob = 64;
  209. areamonster "ordeal_1-1",183,182,246,244,"[DS] Kraken",2202,1,strnpcinfo(0)+"::OnDevilDead4";
  210. areamonster "ordeal_1-1",183,182,246,244,"[DS] Gloom Under Night",1768,1,strnpcinfo(0)+"::OnDevilDead4";
  211. areamonster "ordeal_1-1",183,182,246,244,"[DS] Nightmare Amon Ra",2362,1,strnpcinfo(0)+"::OnDevilDead4";
  212. areamonster "ordeal_1-1",183,182,246,244,"[DS] Wounded Morroc",1917,1,strnpcinfo(0)+"::OnDevilDead4";
  213. areamonster "ordeal_1-1",183,182,246,244,"[DS] Furious Lamp Rey",2669,15,strnpcinfo(0)+"::OnDevilDead4";
  214. areamonster "ordeal_1-1",183,182,246,244,"[DS] Swift Agav",2911,15,strnpcinfo(0)+"::OnDevilDead4";
  215. areamonster "ordeal_1-1",183,182,246,244,"[DS] Nightmare Ancient Mummy",2360,15,strnpcinfo(0)+"::OnDevilDead4";
  216. areamonster "ordeal_1-1",183,182,246,244,"[DS] Elusive Incarnation of Morroc",2743,15,strnpcinfo(0)+"::OnDevilDead4";
  217.  
  218. end;
  219.  
  220. OnDevilDead4:
  221. .mob--;
  222. if ( .mob == 25 || .mob == 5 )
  223. announce "Zona Sombria : "+ .mob +" monstros restantes no 4º round.", bc_map,0xADD8E6;
  224. else if ( .mob <= 0 ) {
  225. announce "Começando o 5º round...", bc_map;
  226. sleep 10000;
  227. goto OnDevil5;
  228. }
  229. end;
  230.  
  231. OnDevil5:
  232. .round = 5;
  233. .mob = 64;
  234. areamonster "ordeal_1-1",183,182,246,244,"[DS] Ifrit",1832,1,strnpcinfo(0)+"::OnDevilDead5";
  235. areamonster "ordeal_1-1",183,182,246,244,"[DS] Gold Queen Scaraba",2165,1,strnpcinfo(0)+"::OnDevilDead5";
  236. areamonster "ordeal_1-1",183,182,246,244,"[DS] Valkyrie Randgris",1751,1,strnpcinfo(0)+"::OnDevilDead5";
  237. areamonster "ordeal_1-1",183,182,246,244,"[DS] Violent Coelacanth",2190,1,strnpcinfo(0)+"::OnDevilDead5";
  238. areamonster "ordeal_1-1",183,182,246,244,"[DS] Elusive Salamander",2675,15,strnpcinfo(0)+"::OnDevilDead5";
  239. areamonster "ordeal_1-1",183,182,246,244,"[DS] Gold Rake Scaraba",2164,15,strnpcinfo(0)+"::OnDevilDead5";
  240. areamonster "ordeal_1-1",183,182,246,244,"[DS] Plasma Ringleader",2706,15,strnpcinfo(0)+"::OnDevilDead5";
  241. areamonster "ordeal_1-1",183,182,246,244,"[DS] Deepsea Mermaid",2184,15,strnpcinfo(0)+"::OnDevilDead5";
  242.  
  243. end;
  244.  
  245. OnDevilDead5:
  246. .mob--;
  247. if ( .mob == 25 || .mob == 5 )
  248. announce "Zona Sombria : "+ .mob +" monstros restantes no 5º round.", bc_map,0xADD8E6;
  249. else if ( .mob <= 0 ) {
  250. announce "Começando o 6º round...", bc_map;
  251. sleep 10000;
  252. goto OnDevil6;
  253. }
  254. end;
  255.  
  256. OnDevil6:
  257. .round = 6;
  258. .mob = 84;
  259. areamonster "ordeal_1-1",183,182,246,244,"[DS] Marionete Demoniaca",2994,5,strnpcinfo(0)+"::OnDevilDead6";
  260. areamonster "ordeal_1-1",183,182,246,244,"[DS] Lichtern Amarelo",2368,5,strnpcinfo(0)+"::OnDevilDead6";
  261. areamonster "ordeal_1-1",183,182,246,244,"[DS] Sacerdote Abismal",2283,5,strnpcinfo(0)+"::OnDevilDead6";
  262. areamonster "ordeal_1-1",183,182,246,244,"[DS] Solid Dark Shadow",2820,4,strnpcinfo(0)+"::OnDevilDead6";
  263. areamonster "ordeal_1-1",183,182,246,244,"[DS] Poltergeist Sangrento",2993,5,strnpcinfo(0)+"::OnDevilDead6";
  264. areamonster "ordeal_1-1",183,182,246,244,"[DS] Gerente de Bifröst",2371,5,strnpcinfo(0)+"::OnDevilDead6";
  265. areamonster "ordeal_1-1",183,182,246,244,"[DS] Owl Marquees",2923,5,strnpcinfo(0)+"::OnDevilDead6";
  266. areamonster "ordeal_1-1",183,182,246,244,"[DS] Neo-punk",2919,5,strnpcinfo(0)+"::OnDevilDead6";
  267. areamonster "ordeal_1-1",183,182,246,244,"[DS] Solid Cenere",2874,5,strnpcinfo(0)+"::OnDevilDead6";
  268. areamonster "ordeal_1-1",183,182,246,244,"[DS] Big Ben",2916,5,strnpcinfo(0)+"::OnDevilDead6";
  269. areamonster "ordeal_1-1",183,182,246,244,"[DS] Árvore Anciã",2019,5,strnpcinfo(0)+"::OnDevilDead6";
  270. areamonster "ordeal_1-1",183,182,246,244,"[DS] Anolian Mutante",2183,5,strnpcinfo(0)+"::OnDevilDead6";
  271. areamonster "ordeal_1-1",183,182,246,244,"[DS] Kapha Metamorfo",2185,5,strnpcinfo(0)+"::OnDevilDead6";
  272. areamonster "ordeal_1-1",183,182,246,244,"[DS] Flamel Emul",2222,5,strnpcinfo(0)+"::OnDevilDead6";
  273. areamonster "ordeal_1-1",183,182,246,244,"[DS] Chimera Nightmare",2185,5,strnpcinfo(0)+"::OnDevilDead6";
  274. areamonster "ordeal_1-1",183,182,246,244,"[DS] Valkyrie",1765,2,strnpcinfo(0)+"::OnDevilDead6";
  275. areamonster "ordeal_1-1",183,182,246,244,"[DS] Randel Lawrence",2221,2,strnpcinfo(0)+"::OnDevilDead6";
  276. areamonster "ordeal_1-1",183,182,246,244,"[DS] Guardião Morto Kades",2255,1,strnpcinfo(0)+"::OnDevilDead6";
  277. areamonster "ordeal_1-1",183,182,246,244,"[DS] Gioia",2251,1,strnpcinfo(0)+"::OnDevilDead6";
  278. areamonster "ordeal_1-1",183,182,246,244,"[DS] General Daehyon",2253,1,strnpcinfo(0)+"::OnDevilDead6";
  279. areamonster "ordeal_1-1",183,182,246,244,"[DS] Pyuriel Furiosa",2249,1,strnpcinfo(0)+"::OnDevilDead6";
  280. areamonster "ordeal_1-1",183,182,246,244,"[DS] Timeholder",3074,1,strnpcinfo(0)+"::OnDevilDead6";
  281. areamonster "ordeal_1-1",183,182,246,244,"[DS] Celini Kimi",2996,1,strnpcinfo(0)+"::OnDevilDead6";
  282.  
  283. end;
  284.  
  285. OnDevilDead6:
  286. .mob--;
  287. if ( .mob == 25 || .mob == 5 )
  288. announce "Zona Sombria : "+ .mob +" monstros restantes para acabar a Devil Square.", bc_map,0xADD8E6;
  289. else if ( .mob <= 0 ) {
  290. announce "Parabéns a todos os guerreiros participantes. A Zona Sombria foi zerada. Encontre a runa Guardiã para receber sua recompensa.", bc_map,0xADD8E6;
  291. sleep 10000;
  292. goto OnStopEvent;
  293. }
  294. end;
  295.  
  296. OnStopEvent:
  297. killmonsterall "ordeal_1-1";
  298. enablenpc "ord11-12"; //from npc/warps/pvp.txt
  299. enablenpc "Guardião da Zona Sombria#2";
  300. .start = .round = .mob = 0;
  301. end;
  302. }
  303.  
  304. ordeal_1-1,246,245,7 script Guardião da Zona Sombria#2 406,{
  305. mes "[Saída]";
  306. mes "Vejo que você resistiu até o final!";
  307. mes "Tome aqui uma recompensa.";
  308. mes "Você recebeu um ^FF0000Galho do Baú Divino^000000.";
  309. close2;
  310. getitem 3015,1;
  311. warp "SavePoint",0,0;
  312. end;
  313. }
  314.  
  315. ordeal_1-1 mapflag nowarp
  316. ordeal_1-1 mapflag nowarpto
  317. ordeal_1-1 mapflag noteleport
  318. ordeal_1-1 mapflag monster_noteleport
  319. ordeal_1-1 mapflag nosave SavePoint
  320. ordeal_1-1 mapflag nomemo
  321. ordeal_1-1 mapflag nobranch
  322. ordeal_1-1 mapflag nopenalty
  323. ordeal_1-1 mapflag noicewall
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement