mercenary_rent.txt 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787
  1. //===== eAthena Script =======================================
  2. //===== eAthena Script =======================================
  3. //= Mercenary related NPCs
  4. //===== By: ==================================================
  5. //= L0ne_W0lf
  6. //===== Current Version: =====================================
  7. //= 1.3
  8. //===== Compatible With: =====================================
  9. //= eAthena SVN
  10. //===== Description: =========================================
  11. //= [Aegis Conversion]
  12. //= Sells Lancer, Sword, and Archer, mercenaries
  13. //= Sells related mercenary items.
  14. //===== Additional Comments: =================================
  15. //= 1.0 First version. [L0ne_W0lf]
  16. //= 1.1 Optimization. [Zephyrus]
  17. //= 1.2 Removed redundent input. [L0ne_W0lf]
  18. //= 1.3 Duplicates now spawned from floating NPCs. [L0ne_W0lf]
  19. //============================================================
  20. prontera,41,337,5 script Mercenary Manager#Spear 105,{
  21. set .@faith_lancer, mercenary_get_faith(SPEAR_MERC_GUILD);
  22. mes "[Mercenary Manager]";
  23. mes "Welcome to the";
  24. mes "Spear Mercenary Guild.";
  25. mes "What can I do for you?";
  26. next;
  27. switch( select("Hire Mercenary:Mercenary Info:Nothing:10th Grade Mercenaries") )
  28. {
  29. case 1:
  30. mes "[Mercenary Manager]";
  31. mes "You want to hire a";
  32. mes "Spear Mercenary?";
  33. mes "Which Grade were you";
  34. mes "interested in hiring?";
  35. next;
  36. set .@Grade, select("1st Grade Spear Mercenary:2nd Grade Spear Mercenary:3rd Grade Spear Mercenary:4th Grade Spear Mercenary:5th Grade Spear Mercenary:6th Grade Spear Mercenary:7th Grade Spear Mercenary:8th Grade Spear Mercenary:9th Grade Spear Mercenary");
  37. set .@BaseLevel, 5 + (.@Grade * 10);
  38. if( .@BaseLevel > 90 )
  39. set .@BaseLevel, 90;
  40. set .@ZenyCost, 7 * .@Grade;
  41. if( .@Grade == 7 )
  42. set .@FaithCost, 50;
  43. else if( .@Grade == 8 )
  44. set .@FaithCost, 100;
  45. else if( .@Grade == 9 )
  46. set .@FaithCost, 300;
  47. else
  48. set .@FaithCost, 0;
  49. mes "[Mercenary Manager]";
  50. if( .@Grade == 1 )
  51. mes "So you want to hire a 1st";
  52. else if( .@Grade == 2 )
  53. mes "So you want to hire a 2nd";
  54. else if( .@Grade == 3 )
  55. mes "So you want to hire a 3rd";
  56. else
  57. mes "So you want to hire a " + .@Grade + "th";
  58. mes "Grade Spear Mercenary?";
  59. mes "You need to have attained";
  60. mes "Base Level " + .@BaseLevel + " or higher, and";
  61. mes "must pay the " + .@ZenyCost + ",000 zeny fee.";
  62. next;
  63. if( select("Yes:No") == 2 )
  64. {
  65. mes "[Mercenary Manager]";
  66. mes "Oh, really? Well, now";
  67. mes "might not be a good time";
  68. mes "for you to consider hiring";
  69. mes "a Mercenary, but please feel";
  70. mes "free to come back if your";
  71. mes "needs change. Thank you~";
  72. }
  73. else if( .@FaithCost && .@faith_lancer < .@FaithCost )
  74. {
  75. mes "[Mercenary Manager]";
  76. mes "Oh... Your Loyalty rating";
  77. mes "with the Spear Mercenary";
  78. mes "Guild isn't high enough to";
  79. mes "hire this Mercenary. Please";
  80. mes "come back after you earn";
  81. mes "" + .@FaithCost + " or more Loyalty with us.";
  82. }
  83. else if( BaseLevel < .@BaseLevel )
  84. {
  85. mes "[Mercenary Manager]";
  86. mes "I'm sorry, but your Base";
  87. mes "Level isn't high enough";
  88. mes "to hire this Mercenary.";
  89. mes "Please come back to me";
  90. mes "once you reach Base Level " + .@BaseLevel + ".";
  91. }
  92. else if( Zeny < .@ZenyCost * 1000 )
  93. {
  94. mes "[Mercenary Manager]";
  95. mes "I'm sorry, but you";
  96. mes "don't have enough zeny";
  97. mes "to hire this Mercenary.";
  98. mes "The hiring fee is " + .@ZenyCost + ",000 zeny.";
  99. }
  100. else
  101. {
  102. mes "[Mercenary Manager]";
  103. mes "Great! Our Mercenaries";
  104. mes "are sincere and devoted";
  105. mes "to protecting their clients.";
  106. mes "Summoned Mercenaries will";
  107. mes "offer their support to you for";
  108. mes "30 minutes. Take care now.";
  109. set Zeny, Zeny - (.@ZenyCost * 1000);
  110. getitem 12172 + .@Grade, 1;
  111. }
  112. close;
  113. case 2:
  114. mes "[Mercenary Manager]";
  115. mes "Mercenaries are soldiers";
  116. mes "that will fight at your side";
  117. mes "on the battlefield, but there";
  118. mes "are a few terms and conditions";
  119. mes "you must fulfill to hire them.";
  120. next;
  121. mes "[Mercenary Manager]";
  122. mes "You must fulfill a level";
  123. mes "requirement and pay a zeny";
  124. mes "fee to hire a Mercenary.";
  125. mes "Higher grade Mercenaries";
  126. mes "will also require that you";
  127. mes "build a Loyalty rating with us.";
  128. next;
  129. mes "[Mercenary Manager]";
  130. mes "Mercenary contracts can't be";
  131. mes "transferred to other people,";
  132. mes "and we only allow a 5 Base Level difference between the Mercenary";
  133. mes "and client so you can't hire one much stronger than you.";
  134. next;
  135. mes "[Mercenary Manager]";
  136. mes "Well, you can figure out the";
  137. mes "details when you actually form";
  138. mes "a contract with one of our";
  139. mes "Mercenaries, and receive";
  140. mes "the Summon Scroll that will";
  141. mes "call a Mercenary to your side.";
  142. next;
  143. mes "[Mercenary Manager]";
  144. mes "You can't give this scroll";
  145. mes "to anyone else, and the";
  146. mes "Mercenary will only remain";
  147. mes "with you for 30 minutes after";
  148. mes "you summon him. Don't forget";
  149. mes "about the time limit, okay?";
  150. close;
  151. case 3:
  152. mes "[Mercenary Manager]";
  153. mes "No? You didn't need any";
  154. mes "help? Well, feel free to";
  155. mes "ask me if you have any";
  156. mes "questions about Mercenaries.";
  157. close;
  158. case 4:
  159. mes "[Mercenary Manager]";
  160. mes "10th Grade Mercenaries are";
  161. mes "the best we have to offer,";
  162. mes "and we use different criteria";
  163. mes "for our clients to hire them.";
  164. mes "There's no zeny fee, but you";
  165. mes "must have 500 Loyalty.";
  166. next;
  167. mes "[Mercenary Manager]";
  168. mes "Once you make a contract";
  169. mes "with a 10th Grade Mercenary,";
  170. mes "your Loyalty rating will be";
  171. mes "decreased by 400. In other";
  172. mes "words, you pay 400 Loyalty";
  173. mes "to hire a 10th Grade Mercenary.";
  174. next;
  175. mes "[Mercenary Manager]";
  176. mes "You must also be at";
  177. mes "Base Level 90 or higher to";
  178. mes "hire a 10th Grade Mercenary.";
  179. mes "Are you still interested in";
  180. mes "forming this contract?";
  181. next;
  182. if( select("Yes:No") == 2 )
  183. {
  184. mes "[Mercenary Manager]";
  185. mes "I understand... It takes";
  186. mes "hard work and sacrifice to";
  187. mes "even reach the point where";
  188. mes "you can hire a 10th Grade";
  189. mes "Mercenary. Have you considered";
  190. mes "hiring a lower grade Mercenary?";
  191. }
  192. else if( .@faith_lancer < 500 )
  193. {
  194. mes "[Mercenary Manager]";
  195. mes "I'm sorry, but your";
  196. mes "Loyalty rating is too";
  197. mes "low to hire a 10th Grade";
  198. mes "Mercenary. You must have";
  199. mes "500 or more Loyalty to";
  200. mes "form a contract with one.";
  201. }
  202. else if( BaseLevel < 90 )
  203. {
  204. mes "[Mercenary Manager]";
  205. mes "I'm sorry, but you must";
  206. mes "be at Base Level 90 or";
  207. mes "higher to form a contract";
  208. mes "with a 10th Grade Mercenary.";
  209. }
  210. else
  211. {
  212. mes "[Mercenary Manager]";
  213. mes "Congratulations! It looks";
  214. mes "like you're planning in taking";
  215. mes "on some very dangerous work";
  216. mes "since you're hiring a 10th";
  217. mes "Grade Mercenary. I wish you";
  218. mes "the best of luck with him.";
  219. mercenary_set_faith SPEAR_MERC_GUILD,-400;
  220. getitem 12182,1;
  221. }
  222. close;
  223. }
  224. }
  225. izlude,47,139,5 script Mercenary Manager#Sword 734,{
  226. set .@faith_sword, mercenary_get_faith(SWORD_MERC_GUILD);
  227. mes "[Mercenary Manager]";
  228. mes "Welcome to the";
  229. mes "Sword Mercenary Guild.";
  230. mes "Did you have any questions?";
  231. next;
  232. switch( select("Hire Mercenary:Mercenary Info:Nothing:10th Grade Mercenaries") )
  233. {
  234. case 1:
  235. mes "[Mercenary Manager]";
  236. mes "You want to hire a";
  237. mes "Sword Mercenary?";
  238. mes "Which Grade were you";
  239. mes "interested in hiring?";
  240. next;
  241. set .@Grade, select("1st Grade Sword Mercenary:2nd Grade Sword Mercenary:3rd Grade Sword Mercenary:4th Grade Sword Mercenary:5th Grade Sword Mercenary:6th Grade Sword Mercenary:7th Grade Sword Mercenary:8th Grade Sword Mercenary:9th Grade Sword Mercenary");
  242. set .@BaseLevel, 5 + (.@Grade * 10);
  243. if( .@BaseLevel > 90 )
  244. set .@BaseLevel, 90;
  245. set .@ZenyCost, 7 * .@Grade;
  246. if( .@Grade == 7 )
  247. set .@FaithCost, 50;
  248. else if( .@Grade == 8 )
  249. set .@FaithCost, 100;
  250. else if( .@Grade == 9 )
  251. set .@FaithCost, 300;
  252. else
  253. set .@FaithCost, 0;
  254. mes "[Mercenary Manager]";
  255. if( .@Grade == 1 )
  256. mes "So you want to hire a 1st";
  257. else if( .@Grade == 2 )
  258. mes "So you want to hire a 2nd";
  259. else if( .@Grade == 3 )
  260. mes "So you want to hire a 3rd";
  261. else
  262. mes "So you want to hire a " + .@Grade + "th";
  263. mes "Grade Sword Mercenary?";
  264. mes "You need to have attained";
  265. mes "Base Level " + .@BaseLevel + " or higher, and";
  266. mes "must pay the " + .@ZenyCost + ",000 zeny fee.";
  267. next;
  268. if( select("Yes:No") == 2 )
  269. {
  270. mes "[Mercenary Manager]";
  271. mes "Oh, really? Well, now";
  272. mes "might not be a good time";
  273. mes "for you to consider hiring";
  274. mes "a Mercenary, but please feel";
  275. mes "free to come back if your";
  276. mes "needs change. Thank you~";
  277. }
  278. else if( .@FaithCost && .@faith_sword < .@FaithCost )
  279. {
  280. mes "[Mercenary Manager]";
  281. mes "Oh... Your Loyalty rating";
  282. mes "with the Sword Mercenary";
  283. mes "Guild isn't high enough to";
  284. mes "hire this Mercenary. Please";
  285. mes "come back after you earn";
  286. mes "" + .@FaithCost + " or more Loyalty with us.";
  287. }
  288. else if( BaseLevel < .@BaseLevel )
  289. {
  290. mes "[Mercenary Manager]";
  291. mes "I'm sorry, but your Base";
  292. mes "Level isn't high enough";
  293. mes "to hire this Mercenary.";
  294. mes "Please come back to me";
  295. mes "once you reach Base Level " + .@BaseLevel + ".";
  296. }
  297. else if( Zeny < .@ZenyCost * 1000 )
  298. {
  299. mes "[Mercenary Manager]";
  300. mes "I'm sorry, but you";
  301. mes "don't have enough zeny";
  302. mes "to hire this Mercenary.";
  303. mes "The hiring fee is " + .@ZenyCost + ",000 zeny.";
  304. }
  305. else
  306. {
  307. mes "[Mercenary Manager]";
  308. mes "Great! Our Mercenaries";
  309. mes "are sincere and devoted";
  310. mes "to protecting their clients.";
  311. mes "Summoned Mercenaries will";
  312. mes "offer their support to you for";
  313. mes "30 minutes. Take care now.";
  314. set Zeny, Zeny - (.@ZenyCost * 1000);
  315. getitem 12162 + .@Grade, 1;
  316. }
  317. close;
  318. case 2:
  319. mes "[Mercenary Manager]";
  320. mes "Mercenaries are soldiers";
  321. mes "that will fight at your side";
  322. mes "on the battlefield, but there";
  323. mes "are a few terms and conditions";
  324. mes "you must fulfill to hire them.";
  325. next;
  326. mes "[Mercenary Manager]";
  327. mes "You must fulfill a level";
  328. mes "requirement and pay a zeny";
  329. mes "fee to hire a Mercenary.";
  330. mes "Higher grade Mercenaries";
  331. mes "will also require that you";
  332. mes "build a Loyalty rating with us.";
  333. next;
  334. mes "[Mercenary Manager]";
  335. mes "Mercenary contracts can't be";
  336. mes "transferred to other people,";
  337. mes "and we only allow a 5 Base Level difference between the Mercenary";
  338. mes "and client so you can't hire one much stronger than you.";
  339. next;
  340. mes "[Mercenary Manager]";
  341. mes "Well, you can figure out the";
  342. mes "details when you actually form";
  343. mes "a contract with one of our";
  344. mes "Mercenaries, and receive";
  345. mes "the Summon Scroll that will";
  346. mes "call a Mercenary to your side.";
  347. next;
  348. mes "[Mercenary Manager]";
  349. mes "You can't give this scroll";
  350. mes "to anyone else, and the";
  351. mes "Mercenary will only remain";
  352. mes "with you for 30 minutes after";
  353. mes "you summon him. Don't forget";
  354. mes "about the time limit, okay?";
  355. close;
  356. case 3:
  357. mes "[Mercenary Manager]";
  358. mes "No? You didn't need any";
  359. mes "help? Well, feel free to";
  360. mes "ask me if you have any";
  361. mes "questions about Mercenaries.";
  362. close;
  363. case 4:
  364. mes "[Mercenary Manager]";
  365. mes "10th Grade Mercenaries are";
  366. mes "the best we have to offer,";
  367. mes "and we use different criteria";
  368. mes "for our clients to hire them.";
  369. mes "There's no zeny fee, but you";
  370. mes "must have 500 Loyalty.";
  371. next;
  372. mes "[Mercenary Manager]";
  373. mes "Once you make a contract";
  374. mes "with a 10th Grade Mercenary,";
  375. mes "your Loyalty rating will be";
  376. mes "decreased by 400. In other";
  377. mes "words, you pay 400 Loyalty";
  378. mes "to hire a 10th Grade Mercenary.";
  379. next;
  380. mes "[Mercenary Manager]";
  381. mes "You must also be at";
  382. mes "Base Level 90 or higher to";
  383. mes "hire a 10th Grade Mercenary.";
  384. mes "Are you still interested in";
  385. mes "forming this contract?";
  386. next;
  387. if( select("Yes:No") == 2 )
  388. {
  389. mes "[Mercenary Manager]";
  390. mes "I understand... It takes";
  391. mes "hard work and sacrifice to";
  392. mes "even reach the point where";
  393. mes "you can hire a 10th Grade";
  394. mes "Mercenary. Have you considered";
  395. mes "hiring a lower grade Mercenary?";
  396. }
  397. else if( .@faith_sword < 500 )
  398. {
  399. mes "[Mercenary Manager]";
  400. mes "I'm sorry, but your";
  401. mes "Loyalty rating is too";
  402. mes "low to hire a 10th Grade";
  403. mes "Mercenary. You must have";
  404. mes "500 or more Loyalty to";
  405. mes "form a contract with one.";
  406. }
  407. else if( BaseLevel < 90 )
  408. {
  409. mes "[Mercenary Manager]";
  410. mes "I'm sorry, but you must";
  411. mes "be at Base Level 90 or";
  412. mes "higher to form a contract";
  413. mes "with a 10th Grade Mercenary.";
  414. }
  415. else
  416. {
  417. mes "[Mercenary Manager]";
  418. mes "Congratulations! It looks";
  419. mes "like you're planning in taking";
  420. mes "on some very dangerous work";
  421. mes "since you're hiring a 10th";
  422. mes "Grade Mercenary. I wish you";
  423. mes "the best of luck with him.";
  424. mercenary_set_faith SWORD_MERC_GUILD,-400;
  425. getitem 12172,1;
  426. }
  427. close;
  428. }
  429. }
  430. pay_arche,99,167,4 script Mercenary Manager#Bow 732,{
  431. set .@faith_archer, mercenary_get_faith(ARCH_MERC_GUILD);
  432. mes "[Mercenary Manager]";
  433. mes "Welcome to the";
  434. mes "Bow Mercenary Guild.";
  435. mes "How can I be of service?";
  436. next;
  437. switch( select("Hire Mercenary:Mercenary Info:Nothing:10th Grade Mercenaries") )
  438. {
  439. case 1:
  440. mes "[Mercenary Manager]";
  441. mes "You want to hire";
  442. mes "a Bow Mercenary?";
  443. mes "Which Grade were you";
  444. mes "interested in hiring?";
  445. next;
  446. set .@Grade, select("1st Grade Bow Mercenary:2nd Grade Bow Mercenary:3rd Grade Bow Mercenary:4th Grade Bow Mercenary:5th Grade Bow Mercenary:6th Grade Bow Mercenary:7th Grade Bow Mercenary:8th Grade Bow Mercenary:9th Grade Bow Mercenary");
  447. set .@BaseLevel, 5 + (.@Grade * 10);
  448. if( .@BaseLevel > 90 )
  449. set .@BaseLevel, 90;
  450. set .@ZenyCost, 7 * .@Grade;
  451. if( .@Grade == 7 )
  452. set .@FaithCost, 50;
  453. else if( .@Grade == 8 )
  454. set .@FaithCost, 100;
  455. else if( .@Grade == 9 )
  456. set .@FaithCost, 300;
  457. else
  458. set .@FaithCost, 0;
  459. mes "[Mercenary Manager]";
  460. if( .@Grade == 1 )
  461. mes "So you want to hire a 1st";
  462. else if( .@Grade == 2 )
  463. mes "So you want to hire a 2nd";
  464. else if( .@Grade == 3 )
  465. mes "So you want to hire a 3rd";
  466. else
  467. mes "So you want to hire a " + .@Grade + "th";
  468. mes "Grade Bow Mercenary?";
  469. mes "You need to have attained";
  470. mes "Base Level " + .@BaseLevel + " or higher, and";
  471. mes "must pay the " + .@ZenyCost + ",000 zeny fee.";
  472. next;
  473. if( select("Yes:No") == 2 )
  474. {
  475. mes "[Mercenary Manager]";
  476. mes "Oh, really? Well, now";
  477. mes "might not be a good time";
  478. mes "for you to consider hiring";
  479. mes "a Mercenary, but please feel";
  480. mes "free to come back if your";
  481. mes "needs change. Thank you~";
  482. }
  483. else if( .@FaithCost && .@faith_archer < .@FaithCost )
  484. {
  485. mes "[Mercenary Manager]";
  486. mes "I'm sorry, but your";
  487. mes "Loyalty rating is too";
  488. mes "low to hire this Bow";
  489. mes "Mercenary. Come back";
  490. mes "again when you have";
  491. mes "" + .@FaithCost + " or more Loyalty.";
  492. }
  493. else if( BaseLevel < .@BaseLevel )
  494. {
  495. mes "[Mercenary Manager]";
  496. mes "I'm sorry, but your Base";
  497. mes "Level isn't high enough";
  498. mes "to hire this Mercenary.";
  499. mes "Please come back to me";
  500. mes "once you reach Base Level " + .@BaseLevel + ".";
  501. }
  502. else if( Zeny < .@ZenyCost * 1000 )
  503. {
  504. mes "[Mercenary Manager]";
  505. mes "I'm sorry, but you";
  506. mes "don't have enough zeny";
  507. mes "to hire this Mercenary.";
  508. mes "The hiring fee is " + .@ZenyCost + ",000 zeny.";
  509. }
  510. else
  511. {
  512. mes "[Mercenary Manager]";
  513. mes "Great! Our Mercenaries";
  514. mes "are sincere and devoted";
  515. mes "to protecting their clients.";
  516. mes "Summoned Mercenaries will";
  517. mes "offer their support to you for";
  518. mes "30 minutes. Take care now.";
  519. set Zeny, Zeny - (.@ZenyCost * 1000);
  520. getitem 12152 + .@Grade, 1;
  521. }
  522. close;
  523. case 2:
  524. mes "[Mercenary Manager]";
  525. mes "Mercenaries are soldiers";
  526. mes "that will fight at your side";
  527. mes "on the battlefield, but there";
  528. mes "are a few terms and conditions";
  529. mes "you must fulfill to hire them.";
  530. next;
  531. mes "[Mercenary Manager]";
  532. mes "You must fulfill a level";
  533. mes "requirement and pay a zeny";
  534. mes "fee to hire a Mercenary.";
  535. mes "Higher grade Mercenaries";
  536. mes "will also require that you";
  537. mes "build a Loyalty rating with us.";
  538. next;
  539. mes "[Mercenary Manager]";
  540. mes "Mercenary contracts can't be";
  541. mes "transferred to other people,";
  542. mes "and we only allow a 5 Base Level difference between the Mercenary";
  543. mes "and client so you can't hire one much stronger than you.";
  544. next;
  545. mes "[Mercenary Manager]";
  546. mes "Well, you can figure out the";
  547. mes "details when you actually form";
  548. mes "a contract with one of our";
  549. mes "Mercenaries, and receive";
  550. mes "the Summon Scroll that will";
  551. mes "call a Mercenary to your side.";
  552. next;
  553. mes "[Mercenary Manager]";
  554. mes "You can't give this scroll";
  555. mes "to anyone else, and the";
  556. mes "Mercenary will only remain";
  557. mes "with you for 30 minutes after";
  558. mes "you summon him. Don't forget";
  559. mes "about the time limit, okay?";
  560. close;
  561. case 3:
  562. mes "[Mercenary Manager]";
  563. mes "No? You didn't need any";
  564. mes "help? Well, feel free to";
  565. mes "ask me if you have any";
  566. mes "questions about Mercenaries.";
  567. close;
  568. case 4:
  569. mes "[Mercenary Manager]";
  570. mes "10th Grade Mercenaries are";
  571. mes "the best we have to offer,";
  572. mes "and we use different criteria";
  573. mes "for our clients to hire them.";
  574. mes "There's no zeny fee, but you";
  575. mes "must have 500 Loyalty.";
  576. next;
  577. mes "[Mercenary Manager]";
  578. mes "Once you make a contract";
  579. mes "with a 10th Grade Mercenary,";
  580. mes "your Loyalty rating will be";
  581. mes "decreased by 400. In other";
  582. mes "words, you pay 400 Loyalty";
  583. mes "to hire a 10th Grade Mercenary.";
  584. next;
  585. mes "[Mercenary Manager]";
  586. mes "You must also be at";
  587. mes "Base Level 90 or higher to";
  588. mes "hire a 10th Grade Mercenary.";
  589. mes "Are you still interested in";
  590. mes "forming this contract?";
  591. next;
  592. if( select("Yes:No") == 2 )
  593. {
  594. mes "[Mercenary Manager]";
  595. mes "I understand... It takes";
  596. mes "hard work and sacrifice to";
  597. mes "even reach the point where";
  598. mes "you can hire a 10th Grade";
  599. mes "Mercenary. Have you considered";
  600. mes "hiring a lower grade Mercenary?";
  601. }
  602. else if( .@faith_archer < 500 )
  603. {
  604. mes "[Mercenary Manager]";
  605. mes "I'm sorry, but your";
  606. mes "Loyalty rating is too";
  607. mes "low to hire a 10th Grade";
  608. mes "Mercenary. You must have";
  609. mes "500 or more Loyalty to";
  610. mes "form a contract with one.";
  611. }
  612. else if( BaseLevel < 90 )
  613. {
  614. mes "[Mercenary Manager]";
  615. mes "I'm sorry, but you must";
  616. mes "be at Base Level 90 or";
  617. mes "higher to form a contract";
  618. mes "with a 10th Grade Mercenary.";
  619. }
  620. else
  621. {
  622. mes "[Mercenary Manager]";
  623. mes "Congratulations! It looks";
  624. mes "like you're planning in taking";
  625. mes "on some very dangerous work";
  626. mes "since you're hiring a 10th";
  627. mes "Grade Mercenary. I wish you";
  628. mes "the best of luck with him.";
  629. mercenary_set_faith ARCH_MERC_GUILD,-400;
  630. getitem 12162,1;
  631. }
  632. close;
  633. }
  634. }
  635. // Mercenary Merchant NPCs
  636. //============================================================
  637. - script Mercenary Merchant#dummy::MercMerchant -1,{
  638. mes "[Mercenary Goods Merchant]";
  639. mes "Hello, I sell goods";
  640. mes "that Mercenaries can";
  641. mes "use. Is there anything";
  642. mes "in particular that";
  643. mes "you're looking for?";
  644. next;
  645. switch(select("Mercenary Red Potion:Mercenary Blue Potion:Mercenary Concentration Potion:Mercenary Awakening Potion:Mercenary Berserk Potion")) {
  646. case 1:
  647. mes "[Mercenary Goods Merchant]";
  648. mes "Mercenary Red Potions";
  649. mes "each cost 1,750 zeny.";
  650. mes "How many would you like?";
  651. next;
  652. callfunc "F_PurchaseMercItem",12184,1750;
  653. case 2:
  654. mes "[Mercenary Goods Merchant]";
  655. mes "Mercenary Blue Potions";
  656. mes "each cost 3,500 zeny.";
  657. mes "How many would you like?";
  658. next;
  659. callfunc "F_PurchaseMercItem",12185,3000;
  660. case 3:
  661. mes "[Mercenary Goods Merchant]";
  662. mes "Mercenary Concentration";
  663. mes "Potions each cost 560 zeny.";
  664. mes "How many would you like?";
  665. next;
  666. callfunc "F_PurchaseMercItem",12241,560;
  667. case 4:
  668. mes "[Mercenary Goods Merchant]";
  669. mes "Mercenary Awakening";
  670. mes "Potions each cost 1,050 zeny.";
  671. mes "How many would you like?";
  672. next;
  673. callfunc "F_PurchaseMercItem",12242,1050;
  674. case 5:
  675. mes "[Mercenary Goods Merchant]";
  676. mes "Mercenary Beserk Potions";
  677. mes "each cost 2,100 zeny.";
  678. mes "How many would you like?";
  679. next;
  680. callfunc "F_PurchaseMercItem",12243,2100;
  681. }
  682. close;
  683. }
  684. prontera,30,337,4 duplicate(MercMerchant) Mercenary Merchant#Spear 700
  685. izlude,56,139,4 duplicate(MercMerchant) Mercenary Merchant#Sword 892
  686. pay_arche,102,167,5 duplicate(MercMerchant) Mercenary Merchant#Bow 879
  687. // Function for selling items.
  688. //============================================================
  689. function script F_PurchaseMercItem {
  690. input .@input;
  691. if( .@input == 0 )
  692. {
  693. mes "[Mercenary Goods Merchant]";
  694. mes "You changed your mind?";
  695. mes "Alright, feel free to come";
  696. mes "back to me whenever you want";
  697. mes "to buy any Mercenary Potions.";
  698. }
  699. else if( .@input < 0 || .@input > 10000 )
  700. {
  701. mes "[Mercenary Goods Merchant]";
  702. mes "I'm sorry, but you";
  703. mes "can only buy up to";
  704. mes "10,000 of these potions";
  705. mes "at a time. Please enter";
  706. mes "a number from 1 to 10,000.";
  707. }
  708. else if( set(.@total_po, .@input * getarg(1)) > Zeny )
  709. {
  710. mes "[Mercenary Goods Merchant]";
  711. mes "I'm sorry, but you don't";
  712. mes "have enough zeny for this";
  713. mes "many potions. Well, I'll be";
  714. mes "be here when you're ready";
  715. mes "to purchase something";
  716. mes "for your Mercenaries.";
  717. }
  718. else if( checkweight(getarg(0), .@input) == 0 )
  719. {
  720. mes "[Mercenary Goods Merchant]";
  721. mes "If I gave you that many";
  722. mes "potions, you wouldn't be";
  723. mes "able to carry them with you.";
  724. mes "Please come back after";
  725. mes "you free up some space";
  726. mes "in your Inventory.";
  727. }
  728. else
  729. {
  730. mes "[Mercenary Goods Merchant]";
  731. if( .@input == 1 )
  732. {
  733. mes "Here's your Mercenary";
  734. switch( getarg(0) )
  735. {
  736. case 12148: mes "Red Potion. Thank you, and"; break;
  737. case 12149: mes "Blue Potion. Thank you, and"; break;
  738. case 12241: mes "Concentration Potion."; break;
  739. case 12242: mes "Awakening Potion."; break;
  740. case 12243: mes "Berserk Potion. Thank"; break;
  741. }
  742. mes "please come again when";
  743. mes "you need more potions";
  744. mes "for your Mercenaries.";
  745. }
  746. else
  747. {
  748. mes "Here you are, this is exactly";
  749. switch( getarg(0) )
  750. {
  751. case 12148: mes "" + .@input + " Mercenary Red Potions."; mes "Thank you, and please come"; break;
  752. case 12149: mes "" + .@input + " Mercenary Blue Potions."; mes "Thank you, and please come"; break;
  753. case 12241: mes "" + .@input + " Mercenary Concentration"; mes "Potions. Thank you, and please"; break;
  754. case 12242: mes "" + .@input + " Mercenary Awakening"; mes "Potions. Thank you, and please"; break;
  755. case 12243: mes "" + .@input + " Mercenary Berserk Potions."; mes "Thank you, and please come"; break;
  756. }
  757. mes "again when you need more";
  758. mes "potions for your Mercenaries.";
  759. }
  760. set Zeny, Zeny - .@total_po;
  761. getitem getarg(0), .@input;
  762. }
  763. close;
  764. }