Advertisement
Guest User

Untitled

a guest
Jun 21st, 2018
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 38.27 KB | None | 0 0
  1. //===== rAthena Script =======================================
  2. //= Malangdo 綿綿島排水溝
  3. //===== By: ==================================================
  4. //= Euphy
  5. //===== Current Version: =====================================
  6. //= 1.1
  7. //===== Compatible With: =====================================
  8. //= rAthena Project
  9. //===== Description: =========================================
  10. //= [Official Conversion]
  11. //= Clean the 綿綿島排水溝s and defeat the Coelacanth.
  12. //= Daily and weekly quests are available.
  13. //= Contains a normal mode and hard mode.
  14. //===== Additional Comments: =================================
  15. //= 1.0 First version. [Euphy]
  16. //= Letters "n" and "h" in NPC names indicate difficulty.
  17. //= Instance correction [Jocelyn]
  18. //= Fixed the incorrect use of 'close'. [Jocelyn]
  19. //= Translated from EN to CH. [Jocelyn]
  20. //============================================================
  21.  
  22. // Quest NPCs :: mal_yong
  23. //============================================================
  24. mal_in01,170,29,4 script 愛寶#mal 561,{
  25. if (checkweight(1201,1) == 0) {
  26. mes "你身上東西的種類太多了, 請清理掉一些在回來吧!";
  27. close;
  28. }
  29. if (MaxWeight - Weight < 1000) {
  30. mes "你有太多的重物, 請減少你身上的重量後再繼續!";
  31. close;
  32. }
  33. if (BaseLevel < 90) {
  34. mes "[愛寶]";
  35. mes "呃.. 你是誰?";
  36. mes "我們不需要軟弱不堪的人!";
  37. close;
  38. }
  39. setarray .@quests[0],12271,12272,12273,12274;
  40. setarray .@names$[0],
  41. "一般地下排水溝每日任務","^990000困難地下排水溝每日任務^000000",
  42. "一般地下排水溝周間任務","^990000困難地下排水溝周間任務^000000";
  43. set .@menu$,"為什麼做這個工作?:";
  44. for(set .@i,0; .@i<4; set .@i,.@i+1) {
  45. if (checkquest(.@quests[.@i],PLAYTIME) > -1) {
  46. set .@status[.@i],2;
  47. set .@menu$, .@menu$+"^aaaaaa- 沒有新的任務可以給你 -^000000:";
  48. } else if (.@i%2 && BaseLevel < 140) {
  49. set .@status[.@i],0;
  50. set .@menu$, .@menu$+"^aaaaaa你等級太低了無法接取任務^000000:";
  51. } else {
  52. set .@status[.@i],1;
  53. set .@menu$, .@menu$+.@names$[.@i]+":";
  54. }
  55. }
  56. mes "[愛寶]";
  57. mes "我們渡海而來!!";
  58. mes "我們是排水溝的英雄! 我們不會原諒那些把排水溝當成目標的海鮮類!";
  59. next;
  60. set .@i, select(.@menu$)-1;
  61. if (.@i == 0) {
  62. mes "[愛寶]";
  63. mes "我們本來是 清潔員小草 的隨從! 我們也差一點就能升級成為衛兵了!";
  64. next;
  65. mes "[愛寶]";
  66. mes "然而, 當海水淹沒了這些重要的資源.. 我的夢想.. 全..全部都化為烏有..";
  67. next;
  68. mes "[愛寶]";
  69. mes "我們是不會原諒那些侵入我們地盤的海鮮類的! 我會把他們抓來沾辣椒醬一起吃掉!!!";
  70. next;
  71. mes "^0000ff愛寶憤怒的聲音邊說邊顫抖著.. 當他說到辣椒醬時, 眼神及嘴巴看起來都異常兇狠..^000000";
  72. close;
  73. }
  74. switch(.@status[.@i-1]) {
  75. case 0:
  76. mes "[愛寶]";
  77. mes "這任務對你來說太難了, 所以我無法和你解說.. 你要不要試試另外一個?";
  78. close;
  79. case 1:
  80. break;
  81. case 2:
  82. mes "[愛寶]";
  83. mes "對不起! 目前還沒有新的任務!如果我找到任何工作, 我會告訴你的!";
  84. close;
  85. }
  86. switch(.@i) {
  87. case 1: // General 綿綿島排水溝 Daily Service
  88. switch(rand(1,6)) {
  89. case 1: callsub L_GiveQuest,.@i,12255,12271,"深海蟹";
  90. case 2: callsub L_GiveQuest,.@i,12256,12271,"Deep Sea Marse";
  91. case 3: callsub L_GiveQuest,.@i,12257,12271,"Deep Sea Vadon";
  92. case 4: callsub L_GiveQuest,.@i,12258,12271,"Deep Sea Shellfish";
  93. case 5: callsub L_GiveQuest,.@i,12259,12271,"Deep Sea Kukre";
  94. case 6: callsub L_GiveQuest,.@i,12260,12271,"Deep Sea Cornutus";
  95. }
  96. case 2: // Hard 綿綿島排水溝 Daily Service
  97. switch(rand(1,6)) {
  98. case 1: callsub L_GiveQuest,.@i,12261,12272,"Deep Sea Marc";
  99. case 2: callsub L_GiveQuest,.@i,12262,12272,"Deep Sea Sword Fish";
  100. case 3: callsub L_GiveQuest,.@i,12263,12272,"Deep Sea Strouf";
  101. case 4: callsub L_GiveQuest,.@i,12264,12272,"Deep Sea Anolian";
  102. case 5: callsub L_GiveQuest,.@i,12265,12272,"Deep Sea Obeanue";
  103. case 6: callsub L_GiveQuest,.@i,12266,12272,"Deep Sea Kapha";
  104. }
  105. case 3: // General 綿綿島排水溝 Weekly Service
  106. switch(rand(1,2)) {
  107. case 1: callsub L_GiveQuest,.@i,12267,12273,"Weird Coelacanth";
  108. case 2: callsub L_GiveQuest,.@i,12268,12273,"Gloomy Coelacanth";
  109. }
  110. case 4: // Hard 綿綿島排水溝 Weekly Service
  111. switch(rand(1,2)) {
  112. case 1: callsub L_GiveQuest,.@i,12269,12274,"Violent Coelacanth";
  113. case 2: callsub L_GiveQuest,.@i,12270,12274,"Mutant Coelacanth";
  114. }
  115. default:
  116. mes "[愛寶]";
  117. mes "呃!? 你的任務呢? 讓我找找.. 啊你必須和 馬黛卡 說話";
  118. close;
  119. }
  120. end;
  121.  
  122. // callsub L_GiveQuest,.@i,<quest 1>,<quest 2>,<monster>;
  123. L_GiveQuest:
  124. setquest getarg(1);
  125. setquest getarg(2);
  126. mes "[愛寶]";
  127. mes "就在今天! 排水溝的英雄!";
  128. mes "我們大聲的宣布.. 滅絕的日期就在 ^0000ff"+getarg(3)+"^000000!";
  129. next;
  130. mes "[愛寶]";
  131. switch(getarg(0)) {
  132. case 1:
  133. case 2:
  134. mes "噢拜託, 英雄! 不要怕他們啊! 去做就對了嘛~ 反正這也只是個每日任務!";
  135. break;
  136. case 3:
  137. mes "我會給你一個禮拜的時間去完成這項任務! 去消滅排水溝裡面所有的臭海鮮吧! 簡單模式!";
  138. break;
  139. case 4:
  140. mes "我會給你一個禮拜的時間去完成這項任務! 去消滅排水溝裡面所有的臭海鮮吧! 困難模式!";
  141. break;
  142. }
  143. next;
  144. mes "你接受了一項消滅任務 ^005500"+getarg(3)+"^000000. 如果你需要更多的資訊, 請打開你的任務視窗!";
  145. close;
  146.  
  147. }
  148.  
  149. mal_in01,170,26,4 script 馬黛卡#mal 544,{
  150. if (checkweight(1201,1) == 0) {
  151. mes "你身上東西的種類太多了, 請清理掉一些在回來吧!";
  152. close;
  153. }
  154. if (MaxWeight - Weight < 1000) {
  155. mes "你有太多的重物, 請減少你身上的重量後再繼續!";
  156. close;
  157. }
  158. if (BaseLevel < 90) {
  159. mes "[馬黛卡]";
  160. mes "啊啊啊啊啊啊啊!!";
  161. mes "就讓我們解決那些壞蛋海鮮吧! 水煮還是炭烤我都可以!";
  162. next;
  163. mes "[馬黛卡]";
  164. mes "呃? 你是誰? 你真是個小廢物耶.. 連一根小海草都能殺你!";
  165. close;
  166. }
  167. mes "[馬黛卡]";
  168. mes "噢?";
  169. mes "嗯? 處理愛寶哥委託的人類就是你嗎? 辛苦囉!";
  170. next;
  171. set .@i, select("你在這裡幹嘛?:可以幫我檢查一下簡單每日任務嗎:可以幫我檢查一下困難每日任務嗎:可以幫我檢查一下簡單周間任務嗎:可以幫我檢查一下困難周間任務嗎")-1;
  172. if (.@i == 0) {
  173. mes "[馬黛卡]";
  174. mes "我是來幫助我的愛寶哥的!";
  175. next;
  176. mes "[馬黛卡]";
  177. mes "在排水溝, 我們提供珍貴的 壞蛋海鮮 給那些做海鮮泥球的人類們";
  178. next;
  179. mes "[馬黛卡]";
  180. mes "在每日任務裡, 我們也提供了等級 A~B 的硬幣作為賠償金, 而在每周任務裡, 我們提供了海神的憤怒!";
  181. next;
  182. mes "[馬黛卡]";
  183. mes "如果你能接受愛寶哥的任務, 我相信我們會常常見面的! 所以我們可以保持密切的關係!";
  184. close;
  185. }
  186. mes "[馬黛卡]";
  187. mes "如果你的任務過期了, 是不會拿到任何的補償金的! 所以讓我檢查是否有任務過期了!";
  188. next;
  189. specialeffect2 EF_SPHERE;
  190. progressbar "0xFFFF00",3;
  191. specialeffect2 EF_STEAL;
  192. switch(.@i) {
  193. case 1: // General 綿綿島排水溝 Daily Service
  194. if (checkquest(12271,PLAYTIME) == 2)
  195. callsub L_EraseQuest,12255,12256,12257,12258,12259,12260,12271;
  196. else {
  197. // Reward: 2x B Grade Coin
  198. callsub L_CheckQuest,12255,"Deep Sea Crab",6419,2;
  199. callsub L_CheckQuest,12256,"Deep Sea Marse",6419,2;
  200. callsub L_CheckQuest,12257,"Deep Sea Vadon",6419,2;
  201. callsub L_CheckQuest,12258,"Deep Sea Shellfish",6419,2;
  202. callsub L_CheckQuest,12259,"Deep Sea Kukre",6419,2;
  203. callsub L_CheckQuest,12260,"Deep Sea Cornutus",6419,2;
  204. }
  205. break;
  206. case 2: // Hard 綿綿島排水溝 Daily Service
  207. if (checkquest(12272,PLAYTIME) == 2)
  208. callsub L_EraseQuest,12261,12262,12263,12264,12265,12266,12272;
  209. else {
  210. // Reward: 1x A Grade Coin
  211. callsub L_CheckQuest,12261,"Deep Sea Marc",6418,1;
  212. callsub L_CheckQuest,12262,"Deep Sea Sword Fish",6418,1;
  213. callsub L_CheckQuest,12263,"Deep Sea Strouf",6418,1;
  214. callsub L_CheckQuest,12264,"Deep Sea Anolian",6418,1;
  215. callsub L_CheckQuest,12265,"Deep Sea Obeaune",6418,1;
  216. callsub L_CheckQuest,12266,"Deep Sea Kapha",6418,1;
  217. }
  218. break;
  219. case 3: // General 綿綿島排水溝 Weekly Service
  220. if (checkquest(12273,PLAYTIME) == 2)
  221. callsub L_EraseQuest,12267,12268,12273;
  222. else {
  223. // Reward: 1x Sea God's Wrath
  224. callsub L_CheckQuest,12267,"Weird Coelacanth",6423,1;
  225. callsub L_CheckQuest,12268,"Gloomy Coelacanth",6423,1;
  226. }
  227. break;
  228. case 4: // Hard 綿綿島排水溝 Weekly Service
  229. if (checkquest(12274,PLAYTIME) == 2)
  230. callsub L_EraseQuest,12269,12270,12274;
  231. else {
  232. // Reward: 5x Sea God's Wrath
  233. callsub L_CheckQuest,12269,"Violent Coelacanth",6423,5;
  234. callsub L_CheckQuest,12270,"Mutant Coelacanth",6423,5;
  235. }
  236. break;
  237. default:
  238. mes "[馬黛卡]";
  239. mes "什麼!? 請在次檢查!";
  240. close;
  241. }
  242. mes "[馬黛卡]";
  243. mes "我沒有看到任何完成的任務!";
  244. close;
  245.  
  246. L_EraseQuest:
  247. for(set .@j,0; .@j<getargcount(); set .@j,.@j+1) {
  248. if (checkquest(getarg(.@j)) > -1)
  249. erasequest getarg(.@j);
  250. }
  251. mes "[馬黛卡]";
  252. mes "呃, 我很抱歉.. 你超出了這個時間限制, 所以我不能給你任何報酬..";
  253. close;
  254.  
  255. // callsub L_CheckQuest,<quest ID>,<monster>,<reward item ID>,<reward item amount>;
  256. L_CheckQuest:
  257. if (checkquest(getarg(0),HUNTING) == 2) {
  258. mes "[馬黛卡]";
  259. mes "你已經制裁了 ^0000ff"+getarg(1)+"^000000!";
  260. mes "這是你的報酬";
  261. erasequest getarg(0);
  262. specialeffect2 EF_STEAL;
  263. getitem getarg(2),getarg(3);
  264. close;
  265. }
  266. return;
  267.  
  268. }
  269.  
  270. // Instance Creation :: pump
  271. //============================================================
  272. prontera,159,153,4 script 清潔員小草 545,{
  273. if (BaseLevel < 90) {
  274. mes "[清潔員小草]";
  275. mes "你在跟我講話嗎?!";
  276. next;
  277. mes "[清潔員小草]";
  278. mes "我不知道是什麼讓你來到這裡, 但你不能進入!";
  279. mes "托馬斯 吩咐過..";
  280. next;
  281. mes "^770099你要有90等才能進入.^000000";
  282. close;
  283. }
  284. if (in_canal_n == 0) {
  285. mes "[清潔員小草]";
  286. mes "(發抖抖抖抖抖抖抖抖抖)";
  287. next;
  288. mes "^660066這隻貓咪的臉色很難看, 而且身體好像還在微微的顫抖!!^000000";
  289. next;
  290. if(select("摸摸這隻貓:你還好嗎?") == 1) {
  291. mes "[清潔員小草]";
  292. mes "你再跟我說話嗎?!";
  293. next;
  294. mes "^660066A 這隻發抖的貓抬起頭, 用無助的眼神看著你 ^000000";
  295. close;
  296. }
  297. mes "[清潔員小草]";
  298. mes "哈啾!";
  299. next;
  300. mes "[清潔員小草]";
  301. mes "我們在清理排水溝的同時";
  302. mes "發生了很多問題.. 但是..";
  303. mes "現在一隻貓.. 必須去解決它..";
  304. next;
  305. select("你在清理什麼排水溝啊?");
  306. mes "[清潔員小草]";
  307. mes "對於你這個外來人你或許會感到困惑,";
  308. mes "但實際上這地方.. ";
  309. mes "本來是用來收集紀念品,";
  310. mes "以及豪華珍貴的東西的!";
  311. next;
  312. mes "[清潔員小草]";
  313. mes "但當這座島發生了地震之後,";
  314. mes "所有的東西便開始往外漏!";
  315. mes "這就是為什麼我現在輪落為一個清潔員..";
  316. mes "想當初.. 當初..";
  317. mes "我好歹也是個經理等級的人呀..";
  318. next;
  319. mes "^660066這隻貓看起來好像在.. 哭..?!^000000";
  320. next;
  321. mes "[清潔員小草]";
  322. mes "沿著這條路, 有個排水溝..";
  323. mes "在裡面, 有很多壞蛋打傷了我..";
  324. mes "我已經累了";
  325. mes "每天都要想辦法對抗它們..";
  326. mes "我已經沒有力氣了";
  327. next;
  328. mes "[清潔員小草]";
  329. mes "啊啊!! 你摸了我最珍愛的毛髮!";
  330. mes "我的毛髮正在脫落!!!!!";
  331. mes "都是那些壞蛋惹的禍!!";
  332. next;
  333. mes "^660066你注意到了這隻貓的毛髮.. 東缺一塊西缺一塊的..^000000";
  334. next;
  335. select("你幹嘛不乾脆別做了!");
  336. mes "[清潔員小草]";
  337. mes "我也是要過生活的啊, 不是嗎?";
  338. next;
  339. mes "[清潔員小草]";
  340. mes "有時候我會得到一個幸運的箱子..";
  341. mes "或者更好, 我會得到一個罐頭...";
  342. next;
  343. if(select("好吧, 祝你好運!:我會盡可能的幫你的...") == 1) {
  344. mes "[清潔員小草]";
  345. mes "謝謝你.. 我要回去倒水了!";
  346. close;
  347. }
  348. mes "[清潔員小草]";
  349. mes "(突然小小聲的說)";
  350. mes "如果你真的想要幫我, 靠過來一點!";
  351. next;
  352. select("(靠過去一點)");
  353. mes "[清潔員小草]";
  354. mes "並不是所有人都有資格當助手的!";
  355. mes "但是在這種緊急的時候";
  356. mes "我也不得不隨便找個人來幫我了..";
  357. next;
  358. mes "[清潔員小草]";
  359. mes "如果你想下去, 我給你一組密碼..";
  360. next;
  361. mes "^660066這貓很迅速的拿出便條紙, 寫了密碼遞給了你^000000";
  362. next;
  363. select("打開便條紙");
  364. mes "^660000亞拉甘羞辱了我..^000000";
  365. next;
  366. mes "[清潔員小草]";
  367. mes "你必須和朋友一起前來";
  368. mes "因為你是無法一個人進入的!";
  369. mes "這組密碼就給隊長吧!";
  370. mes "請謹記在心!";
  371. next;
  372. mes "[清潔員小草]";
  373. mes "還有一件非常重要的事情..";
  374. mes "那就是你必須隨身攜帶 海神護身符";
  375. next;
  376. mes "[清潔員小草]";
  377. mes "千萬千萬別忘記了!";
  378. mes "如果你身上沒有 海神護身符 我是不會幫你開門的!";
  379. set in_canal_n,1;
  380. close;
  381. }
  382. if (countitem(6436) == 0) {
  383. mes "[清潔員小草]";
  384. mes "你看起來沒有海神護身符. 我不能開這門!";
  385. close;
  386. }
  387. set .@party_id,getcharid(1);
  388. set .@md_name$,"綿綿島排水溝";
  389. if (!.@party_id) {
  390. mes "^0000ff你必須要擁有一個隊伍!";
  391. mes "請至少要一個或多餘一個人!";
  392. mes "成立好隊伍之後再回來找我!^000000";
  393. close;
  394. }
  395. set .@playtime, checkquest(12254,PLAYTIME);
  396. if (.@playtime == -1) {
  397. if (getcharid(0) == getpartyleader(.@party_id,2)) {
  398. mes "[清潔員小草]";
  399. mes "嗯? 幹嘛? 是隊長的話就告訴我密碼呀!";
  400. next;
  401. switch(select("呃...沒事!:亞拉甘羞辱了我:我可以去下面嗎?")) {
  402. case 1:
  403. mes "[清潔員小草]";
  404. mes "死菜鳥";
  405. close;
  406. case 2:
  407. if (instance_create(.@md_name$) < 0) {
  408. mes "隊伍名稱: "+getpartyname(.@party_id);
  409. mes "隊長名稱: "+strcharinfo(0);
  410. mes "^0000ff"+.@md_name$+"^000000 - 副本創建失敗!";
  411. close;
  412. }
  413. mes "^3333FF"+.@md_name$+"^000000 - Reserving";
  414. mes "在你準備好後!";
  415. mes "就下來吧!";
  416. close;
  417. case 3:
  418. set tiredtick23,gettimetick(2);
  419. callsub L_Enter,0;
  420. }
  421. }
  422. if(select("Enter 綿綿島排水溝:Cancel") == 2)
  423. end;
  424. callsub L_Enter,1;
  425. } else if (.@playtime == 0 || .@playtime == 1) {
  426. mes "如果門是打開的,你可以進入";
  427. next;
  428. if(select("進入:取消") == 2)
  429. close;
  430. callsub L_Enter,0;
  431. } else if (.@playtime == 2) {
  432. mes "^0000ff排水溝的大門再次開啟了!^000000";
  433. erasequest 12254;
  434. close;
  435. }
  436. end;
  437. L_Enter:
  438. switch(instance_enter("綿綿島排水溝")) {
  439. case 3:
  440. mes "發生了不明錯誤..";
  441. close;
  442. case 2:
  443. mes "現在處於關閉狀態";
  444. mes "你必須等到下一次能夠進入的時間在創建";
  445. close;
  446. case 1:
  447. mes "只有隊伍的成員才能參加!";
  448. close;
  449. case 0:
  450. set tiredtick3,gettimetick(2);
  451. mapannounce "mal_in01", strcharinfo(0)+" of the party "+getpartyname(.@party_id)+" is entering the 綿綿島排水溝.",bc_map,"0x00ff99";
  452. if (checkquest(12254) == -1) setquest 12254;
  453. //warp "1@pump",63,98;
  454. if (getarg(0) == 0) close;
  455. else end;
  456. }
  457. }
  458.  
  459. // Instance: Common Scripts
  460. //============================================================
  461. 1@pump,63,100,4 script 清潔員小草#0 545,{
  462. if (getcharid(0) != getpartyleader(getcharid(1),2)) {
  463. mes "[清潔員小草]";
  464. mes "我正在和你們的隊長說話, 可以請你不要插嘴嗎?!";
  465. close;
  466. }
  467. mes "[清潔員小草]";
  468. mes "這裡是地下排水溝, 你將與你的隊伍把這裡清理乾淨!!";
  469. next;
  470. mes "[清潔員小草]";
  471. mes "我先開門進去了, 不過, 你會打架嗎?";
  472. next;
  473. switch(select("我懂外送麵包(簡單):廢話我當然知道怎麼打架(困難):^ffffff給我那些鑽石^000000")) {
  474. case 1:
  475. mes "[清潔員小草]";
  476. mes "好吧, 我讓你在這層清理, 準備好了就來右邊找我吧!";
  477. next;
  478. if(select("等等! 我改變主意了!:那開始吧!") == 1) {
  479. mes "[清潔員小草]";
  480. mes "呃? 還沒準備好? 等你準備好了再來跟我說話啊!";
  481. close;
  482. }
  483. set 'party_id,getcharid(1);
  484. mapannounce instance_mapname("1@pump"),"清潔員小草: 請往 3點鐘 方向移動, 之後等待我的指示!",bc_map,"0xff88ff",FW_NORMAL,15;
  485. disablenpc instance_npcname("清潔員小草#0");
  486. enablenpc instance_npcname("清潔員小草#n");
  487. close;
  488. case 2:
  489. if (BaseLevel < 140) {
  490. mes "[清潔員小草]";
  491. mes "呃.. 我覺得你看起來頗弱的耶.. 告訴我實話!!";
  492. close;
  493. }
  494. mes "[清潔員小草]";
  495. mes "呃? 你有一些戰鬥技巧? 好吧, 那麼有一個地方我是不能清理的, 你就去那裡吧!";
  496. next;
  497. mes "[清潔員小草]";
  498. mes "我必須告訴你, 他已經很長一段時間不曾清理了, 所以任何人沒 140級 是無法進入的! 你確定你還願意去嗎?";
  499. next;
  500. if(select("等等! 我改變主意了!:當然, 我已經準備好了!") == 1) {
  501. mes "[清潔員小草]";
  502. mes "呃? 還沒準備好? 等你準備好了再來跟我說話啊!";
  503. close;
  504. }
  505. set 'party_id,getcharid(1);
  506. mapannounce instance_mapname("1@pump"),"清潔員小草: 我先進去, 所以記得跟上! 我會在 3點鐘 的方向開起一扇門!",bc_map,"0xff88ff",FW_NORMAL,15;
  507. disablenpc instance_npcname("清潔員小草#0");
  508. enablenpc instance_npcname("綿綿島排水溝 Entrance#i");
  509. close;
  510. case 3:
  511. mes "[清潔員小草]";
  512. mes "我告訴你不要跟我玩!";
  513. close;
  514. }
  515. end;
  516. }
  517.  
  518. 1@pump,84,105,0 script 綿綿島排水溝 Entrance#i 45,3,3,{
  519. end;
  520. OnInstanceInit:
  521. disablenpc instance_npcname("綿綿島排水溝 Entrance#i");
  522. end;
  523. OnTouch:
  524. if (BaseLevel >= 140)
  525. warp instance_mapname("2@pump"),38,88;
  526. else
  527. warp instance_mapname("1@pump"),74,105;
  528. end;
  529. }
  530.  
  531. function script F_mal_missing {
  532. mes "[清潔員小草]";
  533. mes "我會告訴你如何清理的, 你有看到你周圍的排水溝嗎?";
  534. next;
  535. if(select("什麼鬼排水溝??:有, 我有看到!") == 1) {
  536. mes "[清潔員小草]";
  537. mes "蛤? 這是你第一次看見排水溝? 你可以在地底下發現它們, 你可以去看完之後再回來!";
  538. close;
  539. }
  540. mes "[清潔員小草]";
  541. mes "沒有錯就是它! 那些排水溝非常的重要! 我們必須把它清理乾淨防止水草堵塞.. 這就是我們清潔員的工作, 懂嗎?";
  542. next;
  543. mes "[清潔員小草]";
  544. mes "小心啊! 當你在清理的時候有些怪物會追殺你! 請不要敗給它們了!";
  545. next;
  546. mes "[清潔員小草]";
  547. mes "最後... 請不要讓海草生到 6隻! 5隻 我還能勉強接受! 如果有 6隻 我一定把你拖出來!!";
  548. next;
  549. mes "[清潔員小草]";
  550. mes "我才不管你有沒有朋友幫你.. 我就是要你把所有的排水溝清理乾淨! 別忘記了! 我會監督你然後給你指示.. 我說什麼你做什麼就對了!!";
  551. next;
  552. if (getcharid(0) != getpartyleader(getcharid(1),2)) {
  553. mes "[清潔員小草]";
  554. mes "只要你的隊長準備好了, 我們隨時都可以開始, 所以請做好心理準備!!";
  555. close;
  556. }
  557. mes "[清潔員小草]";
  558. mes "所以你準備好了沒有?";
  559. next;
  560. switch(select("等等! 還沒!:我們開始吧!")) {
  561. case 1:
  562. mes "[清潔員小草]";
  563. mes "呃? 還沒準備好? 等你準備好了再來跟我說話啊!";
  564. close;
  565. case 2:
  566. mes "[清潔員小草]";
  567. mes "那我們開始吧!!";
  568. return;
  569. }
  570. }
  571.  
  572. // Instance: Normal Mode :: in_pump1
  573. //============================================================
  574. 1@pump,84,105,4 script 清潔員小草#nf 545,{
  575. mes "[清潔員小草]";
  576. mes "我有40年的清潔工作經驗, 我從來沒有見過這麼可怕的!";
  577. next;
  578. mes "[清潔員小草]";
  579. mes "我看到到處都是海草, 所有洞口都將被海草堵住了!";
  580. next;
  581. if (getcharid(0) != getpartyleader(getcharid(1),2)) {
  582. mes "[清潔員小草]";
  583. mes "一但你的隊長準備好了, 便告訴我你們準備好了!";
  584. close;
  585. }
  586. mes "[清潔員小草]";
  587. mes "如果你還有一些膽量再次挑戰, 我再給你一次機會! 你的選擇是?";
  588. next;
  589. switch(select("等等! 還沒!:好吧! 讓我們重新開始!")) {
  590. case 1:
  591. mes "[清潔員小草]";
  592. mes "你仍然在拖時間!等你準備好了再來跟我說話!";
  593. close;
  594. case 2:
  595. mes "[清潔員小草]";
  596. mes "好! 讓我們現在開始!";
  597. set .@i$, charat(strnpcinfo(2),0);
  598. enablenpc instance_npcname("清潔員小草#"+.@i$);
  599. donpcevent instance_npcname("清潔員小草#"+.@i$)+"::OnStart";
  600. disablenpc instance_npcname("綿綿島排水溝 Entrance#"+.@i$);
  601. disablenpc instance_npcname("清潔員小草#"+.@i$+"o");
  602. donpcevent instance_npcname("Monster Hole#"+.@i$)+"::OnClear";
  603. disablenpc instance_npcname(strnpcinfo(0));
  604. close;
  605. }
  606. close;
  607. OnInstanceInit:
  608. disablenpc instance_npcname(strnpcinfo(0));
  609. end;
  610. }
  611.  
  612. 1@pump,84,105,4 script 清潔員小草#n 545,{
  613. callfunc "F_mal_missing";
  614. donpcevent instance_npcname("清潔員小草#n")+"::OnStart";
  615. close;
  616. OnInstanceInit:
  617. disablenpc instance_npcname("清潔員小草#n");
  618. end;
  619. OnStart:
  620. killmonster instance_mapname("1@pump"),instance_npcname("清潔員小草#n")+"::OnMyMobDead";
  621. disablenpc instance_npcname("清潔員小草#n");
  622. initnpctimer;
  623. end;
  624. OnAddSeaweed:
  625. set .@map$, instance_mapname("1@pump");
  626. areamonster .@map$,55,99,61,105,"污染的海草",2191,1,instance_npcname("清潔員小草#n")+"::OnMyMobDead";
  627. set .@mob_dead_num, mobcount(.@map$,instance_npcname("清潔員小草#n")+"::OnMyMobDead");
  628. if (.@mob_dead_num >= 6)
  629. donpcevent instance_npcname("清潔員小草#n")+"::OnFail";
  630. else
  631. mapannounce .@map$,"污染的海草: "+.@mob_dead_num+" 顆",bc_map,"0xff3333",FW_NORMAL,20;
  632. end;
  633. OnMyMobDead:
  634. end;
  635. OnFail:
  636. stopnpctimer;
  637. donpcevent instance_npcname("Monster Hole#n")+"::OnClear";
  638. set .@map$, instance_mapname("1@pump");
  639. killmonster .@map$,instance_npcname("清潔員小草#n")+"::OnMyMobDead";
  640. enablenpc instance_npcname("清潔員小草#nf");
  641. mapannounce .@map$,"這是什麼鬼?! 排水溝怎麼到處都是海草! 這裡不需要你了!! 給我滾出去!!",bc_map,"0xff88ff",FW_NORMAL,15;
  642. disablenpc instance_npcname("清潔員小草#n");
  643. end;
  644. OnTimer100:
  645. mapannounce instance_mapname("1@pump"),"第一個排水溝 5秒 之後會開啟.. 請清潔員找到排水溝開始準備清理..",bc_map,"0x00ffcc",FW_NORMAL,15;
  646. end;
  647. OnTimer5500:
  648. mapannounce instance_mapname("1@pump"),"負責清理排水溝的那個人, 在清理的同時是無法移動或被攻擊的..",bc_map,"0x00ffcc",FW_NORMAL,15;
  649. donpcevent instance_npcname("Monster Hole#n")+"::OnSpawn";
  650. end;
  651. OnTimer45000:
  652. OnTimer95000:
  653. OnTimer145000:
  654. OnTimer195000:
  655. OnTimer245000:
  656. OnTimer295000:
  657. OnTimer345000:
  658. OnTimer395000:
  659. OnTimer445000:
  660. mapannounce instance_mapname("1@pump"),"下一個排水溝 5秒 後會開啟! 請儘快找到下一個排水溝的位子!",bc_map,"0x00ffcc",FW_NORMAL,15;
  661. end;
  662. OnTimer50000:
  663. OnTimer100000:
  664. OnTimer150000:
  665. donpcevent instance_npcname("Monster Hole#n")+"::OnSpawn";
  666. end;
  667. OnTimer200000:
  668. OnTimer250000:
  669. OnTimer300000:
  670. OnTimer350000:
  671. OnTimer400000:
  672. OnTimer450000:
  673. set .@mob_dead_num, mobcount(instance_mapname("1@pump"),instance_npcname("清潔員小草#n")+"::OnMyMobDead");
  674. if (.@mob_dead_num >= 6)
  675. donpcevent instance_npcname("清潔員小草#n")+"::OnFail";
  676. else
  677. donpcevent instance_npcname("Monster Hole#n")+"::OnSpawn";
  678. end;
  679. OnTimer515000:
  680. set .@map$, instance_mapname("1@pump");
  681. set .@mob_dead_num, mobcount(.@map$,instance_npcname("清潔員小草#n")+"::OnMyMobDead");
  682. mapannounce .@map$,"污染的海草: "+.@mob_dead_num+" 顆. 清潔員小草會來檢查你的成果!",bc_map,"0xff3333",FW_NORMAL,20;
  683. end;
  684. OnTimer520000:
  685. stopnpctimer;
  686. set .@mob_dead_num, mobcount(instance_mapname("1@pump"),instance_npcname("清潔員小草#n")+"::OnMyMobDead");
  687. if (.@mob_dead_num >= 6)
  688. donpcevent instance_npcname("清潔員小草#n")+"::OnFail";
  689. else
  690. donpcevent instance_npcname("Boss Creation#n")+"::OnEnable";
  691. end;
  692. }
  693.  
  694. 1@pump,1,1,4 script Monster Hole#n -1,{
  695. end;
  696. OnSpawn:
  697. set .@i$, charat(strnpcinfo(2),0);
  698. if (.@i$ == "n")
  699. set .@n,6;
  700. else if (.@i$ == "h")
  701. set .@n,10;
  702. donpcevent instance_npcname("#綿綿島排水溝_"+.@i$+rand(1,.@n))+"::OnEnable";
  703. end;
  704. OnClear:
  705. set .@i$, charat(strnpcinfo(2),0);
  706. if (.@i$ == "n")
  707. set .@n,6;
  708. else if (.@i$ == "h")
  709. set .@n,10;
  710. for(set .@i,1; .@i<=.@n; set .@i,.@i+1)
  711. donpcevent instance_npcname("#綿綿島排水溝_"+.@i$+.@n)+"::OnClear";
  712. end;
  713. }
  714.  
  715. 1@pump,36,111,4 script #綿綿島排水溝_n1 844,14,14,{ //temporary workaround for ALL_SAMEMAP
  716. progressbar "0xFFFF00",10;
  717. stopnpctimer;
  718. disablenpc instance_npcname(strnpcinfo(0));
  719. end;
  720. OnInstanceInit:
  721. disablenpc instance_npcname(strnpcinfo(0));
  722. end;
  723. OnEnable:
  724. enablenpc instance_npcname(strnpcinfo(0));
  725. set .@label$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
  726. set .@map$, instance_mapname("1@pump");
  727. set .@index, atoi(charat(strnpcinfo(2),9));
  728. switch(.@index) {
  729. case 1: setarray .@c[0],32,107,40,115; break;
  730. case 2: setarray .@c[0],64,120,72,128; break;
  731. case 3: setarray .@c[0],76,110,84,118; break;
  732. case 4: setarray .@c[0],36,76,44,84; break;
  733. case 5: setarray .@c[0],71,76,79,84; break;
  734. case 6: setarray .@c[0],54,97,62,105; break;
  735. }
  736. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"--ja--",2176,rand(1,3),.@label$;
  737. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"--ja--",2175,rand(1,3),.@label$;
  738. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"--ja--",2174,rand(1,3),.@label$;
  739. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"--ja--",2178,rand(1,3),.@label$;
  740. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"--ja--",2179,rand(1,3),.@label$;
  741. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"--ja--",2177,rand(1,3),.@label$;
  742. specialeffect EF_MAPPILLAR2,ALL_SAMEMAP; //currently broken
  743. getmapxy(.@map$,.@x,.@y,1);
  744. getpartymember 'party_id,2;
  745. copyarray .@partymemberaid[0],$@partymemberaid[0],$@partymembercount;
  746. for(set .@i,0; .@i<$@partymembercount; set .@i,.@i+1) {
  747. if (attachrid(.@partymemberaid[.@i])) {
  748. if (strcharinfo(3) == .@map$)
  749. viewpoint 0,.@x,.@y,.@index,0xFFFF00;
  750. detachrid;
  751. }
  752. }
  753. initnpctimer;
  754. end;
  755. OnMyMobDead:
  756. end;
  757. OnClear:
  758. stopnpctimer;
  759. killmonster instance_mapname("1@pump"),instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
  760. end;
  761. OnTimer49500: //OnTimer50000 clashes with the timer in "清潔員小草#h".
  762. donpcevent instance_npcname("清潔員小草#n")+"::OnAddSeaweed";
  763. donpcevent instance_npcname(strnpcinfo(0))+"::OnClear";
  764. disablenpc instance_npcname(strnpcinfo(0));
  765. end;
  766. OnTouch:
  767. specialeffect EF_MAPPILLAR2;
  768. end;
  769. }
  770. 1@pump,68,124,4 duplicate(#綿綿島排水溝_n1) #綿綿島排水溝_n2 844,14,14
  771. 1@pump,80,114,4 duplicate(#綿綿島排水溝_n1) #綿綿島排水溝_n3 844,14,14
  772. 1@pump,40,80,4 duplicate(#綿綿島排水溝_n1) #綿綿島排水溝_n4 844,14,14
  773. 1@pump,75,80,4 duplicate(#綿綿島排水溝_n1) #綿綿島排水溝_n5 844,14,14
  774. 1@pump,58,101,4 duplicate(#綿綿島排水溝_n1) #綿綿島排水溝_n6 844,14,14
  775.  
  776. 1@pump,1,1,4 script Boss Creation#n -1,{
  777. end;
  778. OnInstanceInit:
  779. disablenpc instance_npcname(strnpcinfo(0));
  780. end;
  781. OnEnable:
  782. enablenpc instance_npcname(strnpcinfo(0));
  783. initnpctimer;
  784. end;
  785. OnTimer100:
  786. set .@i$, charat(strnpcinfo(2),0);
  787. if (.@i$ == "n")
  788. mapannounce instance_mapname("1@pump"),"哼哼! 還不錯嘛!",bc_map,"0xff88ff",FW_NORMAL,15;
  789. else if (.@i$ == "h")
  790. mapannounce instance_mapname("2@pump"),"哇! 你們很厲害嘛!!",bc_map,"0xff88ff",FW_NORMAL,15;
  791. end;
  792. OnTimer5000:
  793. mapannounce strnpcinfo(4),"我們整頓好, 準備出去吧, 等等, 什麼!!?",bc_map,"0xff88ff",FW_NORMAL,15;
  794. end;
  795. OnTimer10000:
  796. mapannounce strnpcinfo(4),"我能感覺到危險的氣息! 別放鬆警惕! 準備戰鬥!!",bc_map,"0xff88ff",FW_NORMAL,15;
  797. end;
  798. OnTimer20000:
  799. stopnpctimer;
  800. set .@i$, charat(strnpcinfo(2),0);
  801. set .@label$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
  802. if (rand(1,100) > 50) {
  803. if (.@i$ == "n")
  804. monster instance_mapname("1@pump"),0,0,"--ja--",2188,1,.@label$;
  805. else if (.@i$ == "h")
  806. monster instance_mapname("2@pump"),0,0,"--ja--",2189,1,.@label$;
  807. mapannounce strnpcinfo(4),"伴隨著轟隆隆的聲響, 一個 巨大的怪物 從深淵裡面現身了!!",bc_map,"0x00ffcc",FW_NORMAL,15;
  808. } else {
  809. if (.@i$ == "n")
  810. monster instance_mapname("1@pump"),0,0,"--ja--",2187,1,.@label$;
  811. else if (.@i$ == "h")
  812. monster instance_mapname("2@pump"),0,0,"--ja--",2190,1,.@label$;
  813. mapannounce strnpcinfo(4),"伴隨著轟隆隆的聲響, 一個 殘暴的怪物 從深淵裡面現身了!!",bc_map,"0x00ffcc",FW_NORMAL,15;
  814. }
  815. end;
  816. OnMyMobDead:
  817. if (mobcount(strnpcinfo(4),instance_npcname(strnpcinfo(0))+"::OnMyMobDead") < 1) {
  818. mapannounce strnpcinfo(4),"你成功的擊退了排水溝裡所有的怪物! 地上有獎勵, 請四處尋找一下!",bc_map,"0xffff00",FW_NORMAL,15;
  819. set .@i$, charat(strnpcinfo(2),0);
  820. set .@map$, strnpcinfo(4);
  821. enablenpc instance_npcname("綿綿島排水溝 Entrance#"+.@i$);
  822. enablenpc instance_npcname("清潔員小草#"+.@i$+"o");
  823. if (.@i$ == "n") {
  824. for(set .@i,0; .@i<10; set .@i,.@i+1) {
  825. set .@j, rand(1,6401);
  826. if (.@j < 5001) set .@item,12636; //Malang_Sp_Can
  827. else if (.@j < 5501) set .@item,12615; //Low_Coin_Pocket
  828. else if (.@j < 6001) set .@item,12621; //Egrade_Pocket
  829. else if (.@j < 6201) set .@item,12620; //Dgrade_Pocket
  830. else if (.@j < 6401) set .@item,12623; //High_Weapon_Box
  831. else continue;
  832. makeitem .@item,1,.@map$,rand(40,77),rand(87,120);
  833. }
  834. } else if (.@i$ == "h") {
  835. for(set .@i,0; .@i<10; set .@i,.@i+1) {
  836. set .@j, rand(1,5001);
  837. if (.@j < 2001) set .@item,12615; //Low_Coin_Pocket
  838. else if (.@j < 3001) set .@item,12621; //Egrade_Pocket
  839. else if (.@j < 4001) set .@item,12620; //Dgrade_Pocket
  840. else if (.@j < 4501) set .@item,12619; //Cgrade_Pocket
  841. else if (.@j < 5001) set .@item,12623; //High_Weapon_Box
  842. else continue;
  843. makeitem .@item,1,.@map$,rand(40,77),rand(87,120);
  844. }
  845. }
  846. } else
  847. mapannounce strnpcinfo(4),"還有怪物活著啊!",bc_map,"0x00ff99",FW_NORMAL,20;
  848. end;
  849. }
  850.  
  851. 1@pump,84,105,4 script 清潔員小草#no 545,{
  852. set .@i$, charat(strnpcinfo(2),0);
  853. if (.@i$ == "n") {
  854. mes "[清潔員小草]";
  855. mes "我非常的驚訝!!";
  856. next;
  857. mes "[清潔員小草]";
  858. mes "那隻看起來很好笑的魚, 應該是住在這裡的其中一隻腔棘魚.. 這是我第一次看到它們獨自一個跑出來!";
  859. next;
  860. mes "[清潔員小草]";
  861. mes "這裡剩下的就交給我來清理吧, 快收拾好離開! 入口在另外一邊, 你找一下!";
  862. next;
  863. } else if (.@i$ == "h") {
  864. mes "[清潔員小草]";
  865. mes "你殺了一個巨大的怪物!!";
  866. next;
  867. mes "[清潔員小草]";
  868. mes "你殺掉的這隻腔棘魚只是其中一種! 我知道很多人想殺它們但是都失敗了!";
  869. next;
  870. mes "[清潔員小草]";
  871. mes "剩下的就交給我來清裡吧, 你去找一下你的獎勵, 找好就離開吧!";
  872. next;
  873. }
  874. mes "[清潔員小草]";
  875. mes "還有一件事情! 絕對不要跟任何人提到關於今天這裡你所看到的一切!!";
  876. next;
  877. mes "[清潔員小草]";
  878. mes "如果托馬斯把這裡關閉了, 我們就要失業了!";
  879. close;
  880. OnInstanceInit:
  881. disablenpc instance_npcname(strnpcinfo(0));
  882. end;
  883. }
  884.  
  885. 1@pump,32,100,0 script 綿綿島排水溝 Entrance#n 45,3,3,{
  886. end;
  887. OnInstanceInit:
  888. disablenpc instance_npcname(strnpcinfo(0));
  889. end;
  890. OnTouch:
  891. .@map$ = instance_mapname("1@pump");
  892. script4each "{ getitem 501,1; }",1,.@map$;
  893. instance_warpall "prontera",115,76;
  894. end;
  895. }
  896.  
  897. //MD_Putmob "1@pump" 0 0 0 0 20 HYDRA 0 0 2
  898. 1@pump,1,1,4 script Hydra#n -1,{
  899. OnInstanceInit:
  900. monster strnpcinfo(4),0,0,"--ja--",1068,20;
  901. end;
  902. }
  903.  
  904. // Instance: Hard Mode :: in_pump2
  905. //============================================================
  906. 2@pump,39,88,4 duplicate(清潔員小草#nf) 清潔員小草#hf 545
  907.  
  908. 2@pump,39,88,4 script 清潔員小草#h 545,{
  909. callfunc "F_mal_missing";
  910. donpcevent instance_npcname("清潔員小草#h")+"::OnStart";
  911. close;
  912. OnStart:
  913. killmonster instance_mapname("2@pump"),instance_npcname("清潔員小草#h")+"::OnMyMobDead";
  914. disablenpc instance_npcname("清潔員小草#h");
  915. initnpctimer;
  916. end;
  917. OnAddSeaweed:
  918. set .@map$, instance_mapname("2@pump");
  919. areamonster .@map$,75,78,85,88,"--ja--",2191,1,instance_npcname("清潔員小草#h")+"::OnMyMobDead";
  920. set .@mob_dead_num, mobcount(.@map$,instance_npcname("清潔員小草#h")+"::OnMyMobDead");
  921. if (.@mob_dead_num >= 6)
  922. donpcevent instance_npcname("清潔員小草#h")+"::OnFail";
  923. else
  924. mapannounce .@map$,"增殖 污染的海草: "+.@mob_dead_num+" 顆",bc_map,"0xff3333",FW_NORMAL,20;
  925. end;
  926. OnMyMobDead:
  927. end;
  928. OnFail:
  929. stopnpctimer;
  930. donpcevent instance_npcname("Monster Hole#h")+"::OnClear";
  931. set .@map$, instance_mapname("2@pump");
  932. killmonster .@map$, instance_npcname("清潔員小草#h")+"::OnMyMobDead";
  933. enablenpc instance_npcname("清潔員小草#hf");
  934. mapannounce .@map$,"這是什麼鬼?! 排水溝怎麼到處都是海草! 這裡不需要你了!! 給我滾出去!!",bc_map,"0xff88ff",FW_NORMAL,15;
  935. disablenpc instance_npcname("清潔員小草#h");
  936. end;
  937. OnTimer100:
  938. mapannounce instance_mapname("2@pump"),"第一個排水溝 5秒 之後會開啟.. 請清潔員找到排水溝開始準備清理..",bc_map,"0x00ffcc",FW_NORMAL,15;
  939. end;
  940. OnTimer5500:
  941. mapannounce instance_mapname("2@pump"),"負責清理排水溝的那個人, 在清理的同時是無法移動或被攻擊的..",bc_map,"0x00ffcc",FW_NORMAL,15;
  942. donpcevent instance_npcname("Monster Hole#h")+"::OnSpawn";
  943. end;
  944. OnTimer35000:
  945. OnTimer75000:
  946. OnTimer115000:
  947. OnTimer155000:
  948. OnTimer195000:
  949. OnTimer235000:
  950. OnTimer275000:
  951. OnTimer315000:
  952. OnTimer355000:
  953. mapannounce instance_mapname("2@pump"),"下一個排水溝 5秒 後會開啟! 請儘快找到下一個排水溝的位子!",bc_map,"0x00ffcc",FW_NORMAL,15;
  954. end;
  955. OnTimer40000:
  956. OnTimer80000:
  957. OnTimer120000:
  958. donpcevent instance_npcname("Monster Hole#h")+"::OnSpawn";
  959. end;
  960. OnTimer160000:
  961. OnTimer200000:
  962. OnTimer240000:
  963. OnTimer280000:
  964. OnTimer320000:
  965. OnTimer360000:
  966. set .@mob_dead_num, mobcount(instance_mapname("2@pump"),instance_npcname("清潔員小草#h")+"::OnMyMobDead");
  967. if (.@mob_dead_num >= 6)
  968. donpcevent instance_npcname("清潔員小草#h")+"::OnFail";
  969. else
  970. donpcevent instance_npcname("Monster Hole#h")+"::OnSpawn";
  971. end;
  972. OnTimer420000:
  973. mapannounce instance_mapname("2@pump"),"看樣子清潔員小草會來檢查你的成果, 我們是不是該整裡一下?",bc_map,"0xff3333",FW_NORMAL,20;
  974. end;
  975. OnTimer425000:
  976. stopnpctimer;
  977. set .@mob_dead_num, mobcount(instance_mapname("2@pump"),instance_npcname("清潔員小草#h")+"::OnMyMobDead");
  978. if (.@mob_dead_num >= 6)
  979. donpcevent instance_npcname("清潔員小草#h")+"::OnFail";
  980. else
  981. donpcevent instance_npcname("Boss Creation#h")+"::OnEnable";
  982. end;
  983. }
  984.  
  985. 2@pump,53,114,4 script #綿綿島排水溝_h1 844,14,14,{ //temporary workaround for ALL_SAMEMAP
  986. progressbar "0xFFFF00",15;
  987. stopnpctimer;
  988. disablenpc instance_npcname(strnpcinfo(0));
  989. end;
  990. OnInstanceInit:
  991. disablenpc instance_npcname(strnpcinfo(0));
  992. end;
  993. OnEnable:
  994. enablenpc instance_npcname(strnpcinfo(0));
  995. set .@label$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
  996. set .@map$, instance_mapname("2@pump");
  997. set .@index, atoi(substr(strnpcinfo(2),9,getstrlen(strnpcinfo(2))-1));
  998. switch(.@index) {
  999. case 1: setarray .@c[0],49,110,57,118; break;
  1000. case 2: setarray .@c[0],75,105,83,113; break;
  1001. case 3: setarray .@c[0],110,110,118,118; break;
  1002. case 4: setarray .@c[0],94,94,102,102; break;
  1003. case 5: setarray .@c[0],58,92,66,100; break;
  1004. case 6: setarray .@c[0],53,66,61,74; break;
  1005. case 7: setarray .@c[0],43,45,51,53; break;
  1006. case 8: setarray .@c[0],77,59,85,67; break;
  1007. case 9: setarray .@c[0],96,70,104,78; break;
  1008. case 10: setarray .@c[0],111,46,119,54; break;
  1009. }
  1010. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"遠古海馬",2182,rand(2,3),.@label$;
  1011. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"遠古異變魚",2181,rand(2,3),.@label$;
  1012. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"遠古海神",2180,rand(2,3),.@label$;
  1013. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"突變虎蜥人",2183,rand(2,3),.@label$;
  1014. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"深海人魚",2184,rand(2,3),.@label$;
  1015. areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"變形釣魚河童",2185,rand(2,3),.@label$;
  1016. specialeffect EF_MAPPILLAR2,ALL_SAMEMAP; //currently broken
  1017. initnpctimer;
  1018. end;
  1019. OnMyMobDead:
  1020. end;
  1021. OnClear:
  1022. stopnpctimer;
  1023. killmonster instance_mapname("2@pump"),instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
  1024. end;
  1025. OnTimer39500: //OnTimer40000 clashes with the timer in "清潔員小草#h".
  1026. donpcevent instance_npcname("清潔員小草#h")+"::OnAddSeaweed";
  1027. donpcevent instance_npcname(strnpcinfo(0))+"::OnClear";
  1028. disablenpc instance_npcname(strnpcinfo(0));
  1029. end;
  1030. OnTouch:
  1031. specialeffect EF_MAPPILLAR2;
  1032. end;
  1033. }
  1034. 2@pump,79,109,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h2 844,14,14
  1035. 2@pump,114,114,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h3 844,14,14
  1036. 2@pump,98,98,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h4 844,14,14
  1037. 2@pump,62,96,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h5 844,14,14
  1038. 2@pump,57,70,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h6 844,14,14
  1039. 2@pump,47,49,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h7 844,14,14
  1040. 2@pump,81,63,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h8 844,14,14
  1041. 2@pump,100,74,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h9 844,14,14
  1042. 2@pump,115,50,4 duplicate(#綿綿島排水溝_h1) #綿綿島排水溝_h10 844,14,14
  1043.  
  1044. 2@pump,1,1,4 duplicate(Monster Hole#n) Monster Hole#h -1
  1045. 2@pump,1,1,4 duplicate(Boss Creation#n) Boss Creation#h -1
  1046. 2@pump,39,88,4 duplicate(清潔員小草#no) 清潔員小草#ho 545
  1047. 2@pump,38,100,0 duplicate(綿綿島排水溝 Entrance#n) 綿綿島排水溝 Entrance#h 45,3,3
  1048.  
  1049. //MD_Putmob "2@pump" 0 0 0 0 20 HYDRA 0 0 2
  1050. 2@pump,1,1,4 duplicate(Hydra#n) Hydra#h -1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement