swordman_skills.txt 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493
  1. //===== rAthena Script =======================================
  2. //= Swordsman Skills Quests
  3. //===== By: ==================================================
  4. //= kobra_k88
  5. //===== Current Version: =====================================
  6. //= 1.7
  7. //===== Compatible With: =====================================
  8. //= rAthena SVN
  9. //===== Description: =========================================
  10. //= Quests for skills: Fatal Blow, Mobile HP Recovery,
  11. // Auto-Berserk
  12. //===== Additional Comments: =================================
  13. //= 1.6 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
  14. //= 1.7 Updated to latest available official file. [Masao]
  15. //============================================================
  16. izlude_in,175,130,2 script Knight De Thomas 98,4,4,{
  17. if ((BaseJob == Job_Swordman) && (sm_movingrecovery_x < 1)) {
  18. mes "[De Thomas]";
  19. mes "Oh, no! You must have been hurt! Are you ok?";
  20. mes "You must have fought hard to get such serious injuries..";
  21. mes "Being a swordsman must come with a lot of responsibility and sacrifice.";
  22. next;
  23. mes "[De Thomas]";
  24. if (Sex == 0) {
  25. mes "For these swordsmen and knights, there is a wonderful skill.";
  26. }
  27. else {
  28. mes "For these swordswomen and knights, there is a wonderful skill young lady.";
  29. }
  30. mes "I present to you - HP Recovery While Moving!";
  31. mes "Body moving is a splendid skill";
  32. mes "that allows you to regain strength(HP)";
  33. mes "while you are moving!";
  34. next;
  35. mes "[De Thomas]";
  36. mes "It is currently under development";
  37. mes "so it may not recover that much,";
  38. mes "but it will help a little.";
  39. mes "What do you think? Would you like to learn this skill?";
  40. next;
  41. switch (select("What a nice skill! I want to learn it!:No, thank you.")) {
  42. case 1:
  43. mes "[De Thomas]";
  44. mes "Very well. I will tell you what you need to learn this skill.";
  45. mes "First, your job level must be higher than ^00880035^000000.";
  46. mes "You will also need ^008800200 empty bottles^000000.";
  47. mes "Why? Because it is proof that you fought fiercely to have used that many potions.";
  48. next;
  49. mes "[De Thomas]";
  50. mes "Also, the armor you used in battle.";
  51. mes "This is also proof of an experienced fighter.";
  52. mes "For the armor... your armor is perfect!";
  53. mes "Bring your armor!";
  54. mes "Last but not least... bring me one ^008800Moth Wing^000000.";
  55. next;
  56. switch (select("Eh? You need that, too?")) {
  57. case 1:
  58. mes "[De Thomas]";
  59. mes "Not really.. I don't really NEED it.";
  60. mes "It's just that my niece has gotten a bug hunting as a holiday task during the summer vacation.";
  61. mes "Of course! It would be much easier for me to get it myself.";
  62. mes "but I must work here all the time so I don't exactly have the time to go out and get it.";
  63. next;
  64. mes "[De Thomas]";
  65. mes "Don't you think it is pitiful that I have to stay in once place everyday, not being able to go outside?";
  66. mes "Please, find me one...*sniffsniff*";
  67. mes "If you don't...";
  68. set sm_movingrecovery_x,1;
  69. mes "You won't get anything! Muahahaha.";
  70. close;
  71. case 2:
  72. mes "[De Thomas]";
  73. mes "...";
  74. close;
  75. }
  76. }
  77. }
  78. else if ((BaseJob == Job_Swordman) && (sm_movingrecovery_x > 1)) {
  79. mes "[De Thomas]";
  80. mes "Oh, it's you?";
  81. mes "Long time no see!";
  82. mes "You seem healthier than before.";
  83. mes "Hahahaha!";
  84. mes "Take care! See you again!";
  85. close;
  86. }
  87. else if ((BaseJob == Job_Swordman) && (sm_movingrecovery_x == 1)) {
  88. mes "[De Thomas]";
  89. mes "Welcome back...";
  90. mes "are you ready to learn Body Movin'?";
  91. next;
  92. switch (select("Yes.:No, I'm not ready yet.")) {
  93. case 1:
  94. if ((JobLevel > 34) && (countitem(713) > 199) && (countitem(1058) > 0)) {
  95. mes "[De Thomas]";
  96. mes "Let's see.....";
  97. next;
  98. mes "[De Thomas]";
  99. mes "Ok! I shall now teach you...";
  100. mes "..The Body Movin' skill!";
  101. next;
  102. delitem 713,200; //Empty_Bottle
  103. delitem 1058,1; //Wing_Of_Moth
  104. skill "SM_MOVINGRECOVERY",1,0;
  105. set sm_movingrecovery_x,2;
  106. mes "[De Thomas]";
  107. mes "There you go!";
  108. mes "Try it yourself.";
  109. mes "But don't overdo it.";
  110. next;
  111. mes "[De Thomas]";
  112. mes "Oh yeah, I won't be needing your";
  113. mes "armor so you can keep it.";
  114. mes "..Good luck now!";
  115. close;
  116. }
  117. else if (JobLevel < 35) {
  118. mes "[De Thomas]";
  119. mes "Wait a second your Job level isn't above ^00880035^000000!";
  120. mes "Come back when it is.";
  121. close;
  122. }
  123. else if ((countitem(713) < 200) || (countitem(1058) < 1)) {
  124. mes "[De Thomas]";
  125. mes "You do not have all the items I asked for.";
  126. next;
  127. mes "[De Thomas]";
  128. mes "Remember I need, ^008800200 empty bottles^000000, your armor, and a ^008800Moth Wing^000000. Come back when you have it all.";
  129. close;
  130. }
  131. mes "[De Thomas]";
  132. mes "You do not have all the items I asked for.";
  133. next;
  134. mes "[De Thomas]";
  135. mes "Remember I need, ^008800200 empty bottles^000000, your armor, and a ^008800Moth Wing^000000. Come back when you have it all.";
  136. close;
  137. case 2:
  138. mes "[De Thomas]";
  139. mes "Is that so?";
  140. mes "Then come when you are prepared.";
  141. close;
  142. }
  143. }
  144. mes "[De Thomas]";
  145. mes "My name is De Thomas Carlos.";
  146. mes "Knight of Prontera's 3rd Calvary.";
  147. mes "I have a certain duty these days.";
  148. mes "Ehem! Need I say more.";
  149. close;
  150. }
  151. prt_in,75,88,5 script Leon Von Frich 85,3,3,{
  152. if ((BaseJob == Job_Swordman) && (JobLevel >= 25)) {
  153. if (sm_fatalblow_x == 1) {
  154. mes "[Leon]";
  155. mes "Eh?";
  156. mes "I was wondering who that was!";
  157. mes "Why it's you from before!";
  158. mes "Nice to see you again! How are you?";
  159. mes "Be careful! Hahaha!";
  160. close;
  161. }
  162. else if ((countitem(1752) > 9) && (countitem(1751) > 9) && (countitem(532) > 0) && (countitem(962) > 29) && (countitem(526) > 4) && (BaseJob == Job_Swordman) && (JobLevel >= 25)) {
  163. mes "[Leon]";
  164. mes "Ooh! You are more than ready";
  165. mes "to learn Fatal Blow!";
  166. mes "So how about it? Would you like to learn?";
  167. next;
  168. switch (select("Yes!:No, I don't want to.:But, what is Fatal Blow?")) {
  169. case 1:
  170. mes "[Leon]";
  171. mes "OK, lets begin!";
  172. next;
  173. delitem 1752,10; //Fire_Arrow
  174. delitem 1751,10; //Silver_Arrow
  175. delitem 532,1; //Banana_Juice
  176. delitem 962,30; //Tentacle
  177. delitem 526,5; //Royal_Jelly
  178. skill "SM_FATALBLOW",1,0;
  179. set sm_fatalblow_x,1;
  180. mes "[Leon]";
  181. mes "Success!";
  182. mes "Go use your new skill to its full potential.";
  183. mes "Hahahahahahahaha!";
  184. close;
  185. case 2:
  186. mes "[Leon]";
  187. mes "I don't like you!!!";
  188. close;
  189. case 3:
  190. mes "[Leon]";
  191. mes "I developed this skill recently.";
  192. mes "When you use bash, depending ";
  193. mes "on your level, you can stun ";
  194. mes "your opponent. .";
  195. mes "You have learned bash, haven't you?";
  196. next;
  197. mes "[Leon]";
  198. mes "What do you think. Stun is";
  199. mes "a very useful technique. Don't you find this skill attractive?";
  200. mes "When you think you do, just come right back to me!";
  201. close;
  202. }
  203. }
  204. else {
  205. mes "[Leon]";
  206. mes "Ooh! A young and strong swordsman!";
  207. next;
  208. mes "[Leon]";
  209. mes "Wow, seeing your arm, you must enjoy using bash?";
  210. next;
  211. menu "Eh, I.. just...",-;
  212. mes "[Leon]";
  213. if (Sex == 0) {
  214. mes "No need to be surprised.";
  215. mes "If you use a sword, of course you ought to have a good arm!";
  216. }
  217. else {
  218. mes "Nothing to be embarrassed about.";
  219. mes "Even if you are a female you need a strong arm to use a sword!";
  220. }
  221. mes "In times of only useless and lazy youngsters,";
  222. mes "I'm glad I met someone strong like you.";
  223. next;
  224. mes "[Leon]";
  225. mes "Yes, I would like to give a present to an awesome swordsman like you.";
  226. next;
  227. switch (select("What present?:It's ok.")) {
  228. case 1:
  229. mes "[Leon]";
  230. mes "Haha nothing special, but a skill to attack the vital point!";
  231. next;
  232. case 2:
  233. mes "[Leon]";
  234. mes "...Haha nothing special, just a skill that aims at the vital spot!";
  235. next;
  236. }
  237. mes "[Leon]";
  238. mes "It's a skill I developed recently.";
  239. mes "When you use bash, depending on";
  240. mes "your level, your opponent can";
  241. mes "become stunned.";
  242. mes "You have learned bash, haven't you?";
  243. next;
  244. mes "[Leon]";
  245. mes "When I was a swordsman like you,";
  246. mes "I used to enjoy using Bash. Every time, I thought";
  247. mes "- maybe the attack would be more powerful";
  248. mes "if I use stun at the same time.";
  249. next;
  250. mes "[Leon]";
  251. mes "I drew back from the battlefield to do research";
  252. mes "and finally, I developed this wonderful new skill!";
  253. mes "Would you like to learn this skill?";
  254. next;
  255. switch (select("Yes.:No.:Do you have any advice on how to eat sushi?")) {
  256. case 1:
  257. mes "[Leon]";
  258. mes "Ok. I'll tell you the requirements.";
  259. mes "First you need to have level 5 Bash.";
  260. mes "You will also need to prepare 10 Fire Arrows, 10 Silver Arrows, 1 bottle of Banana Juice, 30 Tentacles, and 5 bottles of Royal Jelly.";
  261. mes "They are.. somewhat like ingredients.";
  262. next;
  263. mes "[Leon]";
  264. mes "come to me again once you have all the materials.";
  265. mes "We shall talk then.";
  266. close;
  267. case 2:
  268. mes "[Leon]";
  269. mes "Hahahahahahahahahaha!";
  270. mes "... ";
  271. mes " ... ";
  272. mes " ...";
  273. mes "I'm at a loss of words!?";
  274. close;
  275. case 3:
  276. mes "[Sushi King Leon]";
  277. mes "The best way to eat sushi is";
  278. mes "with your hands.";
  279. mes "That is the basic.";
  280. mes "And dip the fish, not the rice,";
  281. mes "in the soy sauce.";
  282. next;
  283. mes "[Sushi King Leon]";
  284. mes "That way you get a richer flavor.";
  285. mes "Also, always eat the kind that is in season.";
  286. mes "Eating in the order of white fish then";
  287. mes "blue fish will make it taste better!";
  288. mes "Mmm! I like sushi~~!";
  289. close;
  290. }
  291. }
  292. }
  293. mes "[Leon]";
  294. mes "Oh, no! I have nothing to offer you!";
  295. mes "I can't say nice and fun things to anyone";
  296. mes "other than swordsmen!";
  297. mes "See you in a better world!";
  298. close;
  299. OnTouch:
  300. mes "[Leon]";
  301. mes "Hahahahahahaha!";
  302. mes "Hahahahahahaha!";
  303. close;
  304. }
  305. prt_in,94,57,3 script Juan 85,4,4,{
  306. if (BaseJob == Job_Swordman) {
  307. if (sm_autoberserk_x == 1) {
  308. mes "[Juan]";
  309. mes "Mmm? Long time no see!";
  310. mes "How are you?";
  311. mes "You got stronger than before.";
  312. mes "Many expect great things from you.";
  313. mes "You can do it.";
  314. close;
  315. }
  316. else if ((BaseJob == Job_Swordman) && (JobLevel < 10)) {
  317. mes "[?]";
  318. mes "What are you?";
  319. mes "Eh, still a beginner.";
  320. mes "I'm busy, so go train a little more";
  321. mes "before coming back.";
  322. close;
  323. }
  324. else if ((BaseJob == Job_Swordman) && ((JobLevel > 10) && (JobLevel < 30))) {
  325. mes "[Juan]";
  326. mes "Oh, nice to meet you.";
  327. mes "You can be on your way. (smiley~)";
  328. close;
  329. }
  330. else if ((countitem(924) > 34) && (countitem(958) > 9) && (countitem(957) > 9) && (countitem(518) > 9) && (BaseJob == Job_Swordman) && (JobLevel >= 30)) {
  331. mes "[Juan]";
  332. mes "Ooh. Young swordsman!";
  333. mes "You are ready to learn the";
  334. mes "newest skill, Auto Berserk?!";
  335. next;
  336. switch (select("Hoho, I would like to learn it now.:What is that?")) {
  337. case 1:
  338. mes "[Juan]";
  339. mes "Ok. Then..";
  340. next;
  341. delitem 924,35; //Powder_Of_Butterfly
  342. delitem 958,10; //Horrendous_Mouth
  343. delitem 957,10; //Decayed_Nail
  344. delitem 518,10; //Honey
  345. skill "SM_AUTOBERSERK",1,0;
  346. set sm_autoberserk_x,1;
  347. mes "[Juan]";
  348. mes "You have just become a swordsman";
  349. mes "that can use Auto Berserk.";
  350. mes "You can go about ";
  351. mes "and achieve great things!";
  352. next;
  353. mes "[Juan]";
  354. mes "Good luck!";
  355. next;
  356. mes "[Juan]";
  357. mes "....................................oh yeah.";
  358. mes "I forgot to say something.";
  359. mes "There are some things you must keep in mind.";
  360. next;
  361. mes "[Juan]";
  362. mes "Once you regain health,";
  363. mes "this skill will subside.";
  364. mes "Also, there isn't really a time limit";
  365. mes "but it can still disappear when";
  366. mes "it is attacked with a skill that can";
  367. mes "nullify provoke.";
  368. next;
  369. mes "[Juan]";
  370. mes "If you don't remember these characteristics,";
  371. mes "you may run into some problems on the battlefield";
  372. mes "when the skill disappears all of a sudden.";
  373. next;
  374. mes "[Juan]";
  375. mes "Then... bye for real~";
  376. close;
  377. case 2:
  378. mes "[Juan]";
  379. mes "Auto Berserk?";
  380. mes "It's a skill crucial on the battlefield.";
  381. mes "When your health is in red,";
  382. mes "your hidden potential provokes yourself";
  383. mes "to help you in battle.";
  384. next;
  385. mes "[Juan]";
  386. mes "It is perfect for those that";
  387. mes "fight on the battlefield like fire!";
  388. mes "With your ability, you can learn";
  389. mes "this skill right now.";
  390. mes "Then, I shall tell you the necessary materials.";
  391. next;
  392. mes "[Juan]";
  393. mes "You need 35 Powder of Butterfly.";
  394. mes "The energy from the magnificent";
  395. mes "wings of a butterfly will";
  396. mes "help you gather your strength!";
  397. mes "And 10 Horrendous Mouth.";
  398. mes "10 Decayed Nail.";
  399. mes "and last but not least...";
  400. mes "10 Honey!";
  401. next;
  402. mes "[Juan]";
  403. mes "Did you get all that down?";
  404. mes "As always, please come back";
  405. mes "when you are ready.";
  406. mes "I look forward to seeing you again.";
  407. close;
  408. }
  409. }
  410. mes "[Juan]";
  411. mes "Oh no, you have more injuries";
  412. mes "since the last time I saw you.";
  413. mes "You went into battle like this?";
  414. mes "Seems like you are straining yourself.";
  415. next;
  416. mes "[Juan]";
  417. mes "Even though you may have a lot of strength";
  418. mes "you can't do much when you reach your limits so";
  419. mes "don't overestimate your powers.";
  420. mes "Of course you could always use the";
  421. mes "skill we developed to overcome these limits.";
  422. next;
  423. switch (select("Eh! What are you talking about?:Haha, there can't be such a thing.:Keuuuuuuuh!")) {
  424. case 1:
  425. mes "[Juan]";
  426. mes "The skill is called Berserk.";
  427. mes "It is deemed the flower of a battlefield.";
  428. mes "When your health is red,";
  429. mes "your hidden potential is provokes yourself";
  430. mes "to help you in battle.";
  431. next;
  432. mes "[Juan]";
  433. mes "It is perfect for those that";
  434. mes "fight on the battlefield like fire!";
  435. mes "With your ability, you can learn";
  436. mes "this skill right now.";
  437. mes "Then, I shall tell you the necessary materials.";
  438. next;
  439. mes "[Juan]";
  440. mes "You need 35 Powder of Butterfly.";
  441. mes "The energy from the magnificent";
  442. mes "wings of a butterfly will";
  443. mes "help you gather your strength!";
  444. mes "And 10 Horrendous Mouth.";
  445. mes "10 Decayed Nail.";
  446. mes "and last but not least...";
  447. mes "10 Honeys!";
  448. next;
  449. mes "[Juan]";
  450. mes "Did you get all that down?";
  451. mes "As always, please come back";
  452. mes "when you are ready.";
  453. mes "I look forward to seeing you again.";
  454. close;
  455. case 2:
  456. mes "[Juan]";
  457. mes "Bleh, were you fooled all your life.";
  458. mes "I don't know. Don't talk to me.";
  459. close;
  460. case 3:
  461. mes "[Juan]";
  462. mes "Keuuuuuuuuuuuuuh!";
  463. mes "Ooowwwwwuuuuuuuuuuuuuhhh!";
  464. mes "Keuaaaaaaaaaaah!";
  465. close;
  466. }
  467. }
  468. mes "[Juan]";
  469. mes "Are you enjoying your trip?";
  470. mes "I hope you have nice days ahead of you.";
  471. mes "Ah, I am just a kind knight Juan.";
  472. mes "Don't worry about me too much. Hahaha...";
  473. close;
  474. }
  475. //============================================================
  476. // Old changelog
  477. //============================================================
  478. //= Fully working
  479. //= 1.0a Now using functions found in "Global_Functions.txt"
  480. //= for class checks.
  481. //= 1.1 Added missing delitem [Lupus]
  482. //= 1.2 Added Baby Class Support [Lupus]
  483. //= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
  484. //= 1.4 Updated the NPC to allow subclasses of swordsman to learn the skills, [MasterOfMuppets]
  485. //= 1.5 Fixed exploits [Lupus]
  486. //= 1.5a Fixed some typos [IVBela]
  487. //============================================================