kafra.txt 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866
  1. //===== eAthena Script =======================================
  2. //= Kafra Script
  3. //===== By: ==================================================
  4. //= Lotsa People (1.0)
  5. //= Darlskies (1.1)
  6. //= Darkchild (1.2)
  7. //= Syrus22 (2.0)
  8. //= Syrus22 (2.1)
  9. //= Darkchild (2.2)
  10. //===== Current Version: =====================================
  11. //= 2.2
  12. //===== Compatible With: =====================================
  13. //= Any eAthena Version In Which functions work.
  14. //===== Description: =========================================
  15. //= All The Kafra's In Ro, Incl HQ
  16. //===== Additional Comments: =================================
  17. //= Darkskies did all the kafra points stuff.
  18. //= Syrus22 - I compltely rewrote the script pretty much except for
  19. //= the normal conversation text in the Kafra HQ NPCs.
  20. //= Syrus22 - I fixed the Special Reserve in the Kafra HQ to really
  21. //= give you items. I will add the Lottery Chances when I get
  22. //= full info on the prizes.
  23. //= Syrus22 - I will add a Louyang Kafra when I get better location info.
  24. //= Darkchild - Added Comodo
  25. //============================================================
  26. //**********************************************//
  27. //Actual Kafra NPCs //
  28. //**********************************************//
  29. //These will set the necessary variables for my //
  30. //functions to work. //
  31. //**********************************************//
  32. //---Orc Dungeon Kafra---
  33. gef_fild10.gat,73,340,4 script Kafra#orc1 115,{
  34. set @cutinpic$,"kafra_02";
  35. set @save,1;
  36. set @save1map$,"gef_fild10.gat";
  37. set @save1x,54;
  38. set @save1y,232;
  39. callfunc "kaframain";
  40. break;
  41. }
  42. //---Byalan Kafra---
  43. izlu2dun.gat,106,58,8 script Kafra 115,{
  44. if (class != Job_Novice) goto Lkafra;
  45. if((job_merchant_q==8) || (job_merchant_q==7)) goto JobMerQE8oE7;
  46. if((job_merchant_q==6) || (job_merchant_q==5)) goto JobMerQE6oE5;
  47. JobMerQE8oE7:
  48. if(countitem(Delivery_Message) != 0) goto JobMerQE8oE7Cont;
  49. JobMerQE8oE7Cont:
  50. menu "Excuse me.",M0;
  51. M0:
  52. mes "[Kafra]";
  53. mes "Yes?";
  54. cutin "kafra_03",255;
  55. close;
  56. JobMerQE6oE5:
  57. mes "[Kafra]";
  58. mes "Delivery fro the Merchant Guild?? Ah, Right! Yes! I almost forgot.";
  59. mes "Okay,Please put down here....";
  60. if((countitem(1081)==1) || (countitem(1082)==1) || (countitem(1083)==1)) goto MerBox123E1;
  61. mes ".... I think our orders are almost one Box of Oversized and Heavy....But you seem to carry it on without difficulty.";
  62. close;
  63. MerBox123E1:
  64. next;
  65. mes "[Kafra]";
  66. mes "Let me check its Serial numbers, I have to give the receipt to you anyhow.";
  67. if(nov_1_2_cos_c==7) goto JobMerQ2E7;
  68. if(nov_1_2_cos_c==8) goto JobMerQ2E8;
  69. next;
  70. mes "[Kafra]";
  71. mes "......? Excuse me! I think you gave me the wrong one.";
  72. mes "Our order should have the serial numbers as either of 3318702 or 3543625...";
  73. cutin "kafra_03",255;
  74. close;
  75. JobMerQ2E7:
  76. if(countitem(1081) !=0) goto MerBox1NE0;
  77. MerBox1NE0:
  78. mes "Um.... 3012685. Yes! This is the right one we ordered. Here, your receipt.";
  79. delitem 1081,1;
  80. getitem 1079,1;
  81. goto JobMerQ2Cont;
  82. JobMerQ2E8:
  83. if(countitem(1081) !=0) goto MerBox2NE0;
  84. MerBox2NE0:
  85. mes "Um.... 3543625. Yes! This is the right one we ordered. Here, your receipt.";
  86. delitem 1082,1;
  87. getitem 1080,1;
  88. goto JobMerQ2Cont;
  89. JobMerQ2Cont:
  90. if(job_merchant_q==6) goto JobMerQE6;
  91. getitem 3005,2;
  92. goto JobMerQ2Cont1;
  93. JobMerQE6:
  94. getitem 3005,2;
  95. goto JobMerQ2Cont1;
  96. JobMerQ2Cont1:
  97. getitem 3017,1;
  98. if(countitem(Delivery_Message) != 0) goto DevMsg;
  99. goto DevMsgCont;
  100. DevMsg:
  101. menu "This is from Mr. Mahnsoo...",M1;
  102. M1:
  103. delitem 1072,1;
  104. set nov_3_merchant,11;
  105. mes "[Kapra]";
  106. mes "Oh, my good Lord! Mr. Mansoo wrote me a Letter? Thank you, Thank you~";
  107. mes "I though he would send one one of these days, but I've never expected it would be so soon like this time~";
  108. goto DevMsgCont;
  109. DevMsgCont:
  110. next;
  111. mes "[Kafra]";
  112. mes "I really appreciate you for what you've done so far. This is my Small Gift for you to lay my heart.";
  113. mes "I hope you will help me next time.";
  114. set @TEMP,rand(2);
  115. goto R0;
  116. R0:
  117. if(@TEMP !=0) goto R1;
  118. getitem 513,3;
  119. cutin "kafra_03",255;
  120. close;
  121. R1:
  122. getitem 512,3;
  123. cutin "kafra_03",255;
  124. close;
  125. Lkafra:
  126. set @cutinpic$,"kafra_03";
  127. set @save,1;
  128. set @save1map$,"izlu2dun.gat";
  129. set @save1x,87;
  130. set @save1y,170;
  131. callfunc "kaframain";
  132. break;
  133. }
  134. //---Pyramids Kafra---
  135. moc_ruins.gat,61,156,5 script Kafra#pyr1 114,{
  136. set @cutinpic$,"kafra_04";
  137. set @save,1;
  138. set @save1map$,"moc_ruins.gat";
  139. set @save1x,41;
  140. set @save1y,141;
  141. callfunc "kaframain";
  142. break;
  143. }
  144. //---Northern Prontera Field Kafra---
  145. prt_fild01.gat,198,47,8 script Kafra#pfl1 112,{
  146. set @cutinpic$,"kafra_06";
  147. set @save,1;
  148. set @save1map$,"prt_fild01.gat";
  149. set @save1x,197;
  150. set @save1y,50;
  151. callfunc "kaframain";
  152. break;
  153. }
  154. //---Culvert Kafra---
  155. prt_fild05.gat,290,224,1 script Kafra#pfl2 114,{
  156. set @cutinpic$,"kafra_04";
  157. set @save,1;
  158. set @save1map$,"prt_fild05.gat";
  159. set @save1x,274;
  160. set @save1y,243;
  161. callfunc "kaframain";
  162. break;
  163. }
  164. //---In Alberta Kafras---
  165. alberta.gat,28,229,8 script Kafra#alb1 115,{
  166. set @cutinpic$,"kafra_02";
  167. set @save1map$,"alberta.gat";
  168. set @save1x,31;
  169. set @save1y,231;
  170. set @save2map$,"pay_fild03.gat";
  171. set @save2x,386;
  172. set @save2y,76;
  173. set @warps,4;
  174. set @warp1$,"Payon";
  175. set @warp1name$,"payon.gat";
  176. set @warp1x,69;
  177. set @warp1y,100;
  178. set @warp1zeny,1300;
  179. set @warp2$,"Prontera";
  180. set @warp2name$,"prontera.gat";
  181. set @warp2x,116;
  182. set @warp2y,75;
  183. set @warp2zeny,2100;
  184. set @warp3$,"Morocc";
  185. set @warp3name$,"morocc.gat";
  186. set @warp3x,156;
  187. set @warp3y,46;
  188. set @warp3zeny,2200;
  189. set @warp4$,"Comodo";
  190. set @warp4name$,"comodo.gat";
  191. set @warp4x,209;
  192. set @warp4y,143;
  193. set @warp4zeny,2400;
  194. set @kaflocations,1;
  195. set @location1x,113;
  196. set @location1y,60;
  197. set @special,1;
  198. callfunc "kaframain";
  199. break;
  200. }
  201. alberta.gat,113,60,5 script Kafra#alb2 112,{
  202. set @cutinpic$,"kafra_06";
  203. set @save,1;
  204. set @save1map$,"alberta.gat";
  205. set @save1x,117;
  206. set @save1y,57;
  207. set @warps,4;
  208. set @warp1$,"Payon";
  209. set @warp1name$,"payon.gat";
  210. set @warp1x,69;
  211. set @warp1y,100;
  212. set @warp1zeny,1300;
  213. set @warp2$,"Prontera";
  214. set @warp2name$,"prontera.gat";
  215. set @warp2x,116;
  216. set @warp2y,75;
  217. set @warp2zeny,2100;
  218. set @warp3$,"Morocc";
  219. set @warp3name$,"morocc.gat";
  220. set @warp3x,156;
  221. set @warp3y,46;
  222. set @warp3zeny,2200;
  223. set @warp4$,"Comodo";
  224. set @warp4name$,"comodo.gat";
  225. set @warp4x,209;
  226. set @warp4y,143;
  227. set @warp4zeny,2400;
  228. set @kaflocations,1;
  229. set @location1x,28;
  230. set @location1y,229;
  231. set @special,1;
  232. callfunc "kaframain";
  233. break;
  234. }
  235. //---Sunken Ship Kafra---
  236. alb2trea.gat,59,69,1 script Kafra#snk1 117,{
  237. set @cutinpic$,"kafra_03";
  238. set @save,1;
  239. set @save1map$,"alb2trea.gat";
  240. set @save1x,92;
  241. set @save1y,64;
  242. callfunc "kaframain";
  243. break;
  244. }
  245. //---In Al De Baran Kafra---
  246. aldebaran.gat,143,119,4 script Kafra#ald1 113,{
  247. set @cutinpic$,"kafra_05";
  248. set @save,1;
  249. set @save1map$,"aldebaran.gat";
  250. set @save1x,143;
  251. set @save1y,109;
  252. set @warps,3;
  253. set @warp1$,"Geffen";
  254. set @warp1name$,"geffen.gat";
  255. set @warp1x,120;
  256. set @warp1y,39;
  257. set @warp1zeny,1600;
  258. set @warp2$,"Mjolnir Dead Pit";
  259. set @warp2name$,"mjolnir_02.gat";
  260. set @warp2x,99;
  261. set @warp2y,351;
  262. set @warp2zeny,1700;
  263. set @warp3$,"Comodo";
  264. set @warp3name$,"comodo.gat";
  265. set @warp3x,209;
  266. set @warp3y,143;
  267. set @warp3zeny,2200;
  268. set @special,1;
  269. callfunc "kaframain";
  270. break;
  271. }
  272. //---In Geffen Kafras---
  273. geffen.gat,120,62,8 script Kafra#gef1 115,{
  274. set @cutinpic$,"kafra_03";
  275. set @save,1;
  276. set @save1map$,"geffen.gat";
  277. set @save1x,119;
  278. set @save1y,40;
  279. set @warps,5;
  280. set @warp1$,"Prontera";
  281. set @warp1name$,"prontera.gat";
  282. set @warp1x,116;
  283. set @warp1y,75;
  284. set @warp1zeny,1400;
  285. set @warp2$,"Izlude";
  286. set @warp2name$,"izlude.gat";
  287. set @warp2x,91;
  288. set @warp2y,105;
  289. set @warp2zeny,1800;
  290. set @warp3$,"Al De Baran";
  291. set @warp3name$,"aldebaran.gat";
  292. set @warp3x,143;
  293. set @warp3y,110;
  294. set @warp3zeny,2100;
  295. set @warp4$,"Morocc";
  296. set @warp4name$,"morocc.gat";
  297. set @warp4x,156;
  298. set @warp4y,46;
  299. set @warp4zeny,2200;
  300. set @warp5$,"Comodo";
  301. set @warp5name$,"comodo.gat";
  302. set @warp5x,209;
  303. set @warp5y,143;
  304. set @warp5zeny,2400;
  305. set @kaflocations,1;
  306. set @location1x,203;
  307. set @location1y,123;
  308. set @special,1;
  309. callfunc "kaframain";
  310. break;
  311. }
  312. geffen.gat,203,123,3 script Kafra#gef2 114,{
  313. set @cutinpic$,"kafra_04";
  314. set @save1map$,"geffen.gat";
  315. set @save1x,200;
  316. set @save1y,124;
  317. set @save2map$,"gef_fild00.gat";
  318. set @save2x,51;
  319. set @save2y,194;
  320. set @warps,5;
  321. set @warp1$,"Prontera";
  322. set @warp1name$,"prontera.gat";
  323. set @warp1x,116;
  324. set @warp1y,75;
  325. set @warp1zeny,1400;
  326. set @warp2$,"Izlude";
  327. set @warp2name$,"izlude.gat";
  328. set @warp2x,91;
  329. set @warp2y,105;
  330. set @warp2zeny,1800;
  331. set @warp3$,"Al De Baran";
  332. set @warp3name$,"aldebaran.gat";
  333. set @warp3x,143;
  334. set @warp3y,110;
  335. set @warp3zeny,2100;
  336. set @warp4$,"Morocc";
  337. set @warp4name$,"morocc.gat";
  338. set @warp4x,156;
  339. set @warp4y,46;
  340. set @warp4zeny,2200;
  341. set @warp5$,"Comodo";
  342. set @warp5name$,"comodo.gat";
  343. set @warp5x,209;
  344. set @warp5y,143;
  345. set @warp5zeny,2400;
  346. set @kaflocations,1;
  347. set @location1x,120;
  348. set @location1y,62;
  349. set @special,1;
  350. callfunc "kaframain";
  351. break;
  352. }
  353. //---In Izlude Kafra---
  354. izlude.gat,124,115,6 script Kafra#izl1 117,{
  355. set @cutinpic$,"kafra_01";
  356. set @save1map$,"izlude.gat";
  357. set @save1x,128;
  358. set @save1y,111;
  359. set @save2map$,"prt_fild08.gat";
  360. set @save2x,349;
  361. set @save2y,202;
  362. set @warps,4;
  363. set @warp1$,"Prontera";
  364. set @warp1name$,"prontera.gat";
  365. set @warp1x,116;
  366. set @warp1y,75;
  367. set @warp1zeny,900;
  368. set @warp2$,"Payon";
  369. set @warp2name$,"payon.gat";
  370. set @warp2x,69;
  371. set @warp2y,100;
  372. set @warp2zeny,1700;
  373. set @warp3$,"Geffen";
  374. set @warp3name$,"geffen.gat";
  375. set @warp3x,120;
  376. set @warp3y,39;
  377. set @warp3zeny,1800;
  378. set @warp4$,"Comodo";
  379. set @warp4name$,"comodo.gat";
  380. set @warp4x,209;
  381. set @warp4y,143;
  382. set @warp4zeny,2000;
  383. set @special,1;
  384. callfunc "kaframain";
  385. break;
  386. }
  387. //---In Morocc Kafras---
  388. morocc.gat,156,97,4 script Kafra#moc1 115,{
  389. set @cutinpic$,"kafra_03";
  390. set @save,1;
  391. set @save1map$,"morocc.gat";
  392. set @save1x,156;
  393. set @save1y,46;
  394. set @warps,5;
  395. set @warp1$,"Prontera";
  396. set @warp1name$,"prontera.gat";
  397. set @warp1x,116;
  398. set @warp1y,75;
  399. set @warp1zeny,1800;
  400. set @warp2$,"Payon";
  401. set @warp2name$,"payon.gat";
  402. set @warp2x,69;
  403. set @warp2y,100;
  404. set @warp2zeny,1800;
  405. set @warp3$,"Alberta";
  406. set @warp3name$,"alberta.gat";
  407. set @warp3x,117;
  408. set @warp3y,56;
  409. set @warp3zeny,2200;
  410. set @warp4$,"Geffen";
  411. set @warp4name$,"geffen.gat";
  412. set @warp4x,120;
  413. set @warp4y,39;
  414. set @warp4zeny,2200;
  415. set @warp5$,"Comodo";
  416. set @warp5name$,"comodo.gat";
  417. set @warp5x,209;
  418. set @warp5y,143;
  419. set @warp5zeny,1800;
  420. set @kaflocations,1;
  421. set @location1x,163;
  422. set @location1y,260;
  423. set @special,1;
  424. callfunc "kaframain";
  425. break;
  426. }
  427. morocc.gat,163,260,4 script Kafra 114,{
  428. set @cutinpic$,"kafra_04";
  429. set @save1map$,"morocc.gat";
  430. set @save1x,187;
  431. set @save1y,281;
  432. set @save2map$,"moc_fild07.gat";
  433. set @save2x,212;
  434. set @save2y,30;
  435. set @warps,5;
  436. set @warp1$,"Prontera";
  437. set @warp1name$,"prontera.gat";
  438. set @warp1x,116;
  439. set @warp1y,75;
  440. set @warp1zeny,1800;
  441. set @warp2$,"Payon";
  442. set @warp2name$,"payon.gat";
  443. set @warp2x,69;
  444. set @warp2y,100;
  445. set @warp2zeny,1800;
  446. set @warp3$,"Alberta";
  447. set @warp3name$,"alberta.gat";
  448. set @warp3x,117;
  449. set @warp3y,56;
  450. set @warp3zeny,2200;
  451. set @warp4$,"Geffen";
  452. set @warp4name$,"geffen.gat";
  453. set @warp4x,120;
  454. set @warp4y,39;
  455. set @warp4zeny,2200;
  456. set @warp5$,"Comodo";
  457. set @warp5name$,"comodo.gat";
  458. set @warp5x,209;
  459. set @warp5y,143;
  460. set @warp5zeny,1800;
  461. set @kaflocations,1;
  462. set @location1x,156;
  463. set @location1y,97;
  464. set @special,1;
  465. callfunc "kaframain";
  466. break;
  467. }
  468. //---In Payon Kafra---
  469. payon.gat,99,116,4 script Kafra#pay1 113,{
  470. set @cutinpic$,"kafra_05";
  471. set @save1map$,"payon.gat";
  472. set @save1x,69;
  473. set @save1y,100;
  474. set @save2map$,"pay_fild01.gat";
  475. set @save2x,340;
  476. set @save2y,347;
  477. set @warps,4;
  478. set @warp1$,"Alberta";
  479. set @warp1name$,"alberta.gat";
  480. set @warp1x,117;
  481. set @warp1y,56;
  482. set @warp1zeny,1300;
  483. set @warp2$,"Prontera";
  484. set @warp2name$,"prontera.gat";
  485. set @warp2x,116;
  486. set @warp2y,72;
  487. set @warp2zeny,1800;
  488. set @warp3$,"Morocc";
  489. set @warp3name$,"morocc.gat";
  490. set @warp3x,156;
  491. set @warp3y,46;
  492. set @warp3zeny,1800;
  493. set @warp4$,"Comodo";
  494. set @warp4name$,"comodo.gat";
  495. set @warp4x,209;
  496. set @warp4y,143;
  497. set @warp4zeny,2000;
  498. set @special,1;
  499. callfunc "kaframain";
  500. break;
  501. }
  502. //---Archer Village Kafra---
  503. pay_arche.gat,55,123,8 script Kafra 117,{
  504. set @cutinpic$,"kafra_01";
  505. set @save,1;
  506. set @save1map$,"pay_arche.gat";
  507. set @save1x,49;
  508. set @save1y,144;
  509. callfunc "kaframain";
  510. break;
  511. }
  512. //---In Prontera Kafras---
  513. prontera.gat,29,207,6 script Kafra#pro2 113,{
  514. set @cutinpic$,"kafra_05";
  515. set @warps,6;
  516. set @warp1$,"Izlude";
  517. set @warp1name$,"izlude.gat";
  518. set @warp1x,91;
  519. set @warp1y,105;
  520. set @warp1zeny,900;
  521. set @warp2$,"Geffen";
  522. set @warp2name$,"geffen.gat";
  523. set @warp2x,120;
  524. set @warp2y,39;
  525. set @warp2zeny,1400;
  526. set @warp3$,"Payon";
  527. set @warp3name$,"payon.gat";
  528. set @warp3x,69;
  529. set @warp3y,100;
  530. set @warp3zeny,1700;
  531. set @warp4$,"Morocc";
  532. set @warp4name$,"morocc.gat";
  533. set @warp4x,156;
  534. set @warp4y,46;
  535. set @warp4zeny,1800;
  536. set @warp5$,"Orc Dungeon";
  537. set @warp5name$,"gef_fild10.gat";
  538. set @warp5x,52;
  539. set @warp5y,326;
  540. set @warp5zeny,1700;
  541. set @warp6$,"Comodo";
  542. set @warp6name$,"comodo.gat";
  543. set @warp6x,209;
  544. set @warp6y,143;
  545. set @warp6zeny,2000;
  546. set @save1map$,"prontera.gat";
  547. set @save1x,33;
  548. set @save1y,208;
  549. set @save2map$,"prt_fild05.gat";
  550. set @save2x,367;
  551. set @save2y,205;
  552. set @kaflocations,1;
  553. set @location1x,146;
  554. set @location1y,89;
  555. set @location2x,282;
  556. set @location2y,200;
  557. set @location3x,151;
  558. set @location3y,29;
  559. set @special,1;
  560. callfunc "kaframain";
  561. break;
  562. }
  563. prontera.gat,146,89,6 script Kafra#pro1 115,{
  564. set @cutinpic$,"kafra_03";
  565. set @warps,6;
  566. set @warp1$,"Izlude";
  567. set @warp1name$,"izlude.gat";
  568. set @warp1x,91;
  569. set @warp1y,105;
  570. set @warp1zeny,900;
  571. set @warp2$,"Geffen";
  572. set @warp2name$,"geffen.gat";
  573. set @warp2x,120;
  574. set @warp2y,39;
  575. set @warp2zeny,1400;
  576. set @warp3$,"Payon";
  577. set @warp3name$,"payon.gat";
  578. set @warp3x,69;
  579. set @warp3y,100;
  580. set @warp3zeny,1700;
  581. set @warp4$,"Morocc";
  582. set @warp4name$,"morocc.gat";
  583. set @warp4x,156;
  584. set @warp4y,46;
  585. set @warp4zeny,1800;
  586. set @warp5$,"Orc Dungeon";
  587. set @warp5name$,"gef_fild10.gat";
  588. set @warp5x,52;
  589. set @warp5y,326;
  590. set @warp5zeny,1700;
  591. set @warp6$,"Comodo";
  592. set @warp6name$,"comodo.gat";
  593. set @warp6x,209;
  594. set @warp6y,143;
  595. set @warp6zeny,2000;
  596. set @save,1;
  597. set @save1map$,"prontera.gat";
  598. set @save1x,116;
  599. set @save1y,73;
  600. set @kaflocations,1;
  601. set @location1x,29;
  602. set @location1y,207;
  603. set @location2x,282;
  604. set @location2y,200;
  605. set @location3x,151;
  606. set @location3y,29;
  607. set @special,1;
  608. callfunc "kaframain";
  609. break;
  610. }
  611. prontera.gat,282,199,6 script Kafra 115,{
  612. set @cutinpic$,"kafra_03";
  613. set @warps,6;
  614. set @warp1$,"Izlude";
  615. set @warp1name$,"izlude.gat";
  616. set @warp1x,91;
  617. set @warp1y,105;
  618. set @warp1zeny,900;
  619. set @warp2$,"Geffen";
  620. set @warp2name$,"geffen.gat";
  621. set @warp2x,120;
  622. set @warp2y,39;
  623. set @warp2zeny,1400;
  624. set @warp3$,"Payon";
  625. set @warp3name$,"payon.gat";
  626. set @warp3x,69;
  627. set @warp3y,100;
  628. set @warp3zeny,1700;
  629. set @warp4$,"Morocc";
  630. set @warp4name$,"morocc.gat";
  631. set @warp4x,156;
  632. set @warp4y,46;
  633. set @warp4zeny,1800;
  634. set @warp5$,"Orc Dungeon";
  635. set @warp5name$,"gef_fild10.gat";
  636. set @warp5x,52;
  637. set @warp5y,326;
  638. set @warp5zeny,1700;
  639. set @warp6$,"Comodo";
  640. set @warp6name$,"comodo.gat";
  641. set @warp6x,209;
  642. set @warp6y,143;
  643. set @warp6zeny,2000;
  644. set @save,1;
  645. set @save1map$,"prontera.gat";
  646. set @save1x,117;
  647. set @save1y,73;
  648. set @kaflocations,1;
  649. set @location1x,29;
  650. set @location1y,207;
  651. set @location2x,146;
  652. set @location2y,89;
  653. set @location3x,151;
  654. set @location3y,29;
  655. set @special,1;
  656. callfunc "kaframain";
  657. break;
  658. }
  659. prontera.gat,151,29,8 script Kafra 115,{
  660. set @cutinpic$,"kafra_03";
  661. set @warps,6;
  662. set @warp1$,"Izlude";
  663. set @warp1name$,"izlude.gat";
  664. set @warp1x,91;
  665. set @warp1y,105;
  666. set @warp1zeny,900;
  667. set @warp2$,"Geffen";
  668. set @warp2name$,"geffen.gat";
  669. set @warp2x,120;
  670. set @warp2y,39;
  671. set @warp2zeny,1400;
  672. set @warp3$,"Payon";
  673. set @warp3name$,"payon.gat";
  674. set @warp3x,69;
  675. set @warp3y,100;
  676. set @warp3zeny,1700;
  677. set @warp4$,"Morocc";
  678. set @warp4name$,"morocc.gat";
  679. set @warp4x,156;
  680. set @warp4y,46;
  681. set @warp4zeny,1800;
  682. set @warp5$,"Orc Dungeon";
  683. set @warp5name$,"gef_fild10.gat";
  684. set @warp5x,52;
  685. set @warp5y,326;
  686. set @warp5zeny,1700;
  687. set @warp6$,"Comodo";
  688. set @warp6name$,"comodo.gat";
  689. set @warp6x,209;
  690. set @warp6y,143;
  691. set @warp6zeny,2000;
  692. set @save1map$,"prontera.gat";
  693. set @save1x,150;
  694. set @save1y,33;
  695. set @save2map$,"prt_fild08.gat";
  696. set @save2x,170;
  697. set @save2y,369;
  698. set @kaflocations,1;
  699. set @location1x,29;
  700. set @location1y,207;
  701. set @location2x,146;
  702. set @location2y,89;
  703. set @location3x,282;
  704. set @location3y,199;
  705. set @special,1;
  706. callfunc "kaframain";
  707. break;
  708. }
  709. //---In Yuno Kafras---
  710. yuno.gat,328,108,6 script Kafra 117,{
  711. set @cutinpic$,"kafra_02";
  712. set @save,1;
  713. set @save1map$,"yuno.gat";
  714. set @save1x,332;
  715. set @save1y,107;
  716. set @warps,4;
  717. set @warp1$,"Izlude";
  718. set @warp1name$,"izlude.gat";
  719. set @warp1x,91;
  720. set @warp1y,105;
  721. set @warp1zeny,900;
  722. set @warp2$,"Geffen";
  723. set @warp2name$,"geffen.gat";
  724. set @warp2x,120;
  725. set @warp2y,39;
  726. set @warp2zeny,2100;
  727. set @warp3$,"Payon";
  728. set @warp3name$,"payon.gat";
  729. set @warp3x,69;
  730. set @warp3y,100;
  731. set @warp3zeny,2100;
  732. set @warp4$,"Morocc";
  733. set @warp4name$,"morocc.gat";
  734. set @warp4x,156;
  735. set @warp4y,46;
  736. set @warp4zeny,2100;
  737. set @kafralocations,1;
  738. set @location1x,151;
  739. set @location1y,87;
  740. set @location2x,278;
  741. set @location2y,221;
  742. set @special,1;
  743. callfunc "kaframain";
  744. break;
  745. }
  746. yuno.gat,151,87,4 script Kafra 115,{
  747. set @cutinpic$,"kafra_02";
  748. set @save,1;
  749. set @save1map$,"yuno.gat";
  750. set @save1x,154;
  751. set @save1y,75;
  752. set @warps,4;
  753. set @warp1$,"Izlude";
  754. set @warp1name$,"izlude.gat";
  755. set @warp1x,91;
  756. set @warp1y,105;
  757. set @warp1zeny,900;
  758. set @warp2$,"Geffen";
  759. set @warp2name$,"geffen.gat";
  760. set @warp2x,120;
  761. set @warp2y,39;
  762. set @warp2zeny,2100;
  763. set @warp3$,"Payon";
  764. set @warp3name$,"payon.gat";
  765. set @warp3x,69;
  766. set @warp3y,100;
  767. set @warp3zeny,2100;
  768. set @warp4$,"Morocc";
  769. set @warp4name$,"morocc.gat";
  770. set @warp4x,156;
  771. set @warp4y,46;
  772. set @warp4zeny,2100;
  773. set @kafralocations,1;
  774. set @location1x,328;
  775. set @location1y,108;
  776. set @location2x,278;
  777. set @location2y,221;
  778. set @special,1;
  779. callfunc "kaframain";
  780. break;
  781. }
  782. yuno.gat,278,221,6 script Kafra 117,{
  783. set @cutinpic$,"kafra_02";
  784. set @save,1;
  785. set @save1map$,"yuno.gat";
  786. set @save1x,332;
  787. set @save1y,107;
  788. set @warps,4;
  789. set @warp1$,"Izlude";
  790. set @warp1name$,"izlude.gat";
  791. set @warp1x,91;
  792. set @warp1y,105;
  793. set @warp1zeny,900;
  794. set @warp2$,"Geffen";
  795. set @warp2name$,"geffen.gat";
  796. set @warp2x,120;
  797. set @warp2y,39;
  798. set @warp2zeny,2100;
  799. set @warp3$,"Payon";
  800. set @warp3name$,"payon.gat";
  801. set @warp3x,69;
  802. set @warp3y,100;
  803. set @warp3zeny,2100;
  804. set @warp4$,"Morocc";
  805. set @warp4name$,"morocc.gat";
  806. set @warp4x,156;
  807. set @warp4y,46;
  808. set @warp4zeny,2100;
  809. set @kafralocations,1;
  810. set @location1x,328;
  811. set @location1y,108;
  812. set @location2x,151;
  813. set @location2y,87;
  814. set @special,1;
  815. callfunc "kaframain";
  816. break;
  817. }
  818. //---In Umbala Kafra---
  819. umbala.gat,128,133,4 script Kafra 115,{
  820. set @cutinpic$,"kafra_02";
  821. set @save,1;
  822. set @save1map$,"umbala.gat";
  823. set @save1x,126;
  824. set @save1y,131;
  825. set @warps,4;
  826. set @warp1$,"Izlude";
  827. set @warp1name$,"izlude.gat";
  828. set @warp1x,91;
  829. set @warp1y,105;
  830. set @warp1zeny,900;
  831. set @warp2$,"Geffen";
  832. set @warp2name$,"geffen.gat";
  833. set @warp2x,120;
  834. set @warp2y,39;
  835. set @warp2zeny,2100;
  836. set @warp3$,"Payon";
  837. set @warp3name$,"payon.gat";
  838. set @warp3x,69;
  839. set @warp3y,100;
  840. set @warp3zeny,2100;
  841. set @warp4$,"Morocc";
  842. set @warp4name$,"morocc.gat";
  843. set @warp4x,156;
  844. set @warp4y,46;
  845. set @warp4zeny,2100;
  846. set @special,1;
  847. callfunc "kaframain";
  848. break;
  849. }
  850. //---In Gonryun Kafra---
  851. //Note: Gave this Kafra the same warps as Umbala and Yuno till I get the
  852. //real warp information.
  853. gonryun.gat,159,122,4 script Kafra 116,{
  854. set @cutinpic$,"kafra_02";
  855. set @save,1;
  856. set @save1map$,"gonryun.gat";
  857. set @save1x,160;
  858. set @save1y,62;
  859. set @warps,4;
  860. set @warp1$,"Izlude";
  861. set @warp1name$,"izlude.gat";
  862. set @warp1x,91;
  863. set @warp1y,105;
  864. set @warp1zeny,900;
  865. set @warp2$,"Geffen";
  866. set @warp2name$,"geffen.gat";
  867. set @warp2x,120;
  868. set @warp2y,39;
  869. set @warp2zeny,2100;
  870. set @warp3$,"Payon";
  871. set @warp3name$,"payon.gat";
  872. set @warp3x,69;
  873. set @warp3y,100;
  874. set @warp3zeny,2100;
  875. set @warp4$,"Morocc";
  876. set @warp4name$,"morocc.gat";
  877. set @warp4x,156;
  878. set @warp4y,46;
  879. set @warp4zeny,2100;
  880. set @special,1;
  881. callfunc "kaframain";
  882. break;
  883. }
  884. //---Comodo---
  885. comodo.gat,166,163,3 script Kafra 721,{
  886. set @cutinpic$,"kafra_02";
  887. set @save,1;
  888. set @save1map$,"comodo.gat";
  889. set @save1x,188;
  890. set @save1y,148;
  891. set @warps,2;
  892. set @warp1$,"Morroc";
  893. set @warp1name$,"morocc.gat";
  894. set @warp1x,156;
  895. set @warp1y,46;
  896. set @warp1pay,2400;
  897. set @warp2$,"Geffen";
  898. set @warp2name$,"geffen.gat";
  899. set @warp2x,120;
  900. set @warp2y,39;
  901. set @warp2zeny,2100;
  902. set @special,1;
  903. callfunc "kaframain";
  904. break;
  905. }
  906. //**********************************************//
  907. //Kafra Main //
  908. //**********************************************//
  909. //The main kafra script. This will call the //
  910. //necessary functions from the rest of the //
  911. //script. //
  912. //**********************************************//
  913. function script kaframain -1,{
  914. cutin @cutinpic$,2;
  915. mes "[Kafra Employee]";
  916. mes "Welcome to Kafra Corporation. The Kafra services are always by your side.";
  917. mes "How may I assist you?";
  918. next;
  919. if ((@warps > 0) && (@special > 0)) goto Lallmenu;
  920. if ((@warps > 0) && (@special == 0)) goto Lwarpmenu;
  921. if (@warps == 0) goto Lnowarpmenu;
  922. Lallmenu:
  923. menu "Save",Lsave,"Use Storage",Lstorage,"Use Teleport Service",Lwarp,"Rent a Cart",Lcart,"Check Other Information",Lother,"Cancel",Lcancel;
  924. Lwarpmenu:
  925. menu "Save",Lsave,"Use Storage",Lstorage,"Use Teleport Service",Lwarp,"Rent a Cart",Lcart,"Cancel",Lcancel;
  926. Lnowarpmenu:
  927. menu "Save",Lsave,"Use Storage",Lstorage,"Rent a Cart",Lcart,"Cancel",Lcancel;
  928. Lsave:
  929. callfunc "kafrasave";
  930. break;
  931. Lstorage:
  932. callfunc "kafrastorage";
  933. break;
  934. Lwarp:
  935. callfunc "kafrawarps";
  936. break;
  937. Lcart:
  938. callfunc "kafracart";
  939. break;
  940. Lother:
  941. callfunc "kafrainfo";
  942. break;
  943. Lcancel:
  944. callfunc "kafraend";
  945. break;
  946. }
  947. //**********************************************//
  948. //Kafra Save //
  949. //**********************************************//
  950. //This will handle the save function for all the//
  951. //kafras. //
  952. //**********************************************//
  953. function script kafrasave -1,{
  954. if (@save == 1) goto Lsavein;
  955. mes "[Kafra]";
  956. mes "Where would you like to save?";
  957. next;
  958. menu "Save Outside City",Lsaveout,"Save Inside City",Lsavein;
  959. Lsavein:
  960. savepoint @save1map$,@save1x,@save1y;
  961. mes "[Kafra]";
  962. mes "Your respawn point has been saved. Thank you.";
  963. callfunc "kafraend";
  964. break;
  965. Lsaveout:
  966. savepoint @save2map$,@save2x,@save2y;
  967. mes "[Kafra]";
  968. mes "Your respawn point has been saved. Thank you.";
  969. callfunc "kafraend";
  970. break;
  971. }
  972. //**********************************************//
  973. //Kafra Storage //
  974. //**********************************************//
  975. //This will handle the storage functions for //
  976. //all the kafras. //
  977. //**********************************************//
  978. function script kafrastorage -1,{
  979. if (getskilllv(1) < 6) goto NeedJobLevel;
  980. if (Zeny < 30) goto NeedZenys;
  981. set specialreserve,specialreserve + 30;
  982. set Zeny, Zeny - 30;
  983. mes "[Kafra]";
  984. mes "Ok let me just open your storage for you.";
  985. openstorage;
  986. callfunc "kafraend";
  987. break;
  988. NeedJobLevel:
  989. mes "[Kafra]";
  990. mes "I'm sorry but you must have Basic Skill 6 to use storage.";
  991. callfunc "kafraend";
  992. break;
  993. NeedZenys:
  994. mes "[Kafra]";
  995. mes "I'm sorry but you are short on Zeny.";
  996. callfunc "kafraend";
  997. break;
  998. }
  999. //**********************************************//
  1000. //Kafra Warps //
  1001. //**********************************************//
  1002. //This will handle all the actual warping and //
  1003. //the payment of Zeny //
  1004. //**********************************************//
  1005. function script kafrawarps -1,{
  1006. mes "[Kafra]";
  1007. mes "Please choose your destination.";
  1008. next;
  1009. if (@warps == 7) goto L7;
  1010. if (@warps == 6) goto L6;
  1011. if (@warps == 5) goto L5;
  1012. if (@warps == 4) goto L4;
  1013. if (@warps == 3) goto L3;
  1014. if (@warps == 2) goto L2;
  1015. L2:
  1016. menu @warp1$ + " -> " + @warp1zeny,Lwarp1,@warp2$ + " -> " + @warp2zeny,Lwarp2,"Cancel",Lcancel;
  1017. L3:
  1018. menu @warp1$ + " -> " + @warp1zeny,Lwarp1,@warp2$ + " -> " + @warp2zeny,Lwarp2,@warp3$ + " -> " + @warp3zeny,Lwarp3,"Cancel",Lcancel;
  1019. L4:
  1020. menu @warp1$ + " -> " + @warp1zeny,Lwarp1,@warp2$ + " -> " + @warp2zeny,Lwarp2,@warp3$ + " -> " + @warp3zeny,Lwarp3,@warp4$ + " -> " + @warp4zeny,Lwarp4,"Cancel",Lcancel;
  1021. L5:
  1022. menu @warp1$ + " -> " + @warp1zeny,Lwarp1,@warp2$ + " -> " + @warp2zeny,Lwarp2,@warp3$ + " -> " + @warp3zeny,Lwarp3,@warp4$ + " -> " + @warp4zeny,Lwarp4,@warp5$ + " -> " + @warp5zeny,Lwarp5,"Cancel",Lcancel;
  1023. L6:
  1024. menu @warp1$ + " -> " + @warp1zeny,Lwarp1,@warp2$ + " -> " + @warp2zeny,Lwarp2,@warp3$ + " -> " + @warp3zeny,Lwarp3,@warp4$ + " -> " + @warp4zeny,Lwarp4,@warp5$ + " -> " + @warp5zeny,Lwarp5,@warp6$ + " -> " + @warp6zeny,Lwarp6,"Cancel",Lcancel;
  1025. L7:
  1026. menu @warp1$ + " -> " + @warp1zeny,Lwarp1,@warp2$ + " -> " + @warp2zeny,Lwarp2,@warp3$ + " -> " + @warp3zeny,Lwarp3,@warp4$ + " -> " + @warp4zeny,Lwarp4,@warp5$ + " -> " + @warp5zeny,Lwarp5,@warp6$ + " -> " + @warp6zeny,Lwarp6,@warp7$ + " -> " + @warp7zeny,Lwarp7,"Cancel",Lcancel;
  1027. Lwarp1:
  1028. if (Zeny < @warp1zeny) goto Lneedzeny;
  1029. set specialreserve,specialreserve + @warp1zeny;
  1030. set Zeny,Zeny - @warp1zeny;
  1031. warp @warp1name$,@warp1x,@warp1y;
  1032. set @end,1;
  1033. callfunc "kafraend";
  1034. break;
  1035. Lwarp2:
  1036. if (Zeny < @warp2zeny) goto Lneedzeny;
  1037. set specialreserve,specialreserve + @warp2zeny;
  1038. set Zeny,Zeny - @warp2zeny;
  1039. warp @warp2name$,@warp2x,@warp2y;
  1040. set @end,1;
  1041. callfunc "kafraend";
  1042. break;
  1043. Lwarp3:
  1044. if (Zeny < @warp3zeny) goto Lneedzeny;
  1045. set specialreserve,specialreserve + @warp3zeny;
  1046. set Zeny,Zeny - @warp3zeny;
  1047. warp @warp3name$,@warp3x,@warp3y;
  1048. set @end,1;
  1049. callfunc "kafraend";
  1050. break;
  1051. Lwarp4:
  1052. if (Zeny < @warp4zeny) goto Lneedzeny;
  1053. set specialreserve,specialreserve + @warp4zeny;
  1054. set Zeny,Zeny - @warp4zeny;
  1055. warp @warp4name$,@warp4x,@warp4y;
  1056. set @end,1;
  1057. callfunc "kafraend";
  1058. break;
  1059. Lwarp5:
  1060. if (Zeny < @warp5zeny) goto Lneedzeny;
  1061. set specialreserve,specialreserve + @warp5zeny;
  1062. set Zeny,Zeny - @warp5zeny;
  1063. warp @warp5name$,@warp5x,@warp5y;
  1064. set @end,1;
  1065. callfunc "kafraend";
  1066. break;
  1067. Lwarp6:
  1068. if (Zeny < @warp6zeny) goto Lneedzeny;
  1069. set specialreserve,specialreserve + @warp6zeny;
  1070. set Zeny,Zeny - @warp6zeny;
  1071. warp @warp6name$,@warp6x,@warp6y;
  1072. set @end,1;
  1073. callfunc "kafraend";
  1074. break;
  1075. Lwarp7:
  1076. if (Zeny < @warp7zeny) goto Lneedzeny;
  1077. set specialreserve,specialreserve + @warp7zeny;
  1078. set Zeny,Zeny - @warp7zeny;
  1079. warp @warp7name$,@warp7x,@warp7y;
  1080. set @end,1;
  1081. callfunc "kafraend";
  1082. break;
  1083. Lneedzeny:
  1084. mes "[Kafra]";
  1085. mes "I'm sorry you don't have the necessary amount of zeny.";
  1086. callfunc "kafraend";
  1087. break;
  1088. Lcancel:
  1089. mes "[Kafra]";
  1090. mes "Ok, Come again soon.";
  1091. callfunc "kafraend";
  1092. break;
  1093. }
  1094. //**********************************************//
  1095. //Kafra Cart //
  1096. //**********************************************//
  1097. //This will handle the cart rental function for //
  1098. //all the Kafras. //
  1099. //**********************************************//
  1100. function script kafracart -1,{
  1101. if ((class == Job_Merchant) || (class == Job_Blacksmith) || (class == Job_Alchem) || (class == Job_Merchant_High) || (class == Job_Whitesmith) || (class == Job_Creator)) goto Lrentcart;
  1102. mes "[Kafra]";
  1103. mes "Sorry this service is only provided for Merchant classes.";
  1104. callfunc "kafraend";
  1105. break;
  1106. Lrentcart:
  1107. if (getskilllv(39) < 1) goto Lnopush;
  1108. mes "[Kafra]";
  1109. mes "The cart rental fee is 800 zeny. Do you want to rent a cart?";
  1110. next;
  1111. menu "Rent a Cart",Lrent,"Cancel",Lcancel;
  1112. Lrent:
  1113. if (Zeny < 800) goto Lneedzeny;
  1114. set specialreserve,specialreserve + 800;
  1115. set Zeny,Zeny - 800;
  1116. setcart;
  1117. mes "[Kafra]";
  1118. mes "There ya go...";
  1119. callfunc "kafraend";
  1120. break;
  1121. Lnopush:
  1122. mes "[Kafra]";
  1123. mes "Sorry but you must have at least ^ff0000Pushcart^000000 level 1.";
  1124. callfunc "kafraend";
  1125. break;
  1126. Lneedzeny:
  1127. mes "[Kafra]";
  1128. mes "Sorry but you don't have the zeny.";
  1129. callfunc "kafraend";
  1130. break;
  1131. Lcancel:
  1132. mes "[Kafra]";
  1133. mes "Ok. Goodbye then";
  1134. callfunc "kafraend";
  1135. break;
  1136. }
  1137. //**********************************************//
  1138. //Kafra Information //
  1139. //**********************************************//
  1140. //This will handle the extra Kafra functions //
  1141. //such as your kafra points and the locations of//
  1142. //other kafras. //
  1143. //**********************************************//
  1144. function script kafrainfo -1,{
  1145. if (@kaflocations == 1) goto Lfullmenu;
  1146. menu "Check Special Reserve Points",Lreserve,"Cancel",Lcancel;
  1147. Lfullmenu:
  1148. menu "Check Special Reserve Points",Lreserve,"Location Tip",Llocation,"Cancel",Lcancel;
  1149. Lreserve:
  1150. mes "[Kafra]";
  1151. mes strcharinfo(0) + ", you have accumulated " + specialreserve + " Special Reserve Points.";
  1152. next;
  1153. mes "[Kafra]";
  1154. mes "You can redeem your points at our Headquarters in Al De Baran.";
  1155. callfunc "kafraend";
  1156. break;
  1157. Llocation:
  1158. mes "[Kafra]";
  1159. mes "Ok I'll mark them on your map.";
  1160. if (@location1x == 0) goto Lfinished;
  1161. viewpoint 0,@location1x,@location1y,1,0x0000FF;
  1162. if (@location2x == 0) goto Lfinished;
  1163. viewpoint 1,@location2x,@location2y,1,0x0000FF;
  1164. if (@location3x == 0) goto Lfinished;
  1165. viewpoint 2,@location3x,@location3y,1,0x0000FF;
  1166. if (@location4x == 0) goto Lfinished;
  1167. viewpoint 3,@location4x,@location4y,1,0x0000FF;
  1168. callfunc "kafraend";
  1169. break;
  1170. Lfinished:
  1171. callfunc "kafraend";
  1172. break;
  1173. Lcancel:
  1174. mes "[Kafra]";
  1175. mes "Ok. Bye then...";
  1176. callfunc "kafraend";
  1177. break;
  1178. }
  1179. //**********************************************//
  1180. //End Kafra Function //
  1181. //**********************************************//
  1182. //This will empty all possible variables and end//
  1183. //the kafra scripts. //
  1184. //**********************************************//
  1185. function script kafraend -1,{
  1186. set @warps,0;
  1187. set @save,0;
  1188. set @special,0;
  1189. set @kaflocations,0;
  1190. set @location1x,0;
  1191. set @location2x,0;
  1192. set @location3x,0;
  1193. set @location4x,0;
  1194. if (@end == 1) goto Lbreak;
  1195. cutin @cutinpic$,255;
  1196. close;
  1197. Lbreak:
  1198. set @end,0;
  1199. cutin @cutinpic$,255;
  1200. break;
  1201. }
  1202. //---Kafra Warehouse---
  1203. aldeba_in.gat,24,245,4 script Kafra Service 115,{
  1204. cutin "kafra_03",2;
  1205. mes "[Kapra Jasmine]";
  1206. mes "Hi~ I am Kafra No. 1 Type Jasmine.";
  1207. mes "Thank you for comming all the way to Kafra Main Office here at Al De Baran!";
  1208. next;
  1209. mes "[Kapra Jasmine]";
  1210. mes "Our Kapra Service is always together with our customers!";
  1211. mes "Our Kapra Service has a history and legacy of 5 thousand 8 hundred years old...";
  1212. mes "Blah-blah-blah.....";
  1213. next;
  1214. menu "FIVE THOUSNAD AND EIGHT HUNDRED YEARS?!",L0,"Ahh~ Shut Up!",L1,"You go a boyfriend?",L3;
  1215. L0:
  1216. mes "[Kapra Jasmine]";
  1217. mes "Shut UP! And listen! It to me a week to memorice this!";
  1218. mes "I've got poor memory unlike other Kafra agents!";
  1219. mes "..... Eh!... What did I just say...";
  1220. next;
  1221. mes "[Kapra Jasmine]";
  1222. mes "Hohohoho. S-sorry... I-it was a show, a standing comedy...";
  1223. mes "Right... Dream Show only for Ka-Kafra customers~!";
  1224. mes "(but a solo show)";
  1225. close;
  1226. L1:
  1227. mes "[Kapra Jasmine]";
  1228. mes ". . . . .";
  1229. mes "I was the member of Kafra Garrion before I joined Kafra Service Team...";
  1230. mes "The speciality was 'Bash'!!";
  1231. mes "I'm trying to be feminine and live a quiet life";
  1232. mes "So please don0t tempt me...";
  1233. close;
  1234. L2:
  1235. mes "[Kapra Jasmine]";
  1236. mes "My, my~. Kafra Service has a ridiculous rule that no Agent can have a boyfriend";
  1237. mes ". . . . .";
  1238. mes ". . . . . . . . . .";
  1239. next;
  1240. mes "[Kapra Jasmine]";
  1241. mes "Just kidding~~ Hehe";
  1242. close;
  1243. }
  1244. aldeba_in.gat,79,161,6 script Kafra 115,{
  1245. mes "[Kafra]";
  1246. mes "Welcome, my dearest " + strcharinfo(0) + ".";
  1247. mes "Take goods as many as you've got speacial reserve from Kafra Service~";
  1248. next;
  1249. mes "[Kafra]";
  1250. mes "Please keep in mind that each window requires a different special reserve for your information.";
  1251. mes "Window I am at allows you to use special reserve form ^FF00FF100p to 3000p^000000.";
  1252. next;
  1253. mes "[Kafra]";
  1254. mes "Your special reserve is ^FF0000" + specialreserve + "^000000~";
  1255. mes "Please choose the items you want.";
  1256. next;
  1257. menu "100 = Carrot 7 ea",100,"200 = Carrot 15 ea",200,"300 = Carrot 25 ea",300,"400 = Carrot 35 ea",400,"500 = Carrot 50 ea",500,"600 = Carrot 60 ea",600,"700 = Carrot 75 ea",700,"800 = Carrot 85 ea",800,"900 = Carrot 100 ea",900,"1000 = 1st Lotery Chance!",1000,"Next Articles",L0,"Cancel",LEnd;
  1258. 100:
  1259. if(specialreserve < 100) goto Lneedpoints;
  1260. mes "[Kafra]";
  1261. mes "Good choice... Here ya go.";
  1262. getitem 515,7;
  1263. set specialreserve,specialreserve - 100;
  1264. close;
  1265. 200:
  1266. if(specialreserve < 200) goto Lneedpoints;
  1267. mes "[Kafra]";
  1268. mes "Good choice... Here ya go.";
  1269. getitem 515,15;
  1270. set specialreserve,specialreserve - 200;
  1271. close;
  1272. 300:
  1273. if(specialreserve < 300) goto Lneedpoints;
  1274. mes "[Kafra]";
  1275. mes "Good choice... Here ya go.";
  1276. getitem 515,25;
  1277. set specialreserve,specialreserve - 300;
  1278. close;
  1279. 400:
  1280. if(specialreserve < 400) goto Lneedpoints;
  1281. mes "[Kafra]";
  1282. mes "Good choice... Here ya go.";
  1283. getitem 515,35;
  1284. set specialreserve,specialreserve - 400;
  1285. close;
  1286. 500:
  1287. if(specialreserve < 500) goto Lneedpoints;
  1288. mes "[Kafra]";
  1289. mes "Good choice... Here ya go.";
  1290. getitem 515,50;
  1291. set specialreserve,specialreserve - 500;
  1292. close;
  1293. 600:
  1294. if(specialreserve < 600) goto Lneedpoints;
  1295. mes "[Kafra]";
  1296. mes "Good choice... Here ya go.";
  1297. getitem 515,60;
  1298. set specialreserve,specialreserve - 600;
  1299. close;
  1300. 700:
  1301. if(specialreserve < 700) goto Lneedpoints;
  1302. mes "[Kafra]";
  1303. mes "Good choice... Here ya go.";
  1304. getitem 515,75;
  1305. set specialreserve,specialreserve - 700;
  1306. close;
  1307. 800:
  1308. if(specialreserve < 800) goto Lneedpoints;
  1309. mes "[Kafra]";
  1310. mes "Good choice... Here ya go.";
  1311. getitem 515,85;
  1312. set specialreserve,specialreserve - 800;
  1313. close;
  1314. 900:
  1315. if(specialreserve < 900) goto Lneedpoints;
  1316. mes "[Kafra]";
  1317. mes "Good choice... Here ya go.";
  1318. getitem 515,100;
  1319. set specialreserve,specialreserve - 900;
  1320. close;
  1321. 1000:
  1322. mes "^FF0000Under Construction^000000";
  1323. close;
  1324. L0:
  1325. menu "1100 = Red Potion 7 ea",1100,"1300 = Red Potion 15 ea",1300,"1500 = Red Potion 25 ea",1500,"1700 = Red Potion 35 ea",1700,"1900 = Red Potion 50 ea",1900,"2100 = Red Potion 60 ea",2100,"2300 = Red Potion 75 ea",2300,"2500 = Red Potion 85 ea",2500,"2800 = Red Potion 100 ea",2800,"3000 = 2nd Lotery Chance!",3000,"Cancel",EndL0;
  1326. 1100:
  1327. if(specialreserve < 1100) goto Lneedpoints;
  1328. mes "[Kafra]";
  1329. mes "Good choice... Here ya go.";
  1330. getitem 501,7;
  1331. set specialreserve,specialreserve - 1100;
  1332. close;
  1333. 1300:
  1334. if(specialreserve < 1300) goto Lneedpoints;
  1335. mes "[Kafra]";
  1336. mes "Good choice... Here ya go.";
  1337. getitem 501,15;
  1338. set specialreserve,specialreserve - 1300;
  1339. close;
  1340. 1500:
  1341. if(specialreserve < 1500) goto Lneedpoints;
  1342. mes "[Kafra]";
  1343. mes "Good choice... Here ya go.";
  1344. getitem 501,25;
  1345. set specialreserve,specialreserve - 1500;
  1346. close;
  1347. 1700:
  1348. if(specialreserve < 1700) goto Lneedpoints;
  1349. mes "[Kafra]";
  1350. mes "Good choice... Here ya go.";
  1351. getitem 501,35;
  1352. set specialreserve,specialreserve - 1700;
  1353. close;
  1354. 1900:
  1355. if(specialreserve < 1900) goto Lneedpoints;
  1356. mes "[Kafra]";
  1357. mes "Good choice... Here ya go.";
  1358. getitem 501,50;
  1359. set specialreserve,specialreserve - 1900;
  1360. close;
  1361. 2100:
  1362. if(specialreserve < 2100) goto Lneedpoints;
  1363. mes "[Kafra]";
  1364. mes "Good choice... Here ya go.";
  1365. getitem 501,60;
  1366. set specialreserve,specialreserve - 2100;
  1367. close;
  1368. 2300:
  1369. if(specialreserve < 2300) goto Lneedpoints;
  1370. mes "[Kafra]";
  1371. mes "Good choice... Here ya go.";
  1372. getitem 501,75;
  1373. set specialreserve,specialreserve - 2300;
  1374. close;
  1375. 2500:
  1376. if(specialreserve < 2500) goto Lneedpoints;
  1377. mes "[Kafra]";
  1378. mes "Good choice... Here ya go.";
  1379. getitem 501,85;
  1380. set specialreserve,specialreserve - 2500;
  1381. close;
  1382. 2800:
  1383. if(specialreserve < 2800) goto Lneedpoints;
  1384. mes "[Kafra]";
  1385. mes "Good choice... Here ya go.";
  1386. getitem 501,100;
  1387. set specialreserve,specialreserve - 2800;
  1388. close;
  1389. 3000:
  1390. mes "^FF0000Under Construction^000000";
  1391. close;
  1392. Lend:
  1393. mes "[Kafra]";
  1394. mes "Ok then... Come again if you change your mind.";
  1395. close;
  1396. }
  1397. aldeba_in.gat,81,166,4 script Kafra Service 117,{
  1398. cutin "kafra_01",2;
  1399. mes "[Kafra Pavianne]";
  1400. mes "Welcome! I'm Kafra service's the first Kapra Type 'Pavianne'";
  1401. next;
  1402. mes "[Kafra Pavianne]";
  1403. mes "Our Kapra Service is always trying to meet 100% customers satisfaction based on 3 principles, Trust, Devotion and Truest.";
  1404. mes "With complete Service training and supervision, we serve our customers to meet thier needs.";
  1405. next;
  1406. menu "Buy Kafra Pass",L0,"What is Kafra Pass",L1,"Good Bye",L3;
  1407. L0:
  1408. getitem 1084,1;
  1409. set Zeny, Zeny-2000;
  1410. mes "[Kafra Pavianne]";
  1411. mes "Thank you for using our Kapra Service all the time!";
  1412. mes "Have a Nice Day!";
  1413. cutin "kafra_01",255;
  1414. close;
  1415. L1:
  1416. mes "[Kafra Pavianne]";
  1417. mes "The best gift you could get only at Kafra Main Office!";
  1418. mes "^4040FF'K A P R A's P A S S'^000000!!";
  1419. mes "TaDa~!";
  1420. next;
  1421. mes "[Kafra Pavianne]";
  1422. mes "With Kafra Pass, you could experience the convenience of Kafra Service world-wide! No Hassle!";
  1423. mes "The price is 2000 zeny~~";
  1424. next;
  1425. mes "[Kafra Pavianne]";
  1426. mes "Visit any Kafra Service in Midgard, and you could enjoy Kafra Service any time any where for once.";
  1427. mes "Ending a a conversation with Kafra Service Agent will expire the pass.";
  1428. cutin "kafra_01",255;
  1429. close;
  1430. L3:
  1431. mes "[Kafra Pavianne]";
  1432. mes "Thank you for using Kafra Service!";
  1433. mes "It was Kafra Pavianne";
  1434. cutin "kafra_01",255;
  1435. close;
  1436. }
  1437. aldeba_in.gat,83,244,4 script Kafra Service 116,{
  1438. cutin "kafra_02",2;
  1439. mes "[Kafra Blossom]";
  1440. mes "..... Pavianne is such an old-timer!";
  1441. mes "Too stubborn...";
  1442. mes "We should make customers to experience more unique, never-seen, aspects of Kafra here at Main Office.";
  1443. next;
  1444. mes "[Kafra Blossom]";
  1445. mes "Now! WELCOOOOOME~~ I am Kafra Tailing Type.";
  1446. mes "Please don't forget to continue using our Kafra Service, and ask for me, Tailing~~";
  1447. next;
  1448. menu "I'm an admirer of you~!",L0,"Ehhaha",L1;
  1449. L0:
  1450. mes "[Kafra Blossom]";
  1451. mes "Really!";
  1452. mes "Thank you sooo much~";
  1453. mes "Here is... my... autograph...";
  1454. next;
  1455. mes "[Kafra Blossom]";
  1456. mes "Don't even bother to look in your Item Iventory. It won't be there... Hehe..";
  1457. mes "My autograph will remail win your heart.";
  1458. cutin "kafra_02",255;
  1459. close;
  1460. L1:
  1461. mes "[Kafra Blossom]";
  1462. mes "Huh?";
  1463. mes ". . . . .";
  1464. mes "That's all?";
  1465. mes "Phew~ such a dull customer...";
  1466. cutin "kafra_02",255;
  1467. close;
  1468. }
  1469. aldeba_in.gat,91,244,4 script Kafra Service 112,{
  1470. cutin "kafra_06",2;
  1471. mes "[Kafra Curly Sue]";
  1472. mes "Hello, hello?!!";
  1473. mes "The youngest of all! Kafra cutty~~";
  1474. mes "I am Kafra Type 'Curly Sue'";
  1475. next;
  1476. mes "[Kafra Curly Sue]";
  1477. mes "It hasn't been long meeting customers since I am new, but I am always doing my best!!";
  1478. next;
  1479. menu "Where is your mom?",L0,"End conversation",LEnd;
  1480. L0:
  1481. mes "[Kafra Curly Sue]";
  1482. mes ". . . . .";
  1483. mes "Sob sob ...";
  1484. mes "I am no a KID!!";
  1485. next;
  1486. cutin "kafra_06",255;
  1487. close;
  1488. LEnd:
  1489. mes "[Kafra Curly Sue]";
  1490. mes "Here at Kafra Service, We're all doing out B-E-S-T! to provide our customers the B-E-S-T! services.";
  1491. mes "We really appreciate your business with us.";
  1492. next;
  1493. cutin "kafra_06",255;
  1494. close;
  1495. }
  1496. aldeba_in.gat,96,181,4 script Kafra Service 113,{
  1497. cutin "kafra_05",2;
  1498. mes "[Kafra Leilah]";
  1499. mes "Kafra Service.";
  1500. mes "What can I do for you?";
  1501. next;
  1502. menu "Save.",Lsave,"Use Storage Service",Lstorage,"Use Cart Service.",Lcart,"End conversation.",Lcancel;
  1503. Lsave:
  1504. mes "[Kafra Leilah]";
  1505. mes "Please. This is Kafra Service Command Center in charge of training Kafra Service Agent.";
  1506. next;
  1507. mes "[Kafra Leilah]";
  1508. mes "For Actual Services you must visit Kafra Service Center Agent at each city including Al De Baran.";
  1509. mes "... But I will do that for you...";
  1510. next;
  1511. savepoint "aldeba_in.gat",96,179;
  1512. cutin "kafra_05",255;
  1513. close;
  1514. Lstorage:
  1515. if((class ==Job_Novice) && (JobLevel<6)) goto NeedJobLevel;
  1516. if(Zeny<30) goto NeedZenys;
  1517. set Zeny, Zeny-30;
  1518. openstorage;
  1519. cutin "kafra_02",255;
  1520. close;
  1521. NeedJobLevel:
  1522. mes "[Kafra Leilah]";
  1523. mes "I am sorry but you have to be at least novice with job level 6 if you want to use the storage";
  1524. cutin "kafra_05",255;
  1525. close;
  1526. NeedZenys:
  1527. mes "[Kafra Leilah]";
  1528. mes "Dear, you don't have enough zeny. The Storage fee is 30 Zeny.";
  1529. cutin "kafra_05",255;
  1530. close;
  1531. Lcart:
  1532. if((class ==Job_Merchant) || (class==Job_Blacksmith) || (class==Job_Alchem)) goto UseCart;
  1533. mes "[Kafra Leilah]";
  1534. mes "I'm sorry. The cart service is only provided for Merchants, Blacksmiths and Alchemists only.";
  1535. cutin "kafra_04",255;
  1536. close;
  1537. UseCart:
  1538. mes "[Kafra Leilah]";
  1539. mes "The Cart Fee is 800 Zeny. Do you want to Rent a Cart?";
  1540. next;
  1541. menu "Rent a Cart.",RentCart,"Cancel.",RCCancel;
  1542. RentCart:
  1543. if(Zeny<800) goto RCNeedZenys;
  1544. if(getskilllv(39) < 1) got Lneedskill;
  1545. if((CheckCart)==1) goto GetCart;
  1546. GetCart:
  1547. set Zeny,Zeny-800;
  1548. set specialreserve,specialreserve + 800;
  1549. setcart;
  1550. mes "[Kafra]";
  1551. mes "There you go..";
  1552. cutin "kafra_08",255;
  1553. close;
  1554. RCNeedZenys:
  1555. mes "[Kafra Leilah]";
  1556. mes "Dear, you don't have enough zeny. You need 800 Zeny.";
  1557. cutin "kafra_04",255;
  1558. close;
  1559. Lneedskill:
  1560. mes "[Kafra Leilah]";
  1561. mes "Sorry dear but you need the Pushcart skill to rent a cart.";
  1562. cutin "kafra_04",255;
  1563. close;
  1564. RCCancel:
  1565. cutin "kafra_04",255;
  1566. close;
  1567. Lcancel:
  1568. cutin "kafra_05",2;
  1569. close;
  1570. }
  1571. aldeba_in.gat,142,238,4 script Kafra Service 114,{
  1572. cutin "kafra_04",2;
  1573. mes "[Kafra Roxie]";
  1574. mes "Welcome! I'm Kafra Type 'Roxie'";
  1575. mes "The Special Secret about Kapra only for you Kapra!";
  1576. next;
  1577. mes "[Kafra Roxie]";
  1578. mes "You know... Our Kapra Service wasn't actually called Kapra originally~~";
  1579. mes "Well what do you think it actually was?~";
  1580. next;
  1581. mes "[Kafra Roxie]";
  1582. mes "TaDa~ Surprisingly it was~~~!";
  1583. mes "Ka! P (Ring Ring Ring)";
  1584. mes "Oh... my phone... Sorry please wait...";
  1585. next;
  1586. mes "[Kafra Roxie]";
  1587. mes "Hi? Kapra Type Roxie";
  1588. mes "Huh! Director, sir! Yes! Yes! I understand! ..... Sure!";
  1589. mes "Ah... Huh?!";
  1590. next;
  1591. mes "[Kafra Roxie]";
  1592. mes "No-no sir!";
  1593. mes "Yes! I understand!!";
  1594. next;
  1595. mes "[Kafra Roxie]";
  1596. mes "*Click*";
  1597. mes "..... Hehehe...";
  1598. mes ". . . . .";
  1599. next;
  1600. mes "[Kafra Roxie]";
  1601. mes "Ah... Please ignore what you've just heard from me, haha.";
  1602. mes ". . . . .";
  1603. close;
  1604. }