Advertisement
hendra814

Kafra Agent

Nov 13th, 2017
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.28 KB | None | 0 0
  1. //===== Cydh Script ==========================================
  2. //= idRO Idul Fitri 2015 Events
  3. //===== Description: =========================================
  4. //= Special event for Idul Fitri July 2015 (1436 H).
  5. //= - Free teleport service.
  6. //= - Kartu Lebaran & Ketupat Quest.
  7. //===== Changelogs: ==========================================
  8. //= 1.0.0 Initial release. [Cydh]
  9. //= - Grammar and typo corrections.
  10. //= 1.1.0 Added Kartu Lebaran & Ketupat Quest [Cydh]
  11. //= - 2-3 lines are missing, forgot to capture them. :P
  12. //===== Tested on: ===========================================
  13. //= rAthena: https://github.com/rathena/rathena
  14. //============================================================
  15.  
  16. // Main NPC
  17. //============================================================
  18. - script idROFK::idRO_freekafra -1,{
  19. mes .name$;
  20. mes "Halo, ^0000FF"+strcharinfo(0)+"^000000.";
  21. mes "Ini adalah kejutan dari kantor";
  22. mes "pusat kafra Aldebaran.";
  23. //mes "Menyambut perayaan Idul Fitri 1436,";
  24. mes "kita akan memberikan layanan";
  25. mes "spesial gratis.";
  26. next;
  27. mes .name$;
  28. mes "Sebagai rasa kegembiraan, pemimpin";
  29. mes "kafra memerintahkan";
  30. mes "untuk memberikan kamu kesempatan";
  31. mes "untuk berkunjung ke tempat yang spesial.";
  32. mes "Tempat yang jarang sekali";
  33. mes "dikunjungi.";
  34. next;
  35. mes .name$;
  36. mes "Kafra di setiap kota akan";
  37. mes "memindahkan kamu ke";
  38. mes "dungeon atau kota yang belum";
  39. mes "pernah ada jasa layanan teleport.";
  40. next;
  41. switch(select("Gunakan layanan teleport.","Saya tidak tertarik.")) {
  42. case 1:
  43. next;
  44. mes .name$;
  45. mes "Jasa teleport ini gratis.";
  46. mes "Kamu bebas memilih tempat yang akan";
  47. mes "kamu kunjungi.";
  48. mes "Beritahukan kepada saya tempat";
  49. mes "tujuan kamu.";
  50. next;
  51. .@menu$ = "";
  52. for (.@i = 0; .@i < getarraysize(.maps$); .@i++) {
  53. .@menu$ = .@menu$ + .maps$[.@i*2] + ":";
  54. }
  55. .@menu$ = .@menu$ + ":Batal";
  56. .@sel = select(.@menu$)-1;
  57. if (.@sel-1 != .@i) {
  58. callsub(OnWarp,.@sel*2);
  59. break;
  60. }
  61. next;
  62. mes .name$;
  63. mes "Kamu membatalkannya.";
  64. // Fall through
  65. case 2: goto(OnCancel); break;
  66. }
  67. end;
  68.  
  69. OnWarp:
  70. .@i = getarg(0);
  71. next;
  72. mes .name$;
  73. mes "Terima kasih.";
  74. close2;
  75. warp .maps$[.@i+1],.xy[.@i],.xy[.@i+1];
  76. end;
  77.  
  78. OnCancel:
  79. next;
  80. mes .name$;
  81. mes "Pelayanan Kafra dapat selalu kamu gunakan.";
  82. mes "Kami akan selalu membantu kamu.";
  83. close;
  84.  
  85. OnInit:
  86. .name$ = "[Kafra Glaris]";
  87. // Warp List
  88. setarray .maps$[0],"Payon","payon",
  89. "Morocc","morocc",
  90. "Prontera","prontera",
  91. "Aldebaran","aldebaran",
  92. "Geffen","geffen",
  93. "Juno","yuno",
  94. "Alberta","alberta",
  95. "Dewata","dewata",
  96. "Brasilis","brasilis",
  97. "pay_dun02","pay_dun02",
  98. "gl_sew03","gl_sew03",
  99. "alde_dun02","alde_dun02",
  100. "mag_dun01","mag_dun01",
  101. "gefenia01","gefenia01",
  102. "thor_v01","thor_v01",
  103. "mosk_dun01","mosk_dun01",
  104. "Gunung Krakatau","dew_dun01",
  105. "bra_dun01","bra_dun01";
  106. setarray .xy[0],164,56,
  107. 157,50,
  108. 119,72,
  109. 143,107,
  110. 120,37,
  111. 158,35,
  112. 113,57,
  113. 230,84,
  114. 196,214,
  115. 146,130,
  116. 179,286,
  117. 116,179,
  118. 119,72,
  119. 46,105,
  120. 18,231,
  121. 189,48,
  122. 292,160,
  123. 81,51;
  124. end;
  125. }
  126.  
  127. // Kafra Agents
  128. payon,151,96,5 duplicate(idRO_freekafra) Kafra Agent#pay 4_F_KAFRA5
  129. morocc,166,112,5 duplicate(idRO_freekafra) Kafra Agent#moc 4_F_KAFRA5
  130. prontera,165,75,5 duplicate(idRO_freekafra) Kafra Agent#prt 4_F_KAFRA5
  131. aldebaran,125,108,5 duplicate(idRO_freekafra) Kafra Agent#ald 4_F_KAFRA5
  132. geffen,103,60,5 duplicate(idRO_freekafra) Kafra Agent#gef 4_F_KAFRA5
  133. yuno,168,187,5 duplicate(idRO_freekafra) Kafra Agent#yun 4_F_KAFRA5
  134. alberta,110,54,5 duplicate(idRO_freekafra) Kafra Agent#alb 4_F_KAFRA5
  135.  
  136. // Kartu Lebaran & Ketupat Quest
  137. //============================================================
  138. prontera,169,277,3 script Apollo#IdulFitri 4_M_RACHMAN2,{
  139. if (lebaran2015 == 0) { // Belum dimulai
  140. mes "[Apollo]";
  141. mes "Halo.";
  142. mes "Saya datang ke sini dari tempat yang jauh,";
  143. mes "untuk merayakan kebersamaan bersama orang-orang di sekitar sini.";
  144. mes "Apa kamu ingin merayakannya bersamaku?";
  145. next;
  146. switch (select("Saya mau.:Tidak.")) {
  147. case 1:
  148. callsub(OnInfo);
  149. lebaran2015 = 1;
  150. close;
  151. case 2:
  152. mes "[Apollo]";
  153. mes "Hmm... Sayang sekali kalau begitu.";
  154. close;
  155. }
  156. }
  157. else if (lebaran2015 == 15) { // Udah ngomong ama semua
  158. if (countitem(517) < 10 || countitem(519) < 10 || countitem(513) < 10 || countitem(511) < 10) {
  159. callsub(OnNeedReq);
  160. close;
  161. }
  162. mes "[Apollo]";
  163. mes "Kamu telah menyelesaikan tugasmu dengan baik.";
  164. mes "Saya telah mendengarnya dari saudaraku";
  165. mes "sebelum kamu sampai ke sini.";
  166. next;
  167. mes "[Apollo]";
  168. mes "Banyak orang akan merasakan kebahagiaan di hari raya";
  169. mes "oleh semua yang telah kamu perbuat hari ini.";
  170. next;
  171. mes "[Apollo]";
  172. mes "Ini, terimalah.";
  173. mes "Saya membuat masakan ini";
  174. mes "secara spesial untukmu.";
  175. mes "Masakan ini sangatlah mirip nikmat,";
  176. mes "dan bisa memberikan cukup penyembuhan jika digunakan.";
  177. next;
  178. mes "[Apollo]";
  179. mes "Baiklah kalau begitu,";
  180. mes "Sekarang saya akan kembali bekerja.";
  181. mes " ^00CE14Semoga kamu selalu mendapat yang terbaik^000000";
  182. mes "Sampai bertemu lagi.";
  183. close2;
  184. lebaran2015 = 16;
  185. delitem(517,10); // Meat
  186. delitem(519,10); // Milk
  187. delitem(513,10); // Banana
  188. delitem(511,10); // Green Herb
  189. getitem(685,5); // RAMADAN aka Kartu Lebaran
  190. getexp 1000,1000; //! TODO: Confirm the EXP gained!
  191. end;
  192. }
  193. else if (lebaran2015 >= 1 && lebaran2015 < 15) { // Quest dalam proses
  194. mes "[Apollo]";
  195. mes "Bagaimana tugasmu?";
  196. next;
  197. switch (select("Uh.. Saya lupa apa yang harus aku lakukan:Baik.")) {
  198. case 1:
  199. callsub(OnInfo);
  200. close;
  201. case 2:
  202. mes "[Apollo]";
  203. mes "Bagus kalau begitu.";
  204. mes "Hari ini adalah pertama kalinya saya membuat dish yang sangat banyak.";
  205. mes "dan hal ini tidaklah mudah.........";
  206. mes "tapi saya tetap menikmatinya!";
  207. close;
  208. }
  209. }
  210. else { // Selesai, ada quest tambahan
  211. mes "[Apollo]";
  212. mes "Oo... kamu adalah "+strcharinfo(0)+".";
  213. mes "Hampir saja saya melupakanmu,";
  214. mes "HaHa.";
  215. mes "Um, jika kamu menyumbangkan beberapa bahan";
  216. mes "yang saya butuhkan hari ini,";
  217. mes "Saya akan membuatkan ^00CE14KETUPAT^000000.";
  218. next;
  219. switch (select("Tenang saja.:Apa yang kamu butuhkan?:Saya sudah mempunyainya.")) {
  220. case 1:
  221. mes "[Apollo]";
  222. mes "HaHa. Terima kasih.";
  223. close;
  224. case 2:
  225. mes "[Apollo]";
  226. mes "^00CE14100 buah masing-masing untuk Meat, Milk, dan Banana^000000";
  227. mes "^00CE1420 buah masing-masing untuk Green Herb dan Yellow Herb^000000";
  228. mes "Saya akan menghargai semua bahan yang saya perlukan untuk memasak,";
  229. mes "Tidak banyak orang-orang yang bisa membawakanku";
  230. mes "bahan-bahan tersebut.........";
  231. close;
  232. case 3:
  233. if (countitem(517) < 50 && countitem(519) < 50 && countitem(513) < 50 && countitem(511) < 10 && countitem(508) < 10) {
  234. callsub(OnNeedReq);
  235. close;
  236. }
  237. mes "[Apollo]";
  238. mes "ooh.. Terima kasih,";
  239. mes "kalau begitu, terimalah ini";
  240. mes "^00CE14KETUPAT^000000 buatanku";
  241. mes "Saya juga membuatkan ketupat ini untuk seluruh penduduk kota.";
  242. next;
  243. mes "[Apollo]";
  244. mes "Dan kamu juga ikut berperan di dalamnya,";
  245. mes ""+strcharinfo(0)+",";
  246. mes " ";
  247. mes " ^00CE14Semoga kamu selalu mendapat yang terbaik^000000.";
  248. emotion ET_THANKS;
  249. delitem(517,50); // Meat
  250. delitem(519,50); // Milk
  251. delitem(513,50); // Banana
  252. delitem(511,10); // Green Herb
  253. delitem(508,10); // Yellow Herb
  254. getitem(552,1); // Ketupat
  255. close;
  256. }
  257. }
  258. end;
  259.  
  260. OnInfo:
  261. mes "[Apollo]";
  262. mes "Sekarang, kita sedang merayakan hari raya lebaran yang penuh kemenangan.";
  263. mes "Dan sudah pasti! Masakan dan kue-kue yang nikmat menjadi ciri khas di hari ini.";
  264. mes "Saya akan membuatkan semua masakannya.......";
  265. next;
  266. mes "[Apollo]";
  267. mes "Saya ingin kamu membawakan beberapa bahannya, "+strcharinfo(0)+".";
  268. mes "Beberapa saudaraku yang tersebar di beberapa tempat di negara ini";
  269. mes "akan siap untuk membantumu.";
  270. mes "Ikuti petunjuk yang kuberikan.";
  271. next;
  272. mes "[Apollo]";
  273. mes "1. Pergilah ke ^FF6A00Payon^000000 dan temui ^0000FFLingo^000000.";
  274. mes "Dia akan memberikanmu ^00CE1410 buah Meat^000000.";
  275. mes "2. Lalu ke ^FF6A00Izlude^000000 dan kunjungi ^0000FFMomo^000000.";
  276. mes "Dia akan memberikanmu ^00CE1410 buah Banana^000000.";
  277. mes "3. Serta pergi ke ^FF6A00Alberta^000000 untuk menemui ^0000FFSena^000000.";
  278. mes "Dia akan memberikanmu ^00CE1410 buah Milk^000000.";
  279. next;
  280. mes "[Apollo]";
  281. mes "Dan satu hal lagi,";
  282. mes "Saya juga membutuhkan ^00CE1410 buah Green Herb^000000,";
  283. mes "cobalah dapatkan semua bahan-bahannya.";
  284. next;
  285. mes "[Apollo]";
  286. mes "Oh iya... tolong juga perhatikan saudaraku jika persiapan mereka untuk";
  287. mes "menyambut hari raya selalu baik-baik saja.";
  288. mes "Baiklah, kita berjumpa lagi setelah kamu mendapatkan semua bahannya!";
  289. return;
  290.  
  291. OnNeedReq:
  292. mes "[Apollo]";
  293. //mes "... bahannya"; //! TODO: Missing text!
  294. mes "Apakah mungkin kamu kehilangan bahan-bahannya saat kamu menuju kemari?";
  295. mes "Tidak apa-apa... setidaknya kamu mencoba membantuku, terima kasih.";
  296. return;
  297. }
  298.  
  299. payon,152,98,5 script Lingo#IdulFitri 4_KID01,{
  300. if (lebaran2015 == 0) { // Percakapan biasa
  301. mes "[Lingo]";
  302. mes "Hmm, apakah saya sudah mengemas bahannya dengan baik?";
  303. mes "Hmmm~";
  304. mes "Ok, kelihatannya sudah cukup baik.";
  305. next;
  306. emotion ET_SURPRISE;
  307. mes "[Lingo]";
  308. mes "Eh?";
  309. mes "Saya sangat sibuk, sampai-sampai tidak menyadari kalau kamu sudah berdiri di samping.";
  310. mes "Saya mesti mengirimkan bahan membuat dish untuk perayaan hari raya";
  311. mes "ke kota ^FF6A00Prontera^000000.";
  312. mes "Kalau begitu, selamat bersenag-senang!";
  313. close;
  314. }
  315. else if (lebaran2015&2) { // Udah ngomong sama doi
  316. mes "[Lingo]";
  317. mes "Kamu belum pegi juga?";
  318. mes "Pergilah dan antarkan ^00CE1410 buah Meat^000000";
  319. mes "Yang telah saya berikan kepada saudaraku ^0000FFApollo^000000 di ^FF6A00Prontera^000000";
  320. mes "Terima kasih dan jagalah baik-baik.";
  321. close;
  322. }
  323. else if (lebaran2015&1) { // Proses
  324. mes "[Lingo]";
  325. mes "Kamu pasti "+strcharinfo(0)+"!";
  326. mes "Saya mendengar bahwa kamu akan mengunjungiku.";
  327. mes "Bawalah ini ^00CE1410 buah Meat^000000 untuk ^0000FFApollo^000000";
  328. mes "yang berada di ^FF6A00Prontera^000000";
  329. next;
  330. mes "[Lingo]";
  331. mes "Ini sangat penting buat kamu bawakan kepadanya";
  332. mes "semua bahan ^00CE1410 Meat^000000.";
  333. mes "Sering kali terjadi, bahan yang akan";
  334. mes "dikirimkan hilang.......";
  335. next;
  336. mes "[Lingo]";
  337. mes "Untuk itu,";
  338. mes "Untuk membantumu supaya tidak lapar saat dalam perjalanan,";
  339. mes "Saya akan memberikanmu ^00CE14Kartu Lebaran & Ketupat^000000.";
  340. mes "Terima kasih telah meluangkan waktu untuk membantu kami!";
  341. close2;
  342. lebaran2015 |= 2;
  343. getitem(517,10); // Meat
  344. getitem(583,1); // KETUPAT_
  345. end;
  346. }
  347. else { // Kelar vroh!
  348. mes "[Lingo]";
  349. mes "Hai, "+strcharinfo(0)+"!";
  350. mes "Saya melihat keinginan yang besar dari wajahmu!";
  351. mes " ^00CE14Semoga kamu selalu mendapat yang terbaik^000000.";
  352. close;
  353. }
  354. }
  355.  
  356. // NOTE: The coordinates are for old Izlude
  357. izlude,94,93,5 script Momo#IdulFitri 4_M_BIBI,{
  358. if (lebaran2015 == 0) { // Percakapan biasa
  359. mes "[Momo]";
  360. mes "Arghh, sibuk.. sibuk.";
  361. mes "Sejak saat itu pekerjaanku menjadi begitu banyak.";
  362. next;
  363. emotion ET_SURPRISE;
  364. mes "[Momo]";
  365. //mes "... di sini?"; //! TODO: Missing text!
  366. mes "Tidakkah saya terlihat begitu sibuk?";
  367. mes "Saya mesti mengirimkan bahan membuat dish untuk perayaan hari raya";
  368. mes "ke kota ^FF6A00Prontera^000000.";
  369. close;
  370. }
  371. else if (lebaran2015&4) { // Udah ngomong sama doi
  372. mes "[Momo]";
  373. mes "Hah? Apa kamu lupa untuk pergi kemana?";
  374. mes "Baiklah... antarkan ^00CE1410 buah Banana^000000";
  375. mes "Yang telah saya berikan kepada saudaraku ^0000FFApollo^000000 di ^FF6A00Prontera^000000";
  376. mes "Terima kasih dan jagalah baik-baik.";
  377. close;
  378. }
  379. else if (lebaran2015&1) { // Proses
  380. mes "[Momo]";
  381. mes "Ah ha, "+strcharinfo(0)+"~!";
  382. mes "Akhirnya kamu sampai di sini.";
  383. mes "Bawalah ini ^00CE1410 buah Banana^000000 untuk ^0000FFApollo^000000";
  384. mes "yang ada di ^FF6A00Prontera^000000";
  385. next;
  386. mes "[Momo]";
  387. mes "Ini sangat penting buat kamu bawakan kepadanya";
  388. mes "semua bahan ^00CE1410 buah Banana^000000.";
  389. mes "Jangan sampai memakannya bagaimanapun";
  390. mes "rasa lapar yang kamu dapati saat dalam perjalanan.";
  391. mes "Sangat berat buatku jika mendengarnya.";
  392. next;
  393. mes "[Momo]";
  394. mes "Jadi untuk mencegahnya,";
  395. mes "Saya menyiapkan sesuatu untuk dimakan,";
  396. mes "yaitu ^00CE14Kartu Lebaran & Ketupat^000000 !!";
  397. mes "Bawalah dan simpat sebaik-baiknya.";
  398. close2;
  399. lebaran2015 |= 4;
  400. getitem(513,10); // Banana
  401. getitem(583,1); // KETUPAT_
  402. end;
  403. }
  404. else { // Kelar vroh!
  405. mes "[Momo]";
  406. mes "Waahh! "+strcharinfo(0)+",";
  407. mes "kita berjumpa lagi!";
  408. mes "Pekerjaan kami bai-baik saja, terima kasih.";
  409. mes " ^00CE14Semoga kamu selalu dalam kebaikan^000000.";
  410. close;
  411. }
  412. }
  413.  
  414. alberta,175,138,3 script Sena#IdulFitri 4_M_DEBON,{
  415. if (lebaran2015 == 0) { // Percakapan biasa
  416. mes "[Sena]";
  417. mes "Wahhh.........";
  418. mes "Saya sangat sibuk!!";
  419. next;
  420. emotion ET_SURPRISE;
  421. mes "[Sena]";
  422. mes "Kyaa, kamu menakutiku.";
  423. mes "Mungkin akan terlihat seperti ini,";
  424. mes "tapi saya sedang melakukan sesuatu yang repot dengan hitungan.";
  425. mes "dari bahan-bahan yang akan dikirimkan ke kota ^FF6A00Prontera^000000.";
  426. mes "untuk merayakan pesta hari raya.";
  427. mes "Baiklah, selamat bersenang-senang........";
  428. close;
  429. }
  430. else if (lebaran2015&8) { // Udah ngomong sama doi
  431. mes "[Sena]";
  432. mes "Kenapa masih di sini?";
  433. mes "Saya harap ^00CE1410 buah Milk^000000 yang saya berikan";
  434. mes "sampai dengan selamat diantarkan ke saudaraku ^0000FFApollo^000000 di ^FF6A00Prontera^000000";
  435. mes "Safe Trip!";
  436. close;
  437. }
  438. else if (lebaran2015&1) { // Proses
  439. mes "[Sena]";
  440. mes "Apakah kamu... "+strcharinfo(0)+"?";
  441. mes "Akhirnya, kamu datang tepat saat saya membutuhkan.";
  442. mes "Bawalah ini ^00CE1410 buah Milk^000000 kepada ^0000FFApollo^000000";
  443. mes "yang ada di ^FF6A00Prontera^000000";
  444. next;
  445. mes "[Sena]";
  446. mes "Ini sangat penting buat kamu bawakan kepadanya";
  447. mes "semua bahan ^00CE1410 bahan Milk^000000.";
  448. mes "Di sana ada beberapa orang kehabisan bahan";
  449. mes "dari susu kami, jadi saya mengkhawatirkannya.......";
  450. mes "Bawalah bahan ini dan jangan sampai kamu meminumnya.";
  451. next;
  452. mes "[Sena]";
  453. mes "Untuk itu,";
  454. mes "Saya akan membekalimu sesuatu jika kamu lapar dalam perjalanan,";
  455. mes "ini adalah ^00CE14Kartu Lebaran & Ketupat^000000.";
  456. mes "Kalau begitu, selamat tinggal dan berhati-hatilah.";
  457. close2;
  458. lebaran2015 |= 8;
  459. getitem(519,10); // Milk
  460. getitem(583,1); // KETUPAT_
  461. end;
  462. }
  463. else { // Kelar vroh!
  464. mes "[Sena]";
  465. mes "Ah ha, apakah kamu "+strcharinfo(0)+"?";
  466. mes "Senang bertemu denganmu lagi!";
  467. mes "Saya sangat berterima kasih dengan apa yang telah kamu lakukan untuk membantu kami.";
  468. mes " ^00CE14Semoga kamu selalu dalam kebaikan^000000.";
  469. close;
  470. }
  471. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement