mage.txt 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736
  1. //===== eAthena Script =======================================
  2. //= Mage Job Quest
  3. //===== By: ==================================================
  4. //= kobra_k88; L0ne_W0lf
  5. //===== Current Version: =====================================
  6. //= 1.9
  7. //===== Compatible With: =====================================
  8. //= eAthena SVN
  9. //===== Description: =========================================
  10. //= [Aegis Conversion]
  11. //= Job quest for Mage classes
  12. //===== Additional Comments: =================================
  13. //= Fully working
  14. //= 1.1 Fixed input ingridients bug [Lupus]
  15. //= v1.2 Added instant job change for High Novice [Lupus]
  16. //= 1.3 Added Baby Class support [Lupus]
  17. //= v1.4 Optimised and moved first checker to Jfunc1-1 [massdriller]
  18. //= 1.5 Now saves/restores all quest skills [Lupus]
  19. //= 1.6 Merged back JFunc, CHANGED NUMBERS TO CONSTANTS [Lupus]
  20. //= 1.7 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
  21. //= No longer uses function "F_ToHigh"
  22. //= 1.7a Fixed a "If" in the quest. (bugreport:489) [Samuray22]
  23. //= 1.8 Added Quest Log commands. [L0ne_W0lf]
  24. //= 1.9 Fixed an issue with completequest by adding checkquest. [Kisuka]
  25. //============================================================
  26. geffen_in,164,124,4 script Mage Guildsman 123,{
  27. if (Upper == 1) {
  28. if (ADVJOB == Job_High_Wizard || ADVJOB == Job_Professor) {
  29. if (Class == Job_Novice_High) {
  30. mes "[Mage Guildsman]";
  31. mes "Whoa, long time no see! But weren't you supposed to be dead?";
  32. next;
  33. mes "[Mage Guildsman]";
  34. mes "Ah, you must have been reborn. Well, I'm glad to have you back.";
  35. next;
  36. if (getskilllv("NV_BASIC") < 9) {
  37. mes "[Mage Guildsman]";
  38. mes "I'm sorry, but I don't think you're ready to learn magic yet. Why don't you go finish learning the Basic Skills first?";
  39. next;
  40. mes "[Mage Guildsman]";
  41. mes "Take your time. The more you learn, the more ready you'll be to learn magic again.";
  42. close;
  43. }
  44. mes "[Mage Guildsman]";
  45. mes "Well, since you have passed the Mage test once, I will not question your qualification. You want to have your magic skills back immediately, don't you?";
  46. next;
  47. skill 143,0,0;
  48. jobchange Job_Mage_High;
  49. skill 157,1,0;
  50. mes "[Mage Guildsman]";
  51. mes "Wow, for some reason, you look way better than you did before. Anyway, I believe you will do a better job being a Mage as well.";
  52. close;
  53. }
  54. else {
  55. mes "[Mage Guildsman]";
  56. mes "Is there anything more I can help you with? If not, why don't you go test your skills? The world is waiting for you~!";
  57. close;
  58. }
  59. }
  60. else {
  61. mes "[Mage Guildsman]";
  62. mes "What, are you interested in the Mage guild? I didn't want to tell you this, but you don't belong here.";
  63. next;
  64. mes "[Mage Guildsman]";
  65. mes "I am not sure why you're still standing in front of me, but I can tell that you're not meant to be a Mage.";
  66. close;
  67. }
  68. }
  69. mes "[Mage Guildsman]";
  70. mes "Yo. What's up?";
  71. next;
  72. switch(select("I want to be a Mage.:Tell me the Requirements.:Pretty much nothing.")) {
  73. case 1:
  74. mes "[Mage Guildsman]";
  75. if (BaseJob == Job_Mage) {
  76. mes "Hey, haven't you realized? You're aleady a Mage, silly!";
  77. next;
  78. mes "[Mage Guildsman]";
  79. mes "One of these days you'll realize the power inside of you when you can make Fire with your mind!";
  80. close;
  81. }
  82. if (BaseJob != Job_Novice) {
  83. mes "Hey~ C'mon. Quit playing games. You can't be a Mage because you already have another Job.";
  84. close;
  85. }
  86. if (job_magician_q == 0) {
  87. mes "Wanna be a Mage, eh...?";
  88. if (sex)
  89. mes "Hey, look at you! You're kinda cute~! Not my type though...";
  90. else {
  91. mes "Oooh, you're such a hot babe~!";
  92. mes "I like girls like you~";
  93. }
  94. next;
  95. mes "[Mage Guildsman]";
  96. mes "Right, you said that you wanna be a Mage? Alright then, please sign the Mage Application.";
  97. next;
  98. if (select("Sign Up.:Quit.") == 1) {
  99. mes "[Mage Guildsman]";
  100. mes "Okay. Sign right there. Oh, you're very good at spelling. Alright. So your name is... " + strcharinfo(0) + ".";
  101. next;
  102. mes "[Mage Guildsman]";
  103. mes "Now it's time for";
  104. mes "me to give you the test.";
  105. switch(rand(3)) {
  106. case 1:
  107. mes "Make me a ^3355FFMixed Solution No. 1^000000";
  108. mes "and bring it back to me.";
  109. set job_magician_q,1;
  110. break;
  111. case 2:
  112. mes "Make me a ^3355FFMixed Solution No. 2^000000";
  113. mes "and bring it back to me.";
  114. set job_magician_q,2;
  115. break;
  116. case 3:
  117. mes "Make me a ^3355FFMixed Solution No. 3^000000";
  118. mes "and bring it back to me.";
  119. set job_magician_q,3;
  120. break;
  121. default:
  122. mes "Make me a ^3355FFMixed Solution No. 4^000000";
  123. mes "and bring it back to me.";
  124. set job_magician_q,4;
  125. }
  126. next;
  127. getitem 1092,1; //Empty_Cylinder
  128. mes "[Mage Guildsman]";
  129. mes "You can find the neccessary ingredients inside the Guide Book in this Guild. So you better look up what you need before you go.";
  130. next;
  131. mes "[Mage Guildsman]";
  132. mes "Once you collect all the ingredients you, use the machine in the center of the room to mix the solution. Good luck!";
  133. close;
  134. }
  135. mes "[Mage Guildsman]";
  136. mes "Whaaaaat~?! Right after you tell me that you wanna become a Mage, you change your mind?! Be a bit more decisive!";
  137. close;
  138. }
  139. mes "Yeah? Ready...?";
  140. if (getskilllv("NV_BASIC") < 9) {
  141. mes "Oh, what a bummer. You haven't met the requirements yet.";
  142. next;
  143. mes "[Mage Guildsman]";
  144. mes "Go back and reach Novice Job level 9 first. Don't forget that you also have to learn all of the Basic Skills before you come back.";
  145. close;
  146. }
  147. mes "" + strcharinfo(0) + "'s test was...";
  148. if (job_magician_q == 1)
  149. mes "Making Mixed Solution No. 1.";
  150. else if (job_magician_q == 2)
  151. mes "Making Mixed Solution No. 2.";
  152. else if (job_magician_q == 3)
  153. mes "Making Mixed Solution No. 3.";
  154. else
  155. mes "Making Mixed Solution No. 4.";
  156. next;
  157. mes "[Mage Guildsman]";
  158. mes "Okay, let me";
  159. mes "check if you made your";
  160. mes "solution accurately...";
  161. next;
  162. mes "[Mage Guildsman]";
  163. if (countitem(1071) == 0 && countitem(1085) == 0 && countitem(1086) == 0 && countitem(1087) == 0 && countitem(1090) == 0) {
  164. mes "Hey, where's the Solution";
  165. mes "I asked for...? I can't check it if you don't show it to me, right?";
  166. close;
  167. }
  168. else {
  169. if ((job_magician_q == 1 && countitem(1071) == 0) || (job_magician_q == 2 && countitem(1085) == 0) || (job_magician_q == 3 && countitem(1086) == 0) || (job_magician_q == 4 && countitem(1087) == 0)) {
  170. mes "Wait.";
  171. mes "This isn't the";
  172. mes "Solution I asked for!";
  173. next;
  174. mes "[Mage Guildsman]";
  175. if (job_magician_q == 1)
  176. mes "You're supposed to make Mixed Solution No. 1 and bring it back to me. Now go and try it again.";
  177. else if (job_magician_q == 2)
  178. mes "You're supposed to make Mixed Solution No. 2 and bring it back to me. Now go and try it again.";
  179. else if (job_magician_q == 3)
  180. mes "You're supposed to make Mixed Solution No. 3 and bring it back to me. Now go and try it again.";
  181. else
  182. mes "You're supposed to make Mixed Solution No. 4 and bring it back to me. Now go and try it again.";
  183. if (countitem(1071) != 0) delitem 1071,1; //Mage_Test_1
  184. else if (countitem(1085) != 0) delitem 1085,1; //Mage_Test_2
  185. else if (countitem(1086) != 0) delitem 1086,1; //Mage_Test_3
  186. else if (countitem(1087) != 0) delitem 1087,1; //Mage_Test_4
  187. else delitem 1090,1; //Mage_Test_Etc
  188. close;
  189. }
  190. }
  191. if (countitem(1071) != 0) delitem 1071,1; //Mage_Test_1
  192. else if (countitem(1085) != 0) delitem 1085,1; //Mage_Test_2
  193. else if (countitem(1086) != 0) delitem 1086,1; //Mage_Test_3
  194. else if (countitem(1087) != 0) delitem 1087,1; //Mage_Test_4
  195. else delitem 1090,1; //Mage_Test_Etc
  196. mes "Hmm. I can see that you tried really hard. For a beginner's attempt, this is really good.";
  197. mes "Great work!";
  198. next;
  199. mes "[Mage Guildsman]";
  200. mes "Alright! I'm pleased to say that you've passed the Mage Test. I will transform you right away!";
  201. next;
  202. mes "[Mage Guildsman]";
  203. mes "*Ahem*";
  204. mes "Congratulations!";
  205. mes "You are now a Mage!";
  206. next;
  207. callfunc "Job_Change",Job_Mage;
  208. callfunc "F_ClearJobVar";
  209. set Zeny,Zeny+50;
  210. if(checkquest(1005) != -1) {
  211. completequest 1005;
  212. }
  213. else if(checkquest(1006) != -1) {
  214. completequest 1006;
  215. }
  216. else if(checkquest(1007) != -1) {
  217. completequest 1007;
  218. }
  219. else {
  220. completequest 1008;
  221. }
  222. mes "[Mage Guildsman]";
  223. mes "'Welcome to My World~'";
  224. mes "Heh heh, I just wanted to say that. You know, it's a quote from a well-known movie~";
  225. next;
  226. mes "[Mage Guildsman]";
  227. mes "Now that you're a Mage just like us, let's be friends, okay?";
  228. close;
  229. case 2:
  230. mes "[Mage Guildsman]";
  231. mes "Wanna be a Mage, eh?";
  232. if (sex)
  233. mes "For a cutie like you, I'd be happy to explain the requirements!";
  234. else
  235. mes "I'd be happy to explain the requirements for a pretty girl like you!";
  236. next;
  237. mes "[Mage Guildsman]";
  238. mes "First of all, you have to reach Novice Job Level 10 and learn all of the Basic Skills. Then, you'll have to pass the Mage Test.";
  239. next;
  240. if (job_magician_q != 0) {
  241. mes "[Mage Guildsman]";
  242. mes "Your test is to";
  243. switch(job_magician_q) {
  244. case 1:
  245. mes "make me a";
  246. mes "^3355FFMixed Solution No. 1^000000";
  247. mes "and bring it back to me.";
  248. setquest 1005;
  249. break;
  250. case 2:
  251. mes "make me a";
  252. mes "^3355FFMixed Solution No. 2^000000";
  253. mes "and bring it back to me.";
  254. setquest 1006;
  255. break;
  256. case 3:
  257. mes "make me a";
  258. mes "^3355FFMixed Solution No. 3^000000";
  259. mes "and bring it back to me.";
  260. setquest 1007;
  261. break;
  262. default:
  263. mes "make me a";
  264. mes "^3355FFMixed Solution No. 4^000000";
  265. mes "and bring it back to me.";
  266. setquest 1008;
  267. }
  268. next;
  269. mes "[Mage Guildsman]";
  270. mes "You can look up the ingredients you'll need to make the Solution inside the Guide Book in this Guild.";
  271. }
  272. else {
  273. mes "[Mage Guildsman]";
  274. mes "You will be informed as to which Mixed Solution you will need to create after signing the application form.";
  275. }
  276. next;
  277. mes "[Mage Guildsman]";
  278. mes "Let me know when you are ready to become a Mage, alright?";
  279. close;
  280. case 3:
  281. mes "[Mage Guildsman]";
  282. mes "Nothing...?";
  283. close;
  284. }
  285. }
  286. geffen_in,164,112,4 script Mixing Machine 111,{
  287. mes "[Mixing Machine]";
  288. mes "This machine is the property of the Geffen Mage Guild and is used only for mixing solutions for magic purposes.";
  289. next;
  290. if (select("Use Machine.:Cancel.") == 1) {
  291. mes "[Mixing Machine]";
  292. mes "Choose the";
  293. mes "Solvent for";
  294. mes "the Solution.";
  295. next;
  296. switch(select("Payon Solution.:Morroc Solution.:No Solvent.")) {
  297. case 1:
  298. if (countitem(1089) == 0) {
  299. mes "[Mixing Machine]";
  300. mes "Error.";
  301. mes "Cannot find the item.";
  302. mes "Please check again.";
  303. mes "Process Halting.";
  304. close;
  305. }
  306. set .@mixitem2,1;
  307. break;
  308. case 2:
  309. if (countitem(1088) == 0) {
  310. mes "[Mixing Machine]";
  311. mes "Error.";
  312. mes "Cannot find the item.";
  313. mes "Please check again.";
  314. mes "Process Halting.";
  315. close;
  316. }
  317. set .@mixitem2,2;
  318. break;
  319. case 3:
  320. set .@mixitem2,0;
  321. break;
  322. }
  323. while (1) {
  324. if (.@progress == 2) {
  325. mes "[Mixing Machine]";
  326. if (.@mixitem1_1 != 0) mes "Jellopy: " + .@mixitem1_1 + " ea.";
  327. if (.@mixitem1_2 != 0) mes "Fluff: " + .@mixitem1_2 + " ea.";
  328. if (.@mixitem1_3 != 0) mes "Milk: " + .@mixitem1_3 + " ea.";
  329. if (.@mixitem2 == 0) mes "Solvent: None.";
  330. if (.@mixitem2 == 1) mes "Solvent: Payon Solution.";
  331. if (.@mixitem2 == 2) mes "Solvent: Morroc Solution.";
  332. next;
  333. mes "[Mixing Machine]";
  334. mes "Please choose if you wish to begin mixing, or to re-enter the number of items to be mixed.";
  335. next;
  336. switch(select("Begin Mixing.:Re-Enter Number of Items.:Reset.")) {
  337. case 1:
  338. mes "[Mixing Machine]";
  339. mes "Please place the items into the Mixing Receptacle. Make sure the item amounts are correct.";
  340. next;
  341. mes "[Mixing Machine]";
  342. mes "You cannot adjust or restore items once they are placed into the Mixing Receptacle.";
  343. next;
  344. mes "[Mixing Machine]";
  345. mes "If everything is correct, press the 'Mix' button when you are ready. Otherwise, press the 'Cancel' button.";
  346. next;
  347. if (select("Press 'Mix' Button.:Press 'Cancel' Button.") == 1) {
  348. mes "[Mixing Machine]";
  349. mes "Place items into the Mixing Receptacle now. Please wait.";
  350. next;
  351. mes "[Mixing Machine]";
  352. if (countitem(909) < .@mixitem1_1) {
  353. mes "Insufficient Jellopy.";
  354. mes "Please Check again.";
  355. mes "Process Halted.";
  356. close;
  357. }
  358. else if (countitem(914) < .@mixitem1_2) {
  359. mes "Insufficient Fluff.";
  360. mes "Please Check again.";
  361. mes "Process Halted.";
  362. close;
  363. }
  364. else if (countitem(519) < .@mixitem1_3) {
  365. mes "Insufficient Milk.";
  366. mes "Please Check again.";
  367. mes "Process Halted.";
  368. close;
  369. }
  370. else if (.@mixitem2 == 1 || .@mixitem2 == 2) {
  371. if (countitem(1089) == 0 && countitem(1088) == 0) {
  372. mes "Solution not found.";
  373. mes "Please Check again.";
  374. mes "Process Halted.";
  375. close;
  376. }
  377. }
  378. if (.@mixitem1_1 != 0) delitem 909,.@mixitem1_1; //Jellopy
  379. if (.@mixitem1_2 != 0) delitem 914,.@mixitem1_2; //Fluff
  380. if (.@mixitem1_3 != 0) delitem 519,.@mixitem1_3; //Milk
  381. if (.@mixitem2 == 1) delitem 1089,1; //Payon_Potion
  382. if (.@mixitem2 == 2) delitem 1088,1; //Morocc_Potion
  383. mes "Items are Ready.";
  384. mes "Close the Lid.";
  385. set .@progress,3;
  386. next;
  387. }
  388. break;
  389. case 2:
  390. set .@continue,0;
  391. next;
  392. break;
  393. case 3:
  394. set .@mixitem1_1,0;
  395. set .@mixitem1_2,0;
  396. set .@mixitem1_3,0;
  397. set .@progress,0;
  398. set .@continue,0;
  399. mes "[Mixing Machine]";
  400. mes "Reset Complete.";
  401. mes "Initiate again?";
  402. next;
  403. if (select("Yes.:No.") == 1)
  404. break;
  405. mes "[Mixing Machine]";
  406. mes "Process Halted.";
  407. mes "Thank you.";
  408. close;
  409. }
  410. if (.@progress == 3) break;
  411. }
  412. else if (.@progress == 1) {
  413. mes "[Mixing Machine]";
  414. mes "Nothing found.";
  415. next;
  416. }
  417. mes "[Mixing Machine]";
  418. mes "Select items to mix.";
  419. while(1) {
  420. switch(select("Jellopy.:Fluff.:Milk.:Ready to Mix.")) {
  421. case 1:
  422. while(1) {
  423. input .@input;
  424. if (.@input > 10000) {
  425. next;
  426. mes "[Mixing Machine]";
  427. mes "Error: Item limit exceeded. Please enter values less than 10,000 try again.";
  428. next;
  429. }
  430. else {
  431. if (countitem(909) > 0) set .@mixitem1_1,.@mixitem1_1 + .@input;
  432. set .@progress,2;
  433. break;
  434. }
  435. }
  436. break;
  437. case 2:
  438. while(1) {
  439. input .@input;
  440. if (.@input > 10000) {
  441. next;
  442. mes "[Mixing Machine]";
  443. mes "Error: Item limit exceeded. Please enter values less than 10,000 try again.";
  444. next;
  445. }
  446. else {
  447. if (countitem(914) > 0) set .@mixitem1_2,.@mixitem1_2 + .@input;
  448. set .@progress,2;
  449. break;
  450. }
  451. }
  452. break;
  453. case 3:
  454. while(1) {
  455. input .@input;
  456. if (.@input > 10000) {
  457. next;
  458. mes "[Mixing Machine]";
  459. mes "Error: Item limit exceeded. Please enter values less than 10,000 try again.";
  460. next;
  461. }
  462. else {
  463. if (countitem(519) > 0) set .@mixitem1_3,.@mixitem1_3 + .@input;
  464. set .@progress,2;
  465. break;
  466. }
  467. }
  468. break;
  469. case 4:
  470. if (.@progress != 2)
  471. set .@progress,1;
  472. set .@continue,1;
  473. next;
  474. }
  475. if (.@continue) break;
  476. }
  477. }
  478. mes "[Mixing Machine]";
  479. mes "Please enter the ";
  480. mes "Serial Number of";
  481. mes "the Magic Powder.";
  482. next;
  483. while(1) {
  484. input .@input;
  485. if (.@input < 1000 || .@input > 9999) {
  486. mes "[Mixing Machine]";
  487. if (.@input == 0) {
  488. mes "Do you want to skip this Menu?";
  489. next;
  490. if (select("Yes.:No.") == 1) {
  491. break;
  492. }
  493. }
  494. else {
  495. mes "Invalid Serial Number.";
  496. mes "Please try again.";
  497. next;
  498. }
  499. }
  500. else {
  501. mes "[Mixing Machine]";
  502. mes "The Serial Number is #" + .@input + ", correct?";
  503. next;
  504. if (select("Confirm.:Cancel.") == 1) {
  505. if (.@input == 8472)
  506. set .@magic_powder,1;
  507. else if (.@input == 3735)
  508. set .@magic_powder,2;
  509. else if (.@input == 2750)
  510. set .@magic_powder,3;
  511. else if (.@input == 5429)
  512. set .@magic_powder,4;
  513. else
  514. set .@magic_powder,5;
  515. }
  516. break;
  517. }
  518. }
  519. mes "[Mixing Machine]";
  520. mes "Choose a";
  521. mes "Catalyst Stone.";
  522. next;
  523. switch(select("Yellow Gemstone.:Red Gemstone.:Blue Gemstone.:1carat Diamond.:Skip.")) {
  524. case 1: set .@mixitem3,1; break;
  525. case 2: set .@mixitem3,2; break;
  526. case 3: set .@mixitem3,3; break;
  527. case 4: set .@mixitem3,4; break;
  528. case 5: break;
  529. }
  530. mes "[Mixing Machine]";
  531. mes "All Set.";
  532. mes "Initiating";
  533. mes "Mixing process.";
  534. mes "Please Wait.";
  535. next;
  536. mes "[Mixing Machine]";
  537. mes "- Proverb of the Day -";
  538. switch(rand(1,5)) {
  539. case 1:
  540. mes "An Eye for an Eye: When you take from a person, you must replace or repay in some way.";
  541. break;
  542. case 2:
  543. mes "Credibility is a Man's Currency: There's a value in genuine trust that cannot be measured.";
  544. break;
  545. case 3:
  546. mes "What Goes Around Comes Around: Ultimately, you will be treated in the way you treat others.";
  547. mes "It means 'When you harm Another you will be harmed by him in an unavoidable situation'.";
  548. break;
  549. case 4:
  550. mes "A good neighbor is better than a distant brother: When you need help, you can count on those close to you.";
  551. break;
  552. default:
  553. mes "Birds of a Feather Flock Together: You can look at a person's friends as an indicator of their character.";
  554. }
  555. next;
  556. if (.@mixitem1_1 == 2 && .@mixitem1_2 == 3 && .@mixitem1_3 == 1 && .@mixitem2 == 1 && .@mixitem3 == 1 && .@magic_powder == 1) {
  557. mes "[Mixing Machine]";
  558. mes "Mage Test Solution No. 1.";
  559. getitem 1071,1; //Mage_Test_1
  560. next;
  561. }
  562. else if (.@mixitem1_1 == 3 && .@mixitem1_2 == 1 && .@mixitem1_3 == 1 && .@mixitem2 == 0 && .@mixitem3 == 2 && .@magic_powder == 2) {
  563. mes "[Mixing Machine]";
  564. mes "Mage Test Solution No. 2.";
  565. getitem 1085,1; //Mage_Test_2
  566. next;
  567. }
  568. else if (.@mixitem1_1 == 6 && .@mixitem1_2 == 1 && .@mixitem1_3 == 0 && .@mixitem2 == 1 && .@mixitem3 == 3 && .@magic_powder == 3) {
  569. mes "[Mixing Machine]";
  570. mes "Mage Test Solution No. 3.";
  571. getitem 1086,1; //Mage_Test_3
  572. next;
  573. }
  574. else if (.@mixitem1_1 == 2 && .@mixitem1_2 == 3 && .@mixitem1_3 == 0 && .@mixitem2 == 2 && .@mixitem3 == 4 && .@magic_powder == 4) {
  575. mes "[Mixing Machine]";
  576. mes "Mage Test Solution No. 4.";
  577. getitem 1087,1; //Mage_Test_4
  578. next;
  579. }
  580. else {
  581. mes "[Mixing Machine]";
  582. mes "Unexpected";
  583. mes "Error Occurred.";
  584. getitem 1090,1; //Mage_Test_Etc
  585. next;
  586. }
  587. mes "[Mixing Machine]";
  588. mes "Mixing Complete.";
  589. mes "Thank you.";
  590. close;
  591. }
  592. close;
  593. }
  594. pay_arche,122,100,0 script Dollshoi 88,{
  595. mes "[Mage Guildsman]";
  596. mes "You want a Solution? Hmm, give me 50 Zeny and at least 1 Empty Test Tube.";
  597. next;
  598. if (select("Alright, Deal.:Nah, forget it.") == 1) {
  599. mes "[Mage Guildsman]";
  600. if (Zeny < 50) {
  601. mes "Hey! You don't have enough money to cover my 50 Zeny charge.";
  602. close;
  603. }
  604. if (countitem(1092) == 0) {
  605. mes "You can't carry solutions without a bottle! Bring me an Empty Test Tube.";
  606. close;
  607. }
  608. delitem 1092,1; //Empty_Cylinder
  609. set zeny,zeny-50;
  610. getitem 1089,1; //Payon_Potion
  611. }
  612. close;
  613. }
  614. moc_ruins,91,150,0 script Ponka-Hontas 93,{
  615. mes "[Mage Guildsman]";
  616. mes "Would you like a Solution? Then please give me 50 Zeny and at least 1 Empty Testtube.";
  617. next;
  618. if (select("Alright, Deal.:Nah, forget it.") == 1) {
  619. mes "[Mage Guildsman]";
  620. if (zeny < 50) {
  621. mes "I'm sorry, but you don't have enough money to cover the 50 Zeny fee.";
  622. close;
  623. }
  624. if (countitem(1092) == 0) {
  625. mes "You can't carry liquids without using a bottle. Bring an Empty Test Tube the next time you see me.";
  626. close;
  627. }
  628. delitem 1092,1; //Empty_Cylinder
  629. set zeny,zeny-50;
  630. getitem 1088,1; //Morocc_Potion
  631. }
  632. close;
  633. }
  634. geffen_in,177,112,4 script Bookshelf 111,{
  635. mes "[Guide Book]";
  636. mes "This Guide Book is the property of the Geffen Mage Association. Please handle with care.";
  637. next;
  638. switch(select("Solution No. 1.:Solution No. 2.:Solution No. 3.:Solution No. 4.:Close.")) {
  639. case 1:
  640. mes "[Mage Test Solution No. 1]";
  641. mes "* Ingredients List *";
  642. mes "2 Jellopy";
  643. mes "3 Fluff";
  644. mes "1 Milk";
  645. next;
  646. mes "[Mage Test Solution No. 1]";
  647. mes "* Solvent Agent *";
  648. mes "Payon Solution";
  649. mes "Where to Find:";
  650. mes "A small spring in Payon, the Archer Village.";
  651. next;
  652. mes "[Mage Test Solution No. 1]";
  653. mes "* Magic Power Serial Code *";
  654. mes "8472";
  655. next;
  656. mes "[Mage Test Solution No. 1]";
  657. mes "* Catalyst *";
  658. mes "Yellow Gemstone";
  659. mes "(Provided by";
  660. mes "Mixing Machine)";
  661. close;
  662. case 2:
  663. mes "[Mage Test Solution No. 2]";
  664. mes "* Ingredients List *";
  665. mes "3 Jellopy";
  666. mes "1 Fluff";
  667. mes "1 Milk";
  668. next;
  669. mes "[Mage Test Solution No. 2]";
  670. mes "* Solvent Agent *";
  671. mes "None";
  672. next;
  673. mes "[Mage Test Solution No. 2]";
  674. mes "* Magic Power Serial Code *";
  675. mes "3735";
  676. next;
  677. mes "[Mage Test Solution No. 2]";
  678. mes "* Catalyst *";
  679. mes "Red Gemstone";
  680. mes "(Provided by";
  681. mes "Mixing Machine)";
  682. close;
  683. case 3:
  684. mes "[Mage Test Solution No. 3]";
  685. mes "* Ingredients List *";
  686. mes "6 Jellopy";
  687. mes "1 Fluff";
  688. next;
  689. mes "[Mage Test Solution No. 3]";
  690. mes "* Solvent Agent *";
  691. mes "Payon Solution";
  692. mes "Where to Find:";
  693. mes "A small spring in Payon, the Archer Village.";
  694. next;
  695. mes "[Mage Test Solution No. 3]";
  696. mes "* Magic Power Serial Code *";
  697. mes "2750";
  698. next;
  699. mes "[Mage Test Solution No. 3]";
  700. mes "* Catalyst *";
  701. mes "Blue Gemstone";
  702. mes "(Provided by";
  703. mes "Mixing Machine)";
  704. close;
  705. case 4:
  706. mes "[Mage Test Solution No. 4]";
  707. mes "* Ingredients List *";
  708. mes "2 Jellopy";
  709. mes "3 Fluff";
  710. next;
  711. mes "[Mage Test Solution No. 4]";
  712. mes "* Solvent Agent *";
  713. mes "Morroc Solution";
  714. mes "Where to Find:";
  715. mes "A small spring near entrance of pyramid in Morroc.";
  716. next;
  717. mes "[Mage Test Solution No. 4]";
  718. mes "* Magic Power Serial Code *";
  719. mes "5429";
  720. next;
  721. mes "[Mage Test Solution No. 4]";
  722. mes "* Catalyst *";
  723. mes "1 carat Diamond";
  724. mes "(Provided by";
  725. mes "Mixing Machine)";
  726. close;
  727. }
  728. close;
  729. }