malangdo.txt 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435
  1. //===== rAthena Script =======================================
  2. //= Malangdo Town
  3. //===== By: ==================================================
  4. //= Muad_Dib
  5. //===== Current Version: =====================================
  6. //= 1.5
  7. //===== Compatible With: =====================================
  8. //= rAthena Project
  9. //===== Description: =========================================
  10. //= [Official Conversion]
  11. //= Malangdo Town Script
  12. //===== Additional Comments: =================================
  13. //= 1.0 First version. [Euphy]
  14. //= 1.1 Added entrance scripts.
  15. //= 1.2 Moved "Odgnalam" coordinates.
  16. //= 1.3 Fixed dialogues.
  17. //= 1.4 Dialogue edits, source iRO.
  18. //= 1.5 Added Izlude duplicates.
  19. //============================================================
  20. // Malangdo Transportation :: malangdo_go
  21. //============================================================
  22. - script Dolangmal -1,{
  23. if (checkquest(5091) == -1) {
  24. mes "[Dolangmal]";
  25. mes "Hey~! Hi human~ This is Mr. Dolangmal. kakaka~";
  26. next;
  27. mes "[Dolangmal]";
  28. mes "We are sent to here to take you to the heaven of cats, ^A2314BMalangdo^000000.";
  29. next;
  30. mes "[Dolangmal]";
  31. set .@s$,"Why don't you go to ^A2314BMalangdo^000000?";
  32. switch(atoi(strnpcinfo(2))) {
  33. case 1: mes "How is that? The crowded city of Prontera is good, but why don't you go our heaven of the cats, ^A2314BMalangdo^000000?"; break;
  34. case 2: mes "Why don't you go to ^A2314BMalangdo^000000? That place is better than Geffen, where there are only crowds of simple honest wizards."; break;
  35. case 3: mes "The fresh air of Payon is not bad, but why don't you go better place like the heaven of the cats, ^A2314BMalangdo^000000?"; break;
  36. case 4: mes .@s$+"The beautiful and quiet place is better than Aldebaran, where it's so noisy with the tick-tock sound of the clock."; break;
  37. case 5: mes .@s$+"The beautiful and quiet place is better than Morroc, with its heat and sandstorms."; break;
  38. case 6: mes .@s$+"The beautiful place is better than Yuno, which is full of books and headaches."; break;
  39. case 7: mes .@s$+"The complex place is better than Rachel, where it's too horribly quiet."; break;
  40. case 8: mes .@s$+"The safe place is better than Lighthanlzen, which is too dangerous."; break;
  41. case 9: mes .@s$+"The smell of this sea place is better than Mora, which is full of a grassy smell."; break;
  42. }
  43. next;
  44. if(select("No:^A2314BMalangdo^000000~ Go~ Go~") == 1) {
  45. mes "[Dolangmal]";
  46. mes "What!? You don't want to go ^A2314BMalangdo^000000? Chet!";
  47. next;
  48. mes "[Dolangmal]";
  49. mes "You're such an annoying guy. If you don't go, why did you talk to me... but...";
  50. next;
  51. mes "[Dolangmal]";
  52. mes "^9E1837Admiral Tomas^000000 said to kidnap humans... No... Bring them politely?";
  53. next;
  54. mes "[Dolangmal]";
  55. mes "Anyway, I got you. Whenever you want to go, just tell me.";
  56. close;
  57. }
  58. mes "[Dolangmal]";
  59. mes "Ok! I like your attitude. Full of passion.";
  60. next;
  61. mes "[Dolangmal]";
  62. mes "Now, before you go ^A2314BMalangdo^000000, let me give you some warnings.";
  63. next;
  64. mes "[Dolangmal]";
  65. mes "First!! It is natural that when you arrive on ^A2314BMalangdo^000000, you should notify ^9E1837Admiral Tomas^000000 that you are here.";
  66. next;
  67. mes "[Dolangmal]";
  68. mes "If you don't do that, you might be attacked by scary and wild cats when you walk through dark streets.";
  69. next;
  70. mes "[Dolangmal]";
  71. mes "Secondly!! This ^A2314BMalangdo^000000 is absolutely our island of cats, even though we open to humans.";
  72. next;
  73. mes "[Dolangmal]";
  74. mes "We have a personality... no... no... respect us like one catality because we are cats.";
  75. next;
  76. mes "[Dolangmal]";
  77. mes "And the next one is...";
  78. next;
  79. mes "Dolangmal proceeds and gives hundreds of warnings.";
  80. next;
  81. mes "[Dolangmal]";
  82. mes "Ok! Those are all the warnings!! They're easy and simple... right? Can you remember them?";
  83. next;
  84. switch(select("Remember his warnings:Can't remember")) {
  85. case 1:
  86. mes "[Dolangmal]";
  87. mes "Ok! Do not bite two mice with one mouth. ^9E1837Admiral Tomas^000000 is located at the ^A2314Bcenter of the ship in Malangdo^000000.";
  88. next;
  89. mes "[Dolangmal]";
  90. mes "Don't forget to give him notice of your arrival.";
  91. next;
  92. mes "[Dolangmal]";
  93. mes "Alright. Let's go to the heaven of the cats, ^A2314BMalangdo^000000~";
  94. setquest 5091;
  95. completequest 5091;
  96. warp "malangdo",217,85;
  97. close;
  98. case 2:
  99. mes "[Dolangmal]";
  100. mes "What!? Can't you keep these easy rules? Chet!";
  101. next;
  102. mes "[Dolangmal]";
  103. mes "You're such an annoying guy. If you can't keep these, why didn't you tell me during our conversation? I told you everything... but..";
  104. next;
  105. mes "[Dolangmal]";
  106. mes "^9E1837Admiral Tomas^000000 said to kidnap humans... No... Bring them politely?";
  107. next;
  108. mes "[Dolangmal]";
  109. mes "Anyway, I got you. Just tell me whenever you want to go.";
  110. close;
  111. }
  112. }
  113. mes "[Dolangmal]";
  114. mes "Uh? You must be the one from last time...? Alright. Did you visit ^A2314BMalangdo^000000?";
  115. next;
  116. switch(select("Take me to ^A2314BMalangdo^000000 again:I have visited")) {
  117. case 1:
  118. mes "[Dolangmal]";
  119. mes "I really want to send you there, but I can't because of the policy. It is difficult to send people who have visited ^A2314BMalangdo^000000 already.";
  120. next;
  121. mes "[Dolangmal]";
  122. mes "And that was roughly it... It's supposed to be rule 53...";
  123. next;
  124. mes "[Dolangmal]";
  125. mes "Actually, let me tell you rule 53. I am an indulgent cat.";
  126. next;
  127. mes "[Dolangmal]";
  128. mes "If you want to go back to ^A2314BMalangdo^000000, take the ship at Izlude or Alberta.";
  129. next;
  130. mes "[Dolangmal]";
  131. mes "If you enjoy that pleasant sea trip, you will arrive at the heaven of cats, ^A2314BMalangdo^000000.";
  132. next;
  133. mes "[Dolangmal]";
  134. mes "So easy! Isn't it? Well, good bye~";
  135. close;
  136. case 2:
  137. mes "[Dolangmal]";
  138. mes "How was it? You liked it? I knew it. Kakaka~";
  139. next;
  140. mes "[Dolangmal]";
  141. mes "Ah! I just want to make sure...";
  142. next;
  143. mes "[Dolangmal]";
  144. mes "Again, if you want to go back to ^A2314BMalangdo^000000, do you know where to take a ship at Izlude or Alberta?";
  145. next;
  146. mes "[Dolangmal]";
  147. mes "Hm~ You might know because you're a smart person. Well, see you again~";
  148. close;
  149. }
  150. }
  151. prontera,114,77,6 duplicate(Dolangmal) Dolangmal#1 553
  152. geffen,109,61,6 duplicate(Dolangmal) Dolangmal#2 553
  153. payon,200,106,4 duplicate(Dolangmal) Dolangmal#3 553
  154. aldebaran,170,104,4 duplicate(Dolangmal) Dolangmal#4 553
  155. morocc,168,275,4 duplicate(Dolangmal) Dolangmal#5 553
  156. yuno,165,122,4 duplicate(Dolangmal) Dolangmal#6 553
  157. rachel,121,126,4 duplicate(Dolangmal) Dolangmal#7 553
  158. lighthalzen,254,83,5 duplicate(Dolangmal) Dolangmal#8 553
  159. mora,57,150,4 duplicate(Dolangmal) Dolangmal#9 553
  160. - script ::Odgnalam -1,{
  161. mes "This cat is sleeping in the warm "+((strnpcinfo(2) == "albe")?"Alberta":"Izlude")+" sun.";
  162. next;
  163. if(select("Let him sleep:Talk to him") == 1) close;
  164. mes "[Odgnalam]";
  165. mes "Meow? Huh?";
  166. next;
  167. if (ep13_yong1 == 0) {
  168. set .@price,1000;
  169. set .@s1$,"Huh! You are so annoying. Let me send you to ^A2314BMalangdo^000000 for ^0000FF1000 Zeny^000000.";
  170. set .@s2$,"Money? Where is the money? You can't go anywhere without the money. Shame on you.";
  171. } else if (ep13_yong1 < 60) {
  172. set .@price,999;
  173. set .@s1$,"You have a little relationship with fleet of cat. I'll give you special discount price ^0000FF999 Zeny^000000 to ^A2314BMalangdo^000000, because you have relationship with fleet.";
  174. set .@s2$,"Where is the money? You don't have a sense of honor.";
  175. } else if (ep13_yong1 > 59 && ep13_yong1 < 80) {
  176. set .@price,500;
  177. set .@s1$,"You gave several help to our cat's fleet so let me give you special that with 50% discount price ^0000FF500 Zeny^000000. I'll send you to ^A2314BMalangdo^000000.";
  178. set .@s2$,"You don't have any money for paying 50% discount price? I can't believe it.";
  179. } else {
  180. mes "[Odgnalam]";
  181. mes "You are a hero of cat's fleet. Your activity is the legend between us.";
  182. next;
  183. mes "[Odgnalam]";
  184. mes "As you are a hero of the cat fleet let me send you to ^A2314BMalangdo^000000 for free.";
  185. next;
  186. if(select("Send me to Malangdo!:Do not go.") == 1) {
  187. mes "[Odgnalam]";
  188. mes "Have a comfortable trip... Alright let's go~";
  189. warp "malangdo",217,85;
  190. }
  191. close;
  192. }
  193. mes "[Odgnalam]";
  194. mes .@s1$;
  195. next;
  196. if(select("Send me to Malangdo!:Do not go.") == 2) close;
  197. if (Zeny < .@price) {
  198. mes "[Odgnalam]";
  199. mes "Money? Where is the money? You can't go anywhere without the money. Shame on you.";
  200. close;
  201. }
  202. set Zeny, Zeny - .@price;
  203. mes "[Odgnalam]";
  204. mes "Let me send you right away. Let's go~";
  205. warp "malangdo",217,85;
  206. close;
  207. }
  208. alberta,200,151,4 duplicate(Odgnalam) Odgnalam#albe 554
  209. izlude,182,218,4 duplicate(Odgnalam) Odgnalam#iz 554 // Old coordinates: (182,192)
  210. izlude_a,182,218,4 duplicate(Odgnalam) Odgnalam#iz_a 554
  211. izlude_b,182,218,4 duplicate(Odgnalam) Odgnalam#iz_b 554
  212. izlude_c,182,218,4 duplicate(Odgnalam) Odgnalam#iz_c 554
  213. izlude_d,182,218,4 duplicate(Odgnalam) Odgnalam#iz_d 554
  214. malangdo,219,86,4 script Kong#malang 545,{
  215. mes "[Kong]";
  216. mes "Did you have fun in Malangdo?";
  217. mes "The fleet has a service to Izlude and Alberta.";
  218. next;
  219. if (ep13_yong1 == 0) {
  220. set .@price,1000;
  221. set .@s1$, "1000 zeny";
  222. set .@s2$, "Have a nice day in Malangdo.";
  223. set .@no_money$, "It is difficult for free.";
  224. set .@yes_money$, "Have a nice trip.";
  225. mes "[Kong]";
  226. mes "The fee of ship is only 1000 zeny, where do you want to go?";
  227. next;
  228. } else if (ep13_yong1 < 60) {
  229. set .@price,999;
  230. set .@s1$,"999 zeny";
  231. set .@s2$, "Have a full of fortune day in Malangdo...";
  232. set .@no_money$, "It is difficult even though you have a relationship with the fleet.";
  233. set .@yes_money$, "Thanks, have a wonderful trip.";
  234. mes "[Kong]";
  235. mes "You have a connection with our fleet. Apply special price 999 zeny. Where do you want to go?";
  236. next;
  237. } else if (ep13_yong1 > 59 && ep13_yong1 < 80) {
  238. set .@price,500;
  239. set .@s1$,"500 zeny";
  240. set .@s2$, "There are full of fortune and jackpot in Malangdo.";
  241. set .@no_money$, "Oh my god. You don't have 500 zeny? It is difficult for free.";
  242. set .@yes_money$, "Have a nice trip and come again.";
  243. mes "[Kong]";
  244. mes "Wow~ You contributed to our fleet a lot. Alright!! Special discount price 500 zeny. Where do you want to go?";
  245. next;
  246. } else {
  247. set .@price,0;
  248. set .@s1$,"Free for the hero of our fleet!!";
  249. set .@s2$, "No one objects to the hero of our fleet staying in Malangdo...";
  250. mes "[Kong]";
  251. mes "Ah... You are the legendary hero of our cat's fleet.";
  252. next;
  253. mes "[Kong]";
  254. mes "We can't charge the hero of our fleet. What is your destination?";
  255. next;
  256. }
  257. set .@i, select("- Izlude destination --- "+.@s1$+":- Alberta destination --- "+.@s1$+":- Stay on Malangdo");
  258. mes "[Kong]";
  259. if (.@i == 3) {
  260. mes .@s2$;
  261. close;
  262. }
  263. if (ep13_yong1 > 80) {
  264. mes "Have a comfortable trip.";
  265. if (.@i == 1)
  266. warp "izlude",195,212; // Old coordinates: (194,180)
  267. else
  268. warp "alberta",192,150;
  269. close;
  270. }
  271. if (Zeny < .@price) {
  272. mes .@no_money$;
  273. close;
  274. }
  275. set Zeny, Zeny - .@price;
  276. mes .@yes_money$;
  277. if (.@i == 1)
  278. warp "izlude",195,212;
  279. else
  280. warp "alberta",192,150;
  281. close;
  282. }
  283. // Generic Malangdo NPCs :: malang_tre
  284. //============================================================
  285. malangdo,147,117,3 script Innkeeper#malang 554,{
  286. mes "You see a lazy cat standing on a chair.";
  287. mes "You guess that this is the Innkeeper.";
  288. next;
  289. switch(select("Umm... Can I rest here?:Psst... Can I save here?:Leave.")) {
  290. case 1:
  291. mes "[Innkeeper]";
  292. mes "Eh?";
  293. mes "Uh, sure you can use this hammock if you give me ^FF00005 Malangdo Cans^000000.";
  294. next;
  295. switch(select("Here you go.:Never mind.")) {
  296. case 1:
  297. if (countitem(12636) > 4) {
  298. delitem 12636,5; //Malang_Sp_Can
  299. percentheal 100,100;
  300. specialeffect2 EF_HEALSP;
  301. mes "[Innkeeper]";
  302. mes "Now relax.";
  303. emotion ET_CHUP;
  304. next;
  305. warp "malangdo",140,121;
  306. close;
  307. }
  308. mes "[Innkeeper]";
  309. mes "This ain't no charity.";
  310. close;
  311. case 2:
  312. mes "[Innkeeper]";
  313. mes "Let me know if you want to relax.";
  314. close;
  315. }
  316. case 2:
  317. mes "[Innkeeper]";
  318. mes "Location saved. We should keep company, haha~";
  319. savepoint "malangdo",142,118,1,1;
  320. close;
  321. case 3:
  322. mes "[Innkeeper]";
  323. mes "Sometimes you just have to relax.";
  324. next;
  325. mes "- Wow, this is the laziest cat ever. -";
  326. close;
  327. }
  328. close;
  329. }
  330. malangdo,151,120,3 script Minstrel#mal 479,{
  331. mes "[Minstrel]";
  332. mes "Boy, that lazy cat makes me want to just nap all day long.";
  333. next;
  334. mes "[Minstrel]";
  335. mes "He makes life look so simple.";
  336. close;
  337. }
  338. malangdo,149,120,5 script Wanderer#mal 485,5,1,{
  339. mes "[Wanderer]";
  340. mes "The cats living in here are so energetic.";
  341. mes "Is it weird that they make me want to dance all day?";
  342. mes "La di dah di dah~!";
  343. close;
  344. OnTouch:
  345. switch(rand(5)) {
  346. case 0:
  347. soundeffect "ring_of_nibelungen.wav",0;
  348. break;
  349. case 1:
  350. soundeffect "dont_forget_me_not.wav",0;
  351. break;
  352. case 2:
  353. soundeffect "humming.wav",0;
  354. break;
  355. case 3:
  356. soundeffect "assassin_of_sunset.wav",0;
  357. break;
  358. case 4:
  359. emotion ET_DELIGHT;
  360. emotion ET_DELIGHT, getnpcid(0, "Minstrel#mal");
  361. break;
  362. }
  363. end;
  364. }
  365. malangdo,216,168,3 script Cat Trainer#mal1 558,0,8,{
  366. emotion ET_COOL;
  367. mes "[Cat Trainer]";
  368. mes "Ooo~ their soft puffy tails and soft fur~";
  369. mes "I can't stand it, this is heaven~~!!";
  370. next;
  371. emotion ET_KIK;
  372. mes "[Cat Trainer]";
  373. mes "My hidden card, ^FF0000Silvervine Fruit^000000, can make all cats in Malangdo my slaves~ haha!";
  374. next;
  375. select("^FF0000Silvervine Fruit^000000?");
  376. mes "[Cat Trainer]";
  377. mes "It is such a rare item!";
  378. mes "I can barely get it.";
  379. mes "But these cudly cats can't resist it~";
  380. next;
  381. select("Where can I get ^FF0000Silvervine Fruit^000000?");
  382. mes "[Cat Trainer]";
  383. mes "Why would I tell you when I can barely get it?";
  384. mes "I wouldn't even tell you for all the zeny in the world~!";
  385. next;
  386. emotion ET_KIK;
  387. mes "[Cat Trainer]";
  388. mes "All the Malangdo cats are mine~!";
  389. mes "Muahahahaha~";
  390. mes "With enough ^FF0000Silvervine Fruit^000000 I can be a queen in Malangdo~ ohhhh!!!";
  391. close;
  392. OnTouch:
  393. emotion ET_SPARK;
  394. end;
  395. }
  396. malangdo,164,203,3 script Cat Trainer#mal2 853,{
  397. emotion ET_COOL;
  398. mes "[Cat Trainer]";
  399. mes "Ooo~ their soft puffy tails and soft fur~";
  400. mes "I can't stand it, this is heaven~~!!";
  401. next;
  402. emotion ET_KIK;
  403. mes "[Cat Trainer]";
  404. mes "This is my little secret called";
  405. mes "^FF0000Silvervine Fruit^000000. I can use";
  406. mes "it to make the Malangdo cats my";
  407. mes "slaves~ muahahahaha~!";
  408. next;
  409. select("^FF0000Silvervine Fruit^000000?");
  410. mes "[Cat Trainer]";
  411. mes "Hmm, I guess it's no wonder you don't know.";
  412. mes "These Malangdo cats can't resist it.";
  413. mes "But it's too rare of an item to get so you shouldn't bother trying to find it.";
  414. next;
  415. select("Where can I get ^FF0000Silvervine Fruit^000000?");
  416. mes "[Cat Trainer]";
  417. mes "Actually, it's simple. You just...";
  418. next;
  419. mes "[Cat Trainer]";
  420. mes "Hey, you almost made me tell my secret.";
  421. next;
  422. emotion ET_KIK;
  423. mes "[Cat Trainer]";
  424. mes "One day these cats will be mine.";
  425. mes "I can be a king in Malangdo~ ohhh~!";
  426. close;
  427. }