thief_skills.txt 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. //===== eAthena Script =======================================
  2. //= Thief Skills Quests
  3. //===== By: ==================================================
  4. //= kobra_k88
  5. //===== Current Version: =====================================
  6. //= 1.4
  7. //===== Compatible With: =====================================
  8. //= eAthena 7.15 +
  9. //===== Description: =========================================
  10. //= Sand Attack, Back Slide, Find Stone, Stone Fling skill quests.
  11. //===== Additional Comments: =================================
  12. //= v1.0 Fully working
  13. //= v1.1 Changed Sand Attack requirements from 5 Grit to 5 Fine Grit and a
  14. //= Leather Bag of Infinity. These are the official RO requirments
  15. //= Added npc RuRumuni, maker of Leather Bag of Infinity. [kobra_k88]
  16. //= v1.1a Now using functions found in "Global_Functions.txt" for
  17. //= class checks.[kobra_k88]
  18. //= 1.2 Added Baby Class Support [Lupus]
  19. //= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
  20. //= 1.4 Fixed exploit [Lupus]
  21. //============================================================
  22. //======================================================================================================
  23. moc_prydb1.gat,154,128,4 script Alcouskou 118,{
  24. mes "[Alcouskou]";
  25. if(baseClass == Job_Thief) goto L_Start;
  26. if(BaseJob==Job_Novice) goto L_Novice;
  27. L_Other:
  28. mes "Your kind isn't welcome here.";
  29. close;
  30. L_Novice:
  31. mes "Although thieves and assasins have basic skills which aid them in their jobs, most don't have the 'special' skills which can make them truly great!";
  32. next;
  33. mes "[Alcouskou]";
  34. mes "I just happen to be the ONLY one who can teach them these skills!";
  35. mes "If you ever decide to become a Thief or an Assassin, come back here and I'll teach you these cool skills.";
  36. next;
  37. mes "[Alcouskou]";
  38. mes "And if you know anyone who already is one, send them to me. I'm willing to teach anyone who's interested.";
  39. close;
  40. L_Start:
  41. mes "During the course of your life you will experience many things.";
  42. mes "You many have trouble understanding the importance of some of these experiences, and may even consider them to be useless to you.";
  43. next;
  44. mes "[Alcouskou]";
  45. mes "But do not be to hastey with your judgement of them, for some of these experience may actually prove to be benificial for you.";
  46. next;
  47. mes "[Alcouskou]";
  48. mes "Let me explain:";
  49. M_Menu:
  50. next;
  51. menu "-Sand Attack",M_Sand, "-Back Slide",M_Back, "-Find Stone",M_Find, "-Stone Fling",M_Fling, "-I will be back later.",M_End;
  52. M_Sand:
  53. mes "[Alcouskou]";
  54. if(SANDATTACK == 1) goto L_Sand;
  55. if(getskilllv(149) > 0) goto L_GotSand;
  56. mes "The most important aspect of being a good Thief/Assassin is stealth. One should never be seen our touched unless he/she wants to be";
  57. next;
  58. mes "[Alcouskou]";
  59. mes "Some may consider this cowardly but I don't see it that way.";
  60. mes "We live in a world where it is the survival of the fittest and you must do whatever it takes to survive.....";
  61. next;
  62. mes "[Alcouskou]";
  63. mes "Even if this means throwing sand in an enemy's face. That is why the skill, ^5555FFSand Attack^000000, was created.";
  64. next;
  65. mes "[Alcouskou]";
  66. mes "This skill allows the user to throw and kick sand in the eyes of an opponent, temporarily blinding them.";
  67. mes "This effectively impares the opponent's ability to defend or attack giving the user a brief but great advantage.";
  68. next;
  69. mes "[Alcouskou]";
  70. mes "In order to learn this skill you will need to gather ^5555FF5 Fine Grit^000000 and a ^FF3355'Leather Bag of Infinity'^000000.";
  71. if(BaseJob == Job_Thief) mes "You will also need a job level of at least ^5555FF25^000000.";
  72. next;
  73. mes "[Alcouskou]";
  74. mes "You can find the Leather Bag of Infinity by talking to a merchant by the name of ^5533FFRuRumuni^000000.";
  75. mes "He can be found in the ^009500West end of Payon^000000.";
  76. next;
  77. mes "[Alcouskou]";
  78. mes "Come back when you are ready.";
  79. set SANDATTACK, 1;
  80. goto M_Menu;
  81. M_Back:
  82. mes "[Alcouskou]";
  83. if (BACKSLIDE == 1)goto L_Back;
  84. if (getskilllv(150)>0) goto L_GotBack;
  85. mes "People tend to focus on attack and damage, but it's necessary to understand that FLEEING is JUST AS IMPORTANT as attacking!";
  86. next;
  87. mes "[Alcouskou]";
  88. mes "We thieves/assassins pride ourselves on our speed and ability to quickly dodge.";
  89. mes "Of course I'm sure you've noticed that there is a down side to that speed and quickness.....";
  90. next;
  91. mes "[Alcouskou]";
  92. mes "If we DO get hit, depending on the monster, that single hit could put us in serious danger!";
  93. next;
  94. mes "[Alcouskou]";
  95. mes "I can understand how funny it is to watch a monster constantly miss while its attacking you, but......";
  96. next;
  97. mes "[Alcouskou]";
  98. mes "If you get attacked by a large group of monsters..... you may not even have room to dodge and that won't be at all funny.";
  99. next;
  100. mes "[Alcouskou]";
  101. mes "That's why most Thiefs/Assassins fear large mobs and will flee at the first sign of them.";
  102. mes "There are those however, that do not fear being overwhelmed by a large mob.";
  103. next;
  104. mes "[Alcouskou]";
  105. mes "These are the people who have learned a unique skill that allows them to deal with mob situatuions.";
  106. mes "The skill enables the user to quickly 'back' out of the way of a mob, putting a great deal of distance between the two.";
  107. next;
  108. mes "[Alcouskou]";
  109. mes "The skill is called ^5555FFBack Slide^000000 and requires a lot of practice to master.";
  110. mes "If you wish to learn this skill you will first need to bring in ^5555FF20 Grasshopper's Legs^000000.";
  111. next;
  112. mes "[Alcouskou]";
  113. mes "Think of it as the first part of your training.";
  114. if(BaseJob == Job_Thief) mes "If you are a Thief, you will also need to have a job level of at least ^5555FF35^000000.";
  115. set BACKSLIDE, 1;
  116. goto M_Menu;
  117. M_Find:
  118. mes "[Alcouskou]";
  119. if (FINDSTONE == 1) goto L_Find;
  120. if (getskilllv(151)>0) goto L_GotFind;
  121. mes "The more experienced and better skilled members of our guild are quite handy.";
  122. mes "They can turn something as common as a rock on the ground into a very effective weapon.";
  123. next;
  124. mes "[Alcouskou]";
  125. mes "They can throw a rock at a far away target with great accuracy and strength.";
  126. mes "They can throw it so powerfully that sometimes an enemy will become stunned by it.";
  127. next;
  128. mes "[Alcouskou]";
  129. mes "Of course not every stone can be used as a weapon. That is why the skill, ^5555FFFind Sone^000000, was developed.";
  130. mes "With practice one can learn to pick out a stone that has a weight and shape that is fit for 'flinging'.";
  131. next;
  132. mes "[Alcouskou]";
  133. mes "Once mastered a Thieve/Assassin will be able to pick up stones from any location.";
  134. mes "Think about it... the ability to use a long range weapon without spending any zeny.... isn't it great?";
  135. next;
  136. mes "[Alcouskou]";
  137. mes "If you wan't to learn this skill you must do a little training first. Start by picking up ^5555FF1 Bear's Footskin^000000.";
  138. mes "Then try to find ^5555FF1 Zargon^000000. Next pick out ^5555FF5 Spawn^000000. Once you've done all this come back and see me.";
  139. next;
  140. mes "[Alcouskou]";
  141. mes "Collecting those items will help you develop the skills neccessary to learn Find Stone.";
  142. set FINDSTONE, 1;
  143. goto M_Menu;
  144. M_Fling:
  145. mes "[Alcouskou]";
  146. if (STONEFLING == 1) goto L_Fling;
  147. if (getskilllv(152)>0) goto L_GotFling;
  148. mes "The more experienced and better skilled members of our guild are quite handy.";
  149. mes "They can turn something as common as a rock on the ground into a very effective weapon.";
  150. next;
  151. mes "[Alcouskou]";
  152. mes "They can throw a stone at a far away target with great accuracy and strength.";
  153. mes "They can throw it so powerfully that sometimes an enemy will become stunned by it.";
  154. next;
  155. mes "[Alcouskou]";
  156. mes "These guild members call this skill ^5555FFStone Fling^000000. It is extrememly useful and doesn't cost any zeny.";
  157. next;
  158. mes "[Alcouskou]";
  159. mes "If you wish to learn Stone Fling you must first bring me ^5555FF2 Garlet and 2 Scell^000000.";
  160. mes "You will also need to have mastered ^5555FFFind Stone^000000 as well.";
  161. set STONEFLING, 1;
  162. goto M_Menu;
  163. M_End:
  164. mes "[Alcouskou]";
  165. mes "It seems that you are not experienced enough yet....";
  166. close;
  167. L_Sand:
  168. if (countitem(7041)<5 || countitem(7042)<1) goto L_NotRdy1;
  169. if (BaseJob==Job_Thief && JobLevel<25) goto L_LowLvl1;
  170. delitem 7041, 5;
  171. delitem 7042, 1;
  172. mes "Alright, you've got all the items. Now its time to learn.... the... ultimate.... attack.... Sand Attack!!!";
  173. next;
  174. mes "[Alcouskou]";
  175. mes "Look down at your feet. See that? The very thing your stepping on is the secrect behind this skill......... SAND!!";
  176. next;
  177. mes "[Alcouskou]";
  178. mes "Okay, grab a handfull....... yep, that much will do....... now.........";
  179. next;
  180. mes "[Alcouskou]";
  181. mes "THROW IT AT ME!!!";
  182. emotion 27;
  183. next;
  184. mes "[Alcouskou]";
  185. mes "(AHHH!! My EYES!!! Son of a)......... ya see how effective that was........ (JEEZE that STINGS!!).......";
  186. emotion 23;
  187. next;
  188. mes "[Alcouskou]";
  189. mes "Anyways that's all there is too it....... (CRAP that's a lot of sand!!).... So yeah, Sand Attack, use it as a last resort...... (AWW MAN!!)";
  190. next;
  191. mes "[Alcouskou]";
  192. mes "Oh and it does Earth Property damage....... (I gota finda better way to teach this).........";
  193. emotion 4;
  194. skill 149,1,0;
  195. set SANDATTACK, 0;
  196. set BAGNFNTY, 0;
  197. close;
  198. L_NotRdy1:
  199. mes "You need ^5555FF5 Fine Grit^000000 and a ^FF3355'Leather Bag of Infinity'^000000.";
  200. next;
  201. mes "[Alcouskou]";
  202. mes "You can find the Leather Bag of Infinity by talking to a merchant by the name of ^5533FFRuRumuni^000000.";
  203. mes "He can be found in the ^009500West end of Payon^000000.";
  204. close;
  205. L_LowLvl1:
  206. mes "You need to have a ^5555FFJob level of 25^000000 to learn Sand Attack.";
  207. close;
  208. L_GotSand:
  209. mes "Oh your back... hopefully not to throw anymore sand in my eyes, heh heh.... heh........ heh..............";
  210. emotion 4;
  211. close;
  212. L_Back:
  213. if (countitem(940)<20) goto L_NotRdy2;
  214. if (BaseJob==Thief && JobLevel<35) goto L_LowLvl2;
  215. delitem 940,20;
  216. mes "Great, you have the grasshopper legs. While you were collecting them I'm sure you picked up on many of the characteristics of grasshoppers.";
  217. next;
  218. mes "[Alcouskou]";
  219. mes "You will need that knowledge because this skill is based on the movement of the grasshopper. Like it you will become quick, agile, and have a keen eyesight.";
  220. next;
  221. mes "[Alcouskou]";
  222. mes "Okay, lets begin........";
  223. next;
  224. mes "~fwoosh~";
  225. next;
  226. mes "~fwooooosh~";
  227. next;
  228. mes "~fwoooooooooooooooosh~";
  229. next;
  230. mes "[Alcouskou]";
  231. mes "Ah! You've got it. Just like a pro. With this skill being overwhelmed by mobs is a thing of the past.";
  232. skill 150,1,0;
  233. set BACKSLIDE, 0;
  234. close;
  235. L_NotRdy2:
  236. mes "You need ^5555FF20 Grasshopper's Legs^000000.";
  237. close;
  238. L_LowLvl2:
  239. mes "You need a ^5555FFJob level of 35^000000 to learn Back Slide.";
  240. close;
  241. L_GotBack:
  242. mes "Seeing as you already have Back Slide..... why don't you 'Back' on outa here.....";
  243. close;
  244. L_Find:
  245. if (countitem(912)<1 || countitem(948)<1 || countitem(908)<5) goto L_NotRdy3;
  246. delitem 912,1;
  247. delitem 948,1;
  248. delitem 908,5;
  249. mes "Ah! I see that you're fully prepared to learn this skill. Let us begin....";
  250. next;
  251. mes "[Alcouskou]";
  252. mes "There are many stones on the floor here. Pick them all up one by one and examine each one carefully.";
  253. mes "Get a feel for how much each one weighs and become aware of how each one has a different texture.";
  254. next;
  255. mes "[Alcouskou]";
  256. mes "You must become one with the stone... it is the only way you will be able to use it effectively...";
  257. next;
  258. mes "~ an hour later... ~";
  259. next;
  260. mes "[Alcouskou]";
  261. mes "Very good. You have chosen some fine stones. This tells me that you have now perfected the Find Stone skill.";
  262. emotion 21;
  263. skill 151,1,0;
  264. set FINDSTONE, 0;
  265. next;
  266. mes "[Alcouskou]";
  267. mes "Have fun using it.";
  268. close;
  269. L_NotRdy3:
  270. mes "You need ^5555FF1 Bear's Footskin, 1 Zargon, and 5 Spawns^000000 to learn Find Stone.";
  271. close;
  272. L_GotFind:
  273. mes "Picking up stones can be fun but...... don't spend all day doing it ok?.....";
  274. close;
  275. L_Fling:
  276. if (getskilllv(151) == 0) goto L_NotRdy4;
  277. if ((countitem(910)<2) || (countitem(911)<2)) goto L_NotRdy4;
  278. delitem 910,2;
  279. delitem 911,2;
  280. mes "Good! You look like your ready for me to teach you the Stone Fling skill. Let us begin....";
  281. next;
  282. mes "[Alcouskou]";
  283. mes "First, loosen up your arm. Next, find a good quality stone using Find Stone. Now close your eyes and visualize the target in your mind.";
  284. next;
  285. mes "[Alcouskou]";
  286. mes "Now imagine yourself going straight through the target! Continue to visualize this!";
  287. next;
  288. mes "~ 1/2 hour later... ~";
  289. next;
  290. mes "[Alcouskou]";
  291. mes "Think of the stone as an extension of your body. Keep the target clear in your mind! You are one with the stone, the stone is one with you.....";
  292. next;
  293. mes "[Alcouskou]";
  294. mes "Open your eyes! SEE THE TARGET!! Throw the stone at the target as if you were hurrling yourself towards it! DO IT NOW!!";
  295. emotion 27;
  296. next;
  297. mes "!!Whooooossshh!!................. !!Thwack!!";
  298. next;
  299. mes "[Alcouskou]";
  300. mes "Haha! Excellent! It's a bullseye. You have now masterd Stone Fling, congratulations.";
  301. emotion 21;
  302. skill 152,1,0;
  303. set STONEFLING, 0;
  304. next;
  305. mes "[Alcouskou]";
  306. mes "As you can see this is a skill that relies heavily on concentration.";
  307. mes "As long as you keep your mind focused you will have on problems using this skill.";
  308. close;
  309. L_NotRdy4:
  310. mes "You need ^5555FF2 Scell and 2 Garlet^000000, and the ability to use ^5555FFFind Stone^000000 to learn Stone Fling.";
  311. close;
  312. L_GotFling:
  313. mes "So Stone Fling is comming in handy huh? Just make sure you don't hit the wrong moster.";
  314. close;
  315. }
  316. //====================================================================================
  317. payon.gat,91,77,4 script RuRumuni 99,{
  318. mes "[RuRumuni]";
  319. if(SANDATTACK == 1 && BAGNFNTY != 2) goto L_Start;
  320. mes "I am a humble merchant here in Payon. I buy leather hides, brought in by the hunters, to make leather pouches to sell.";
  321. mes "I grew up around leather and am quite good at working with it.";
  322. next;
  323. mes "[RuRumuni]";
  324. mes "There is a Thief guild in the Morroc area.";
  325. mes "I know someone there that sends me Thieves in need of the items I make, such as the ^5533FF'Leather Bag of Infinity'^000000.";
  326. close;
  327. L_Start:
  328. if(BAGNFNTY == 1) goto L_Check;
  329. mes "Hello. So you were sent by Alcouskou to obtain a ^5533FF'Leather Bag of Inifinity'^000000........";
  330. mes "I will be more than happy to make one for you............";
  331. next;
  332. mes "[RuRumuni]";
  333. mes "But this bag is very special, and I will need some special items in order to make it.";
  334. next;
  335. set BAGNFNTY, 1;
  336. L_List:
  337. mes "[RuRumuni]";
  338. mes "Here are the items that I will need:";
  339. mes "- 5 ^5533FFScorpion Tails^000000";
  340. mes "- 1 ^5533FFCobweb^000000";
  341. mes "- 1 ^5533FFCactus Needle^000000";
  342. mes "- 1 ^5533FFEarthworm Peeling^000000.";
  343. next;
  344. mes "[RuRumuni]";
  345. mes "Once you have all of these items I will be able to make the Bag of Infinity for you.";
  346. close;
  347. L_Check:
  348. mes "Nice to see you again. Do you have all of the items? Lets see........";
  349. next;
  350. if(countitem(904)<5 || countitem(1025)<1 || countitem(952)<1 || countitem(1055)<1) goto L_List;
  351. delitem 904, 5;
  352. delitem 1025, 1;
  353. delitem 952, 1;
  354. delitem 1055, 1;
  355. mes "[RuRumuni]";
  356. mes "Great you have everything I asked for. Let me start making the bag right away.......";
  357. next;
  358. mes "~( 30 minutes later)~";
  359. next;
  360. mes "[RuRumuni]";
  361. mes "Here you go, one Leather Bag of Infinity. Enjoy!";
  362. getitem 7042, 1;
  363. set BAGNFNTY, 2;
  364. close;
  365. }