瀏覽代碼

Updated Archer, Mage, and Thief quest skill NPCs.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@11471 54d463be-8e91-2dee-dedb-b68131a5f0ec
L0ne_W0lf 17 年之前
父節點
當前提交
530ba9b09b
共有 4 個文件被更改,包括 931 次插入656 次删除
  1. 1 0
      npc/Changelog.txt
  2. 278 197
      npc/quests/skills/archer_skills.txt
  3. 146 93
      npc/quests/skills/mage_skills.txt
  4. 506 366
      npc/quests/skills/thief_skills.txt

+ 1 - 0
npc/Changelog.txt

@@ -1,6 +1,7 @@
 Date		Added
 ======
 2007/10/14
+	* Rev. 11471 Updated Archer, Mage, and Thief quest skill NPCs. [L0ne_W0lf]
 	* Rev. 11470 Added headers to Acolyte, Swordman, and Novice quest skill files. [L0ne_W0lf]
 	* Rev. 11469 Updated Acolyte, Swordman, and Novice quest skill NPCs. [L0ne_W0lf]
 2007/10/13

+ 278 - 197
npc/quests/skills/archer_skills.txt

@@ -3,12 +3,284 @@
 //===== By: ==================================================
 //= eAthena dev team
 //===== Current Version: =====================================
-//= 1.4b
-//===== Compatible With: =====================================
-//= eAthena 7.15 +
-//===== Description: =========================================
-//= Arrow crafting, Arrow Repel skills
-//===== Additional Comments: =================================
+//= 1.5
+//===== Compatible With: ===================================== 
+//= eAthena SVN
+//===== Description: ========================================= 
+//= [Aegis Conversion]
+//= Quest for skills: Arrow Crafting, Arrow Repel
+//===== Additional Comments: ================================= 
+//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
+//============================================================
+
+morocc,121,109,5	script	Roberto#qsk_ac	88,{
+	if (BaseClass == Job_Archer) {
+		if (getskilllv(147) == 1) {
+			mes "[Roberto]";
+			mes "Ooh, you're from my home town!";
+			mes "Nice to see you!";
+			mes "How are you?";
+			mes "Ah! That arrow!";
+			mes "You made it, didn't you!";
+			next;
+			mes "[Roberto]";
+			mes "Haha...!";
+			mes "Do you think it's a lot better?";
+			mes "Haha... anyways, I am glad.";
+			mes "Come back with once in a while";
+			mes "with news from home.";
+			mes "Then byebye~";
+			close;
+		}
+		else if ((Basejob == Job_Archer && JobLevel >= 30) || BaseJob == Job_Hunter || BaseJob == Job_Dancer || BaseJob == Job_Bard) {
+			mes "[Roberto]";
+			mes "Eh!";
+			mes " ";
+			mes "You are...";
+			next;
+			if (countitem(907) > 19 && countitem(921) > 6 && countitem(7012) > 40 && countitem(1019) > 12 && countitem(501) > 0) {
+				mes "[Roberto]";
+				mes "You brought them!";
+				mes "Thank you very much.";
+				mes "Then, as I promised, I will teach you the skill.";
+				next;
+				delitem 907,20; //Resin
+				delitem 921,7; //Mushroom_Spore
+				delitem 7012,41; //Tough_Scalelike_Stem
+				delitem 1019,13; //Wooden_Block
+				delitem 501,1; //Red_Potion
+				skill 147,1,0;
+				mes "[Roberto]";
+				mes "No need to worry about arrows now.";
+				mes "Oh, and did you happen to see";
+				mes "someone called Jason in Payon?";
+				mes "Be careful. He is a";
+				mes "ferocious one.";
+				next;
+				mes "[Roberto]";
+				mes "You just have to be careful of Jason in Payon.";
+				mes "Remember.";
+				mes "Then bubye~ Thank you for the presents~";
+				close;
+			}
+			else {
+				mes "[Roberto]";
+				mes "An archer in Morroc!?";
+				mes "Nice to see you! Meeting a fellow";
+				mes "archer in a place like this! *sniffsniff*!";
+				mes "I came alone to Morroc..";
+				mes "but I was a newcomer, and the pressure... waaah~";
+				mes "I was very lonely~";
+				next;
+				if (select("It must be hard. It's ok have faith.:Keep suffering.") == 1) {
+					mes "[Roberto]";
+					mes "Yes. Thank you...";
+					mes "You must be having a hard";
+					mes "time in a place like this.";
+					mes "Isn't it hard to find arrows?";
+					mes "That's why I make my own.";
+					next;
+					select("Eh, really?!");
+					mes "[Roberto]";
+					mes "Yeah! I gather different items";
+					mes "and make arrows using them.";
+					mes "It is a useful skill to help me";
+					mes "survive alone in this tough world.";
+					mes "If you'd like, I can teach you.";
+					next;
+					select("That would be wonderful.");
+					mes "[Roberto]";
+					mes "But.. I can't do it for free.";
+					mes "Nothing is free in this world~";
+					mes "Mmm... How about this?";
+					mes "You bring me what I ask for.";
+					mes "Then I will teach you the skill.";
+					next;
+					mes "[Roberto]";
+					mes "I've been very lonely since I left my hometown.";
+					mes "I would like to treat my homesick-ness";
+					mes "with things from there.";
+					mes "Bring me 20 Resins from the trees in the ";
+					mes "Payon forest, and 1 Red Potion";
+					mes "sold in the store.";
+					next;
+					mes "[Roberto]";
+					mes "Also, 13 Trunks from the Willows that";
+					mes "lives near the Payon Forest,";
+					mes "41 Tough Scalelike Stem,";
+					mes "7 Mushroom Spores.";
+					mes "If you bring me all of these.";
+					next;
+					mes "[Roberto]";
+					mes "I will teach you the skill.";
+					mes "Then.. I'll be waiting.";
+					mes "For news from our home.";
+					close;
+				}
+				mes "[Roberto]";
+				if (Sex)
+					mes "...hey miss.";
+				else
+					mes "...hey mister.";
+				mes "...be careful at night.";
+				close;
+			}
+		}
+		else {
+			mes "[Roberto]";
+			mes "Hmm... Do you?";
+			mes "Have something to say?";
+			mes "I,";
+			mes "have nothing.";
+			mes "Difference in levels";
+			mes "cuts off conversations.";
+			close;
+		}
+	}
+	else {
+		mes "[?]";
+		mes "Eh... First time seeing an archer or something?";
+		mes "Just go where you were going.";
+		mes "I only talk to high level archers.";
+		mes "Won't open my mouth otherwise!";
+		close;
+	}
+}
+
+payon,103,63,3	script	Jason#qsk_ac	88,3,3,{
+	if (BaseClass == Job_Archer) {
+		if (getskilllv(148) == 1) {
+			mes "[Jason]";
+			mes "Eh, we meet again.";
+			mes "Ehhhh so weird.";
+			mes "Whenever I see someone again";
+			mes "I start eh-ing a lot.";
+			mes "Ehhh... anyways nice to see you again.";
+			mes "Ehhhh... don't come any more ehh...";
+			close;
+		}
+		else if ((Basejob == Job_Archer && JobLevel >= 35) || BaseJob == Job_Hunter || BaseJob == Job_Dancer || BaseJob == Job_Bard) {
+			mes "[Jason]";
+			mes "Darn... my wound isn't healing.";
+			mes "Bleh.. I was too careless... ";
+			mes "to become like this.. err...";
+			mes "But still, hurting me like this";
+			mes "giving me so many injuries...";
+			next;
+			mes "What should I do about Roberto.";
+			mes "Mmmm... Ah!";
+			mes "You? How long have you been there?";
+			mes "Mmm... very high level.";
+			mes "Someone like you would definitely be";
+			mes "able to know how to use Arrow Repel.";
+			next;
+			switch(select("What is that?:Teach me.")) {
+			case 1:
+				mes "[Jason]";
+				mes "...you're kidding, right?";
+				mes "Oh my, you don't even know";
+				mes "Arrow Repel at that level?";
+				mes "You're a strange person.";
+				next;
+				mes "[Jason]";
+				mes "(Jason was in the lala land.)";
+				next;
+				mes "[Jason]";
+				mes "Well, ok. I'll teach you what";
+				mes "Arrow Repel is.";
+				next;
+				mes "[Jason]";
+				mes "Arrow Repel is a skill that allows you to";
+				mes "push the opponent away as soon as you attack.";
+				mes "You can only use it when you aim exactly";
+				mes "at the target. But unlike magic, ";
+				mes "it doesn't de-spell.";
+				next;
+				mes "[Jason]";
+				mes "It is very useful for an archer";
+				mes "that is weak in close ranges.";
+				mes "If you would like to learn,";
+				mes "come find me again.";
+				mes "There are some necessary materials.";
+				next;
+				mes "[Jason]";
+				mes "First, because you must modify a bow";
+				mes "bring a crossbow you do not use.";
+				mes "10 Tentacles, 10 Bill of Birds,";
+				mes "3 Yoyo Tails.. these are very elastic.";
+				mes "Also, 2 Emeralds. And last but not least...";
+				mes "36 bottles of Banana Juice that I love!";
+				next;
+				mes "[Jason]";
+				mes "......Ehem!";
+				mes "If you bring all of these,";
+				mes "I shall teach you Arrow Repel.";
+				mes "Then, see you again.";
+				mes "(I'm going to be mad if you don't bring the Banana Juice.)";
+				close;
+			case 2:
+				if (countitem(721) > 1 && countitem(942) > 2 && countitem(962) > 9 && countitem(925) > 9 && countitem(532) > 35) {
+					mes "[Jason]";
+					mes "Ok! Perfect!";
+					mes "I shall teach you the nationally";
+					mes "renowned skill, Arrow Repel!";
+					next;
+					delitem 721,2; //Azure_Jewel
+					delitem 942,3; //Yoyo_Tail
+					delitem 962,10; //Tentacle
+					delitem 925,10; //Bill_Of_Birds
+					delitem 532,36; //Banana_Juice
+					skill 148,1,0;
+					mes "[Jason]";
+					mes "Oh, works better than I expected!";
+					mes "Won't be needing to modify the bow!";
+					mes "You can take this back~";
+					mes "And enjoy using your newly inherited";
+					mes "skill in fields and dungeons!";
+					mes "He~heh~!";
+					close;
+				}
+				else {
+					mes "[Jason]";
+					mes "Mmm... too bad.";
+					mes "You are missing some things.";
+					mes "Once again, you need 2 Emeralds,";
+					mes "3 Yoyo Tails, 10 Tentacles,";
+					mes "10 Bill of Birds, and last but";
+					mes "not least 36 bottles of Banana juice!";
+					next;
+					mes "[Jason]";
+					mes "Make sure you have all of them and come again!";
+					close;
+				}
+			}
+		}
+		else {
+			mes "[Jason]";
+			mes "Ooh... you are an archer.";
+			mes "If you try a little more";
+			mes "you will have a great";
+			mes "reputation as an archer!";
+			mes "Exert yourself!";
+			close;
+		}
+	}
+	else {
+		mes "[?]";
+		mes "What does life need from";
+		mes "a lonely lad like me?";
+		close;
+	}
+
+OnTouch:
+	mes "[???]";
+	mes "Errrrrrr...";
+	close;
+}
+
+//============================================================ 
+// Old changelog
+//============================================================ 
 //= v1.0 Roberto message text is based off RO npc.  Jason message
 //= text is custom from old version.
 //= All items are from official quests though.[kobra_k88]
@@ -20,194 +292,3 @@
 //= 1.4a Fixed some typos [IVBela]
 //= 1.4b changed perm. variables to temp ones [Lupus]
 //============================================================
-
-
-
-//<======================== Roberto: Arrow crafting =========================>\\
-morocc,121,109,5	script	Roberto	88,{
-	mes "[Roberto]";
-	if(baseClass == Job_Archer) goto L_Start;
-
-L_Other:
-	mes "Eh?... First time seeing an archer or something? Why don't you just";
-	mes "go about your business and leave me be.  I only talk to high level";
-	mes "Archer types........";
-	emotion e_what;
-	close;
-L_Start:
-	if(BaseJob==Job_Archer && JobLevel<30) goto L_LowLvl;
-	if(getskilllv(147)>0) goto L_GotSkill;
-	if(@ARWCRFT) goto L_GetSkill;
-	mes "Hmmm?.... Oh you seem to be a high level Archer type.  Why don't we";
-	mes "converse for a while, eh? Let me start off by talking about my";
-	mes "childhood.... . . . . . . . . . . .";
-	next;
-	mes "[Roberto]";
-	mes "When I turned 15, I decided I'd work for a Blacksmith........";
-	next;
-	mes "[Roberto]";
-	mes "............... ~(blah blah blah)~...................";
-	next;
-	mes "[Roberto]";
-	mes ".... man was my Junior Prom a mess...........";
-	next;
-	mes "[Roberto]";
-	mes "..~(blah blah)~........ ~(blah blah)~.........";
-	next;
-	mes "(many grueling hours later.....)";
-	next;
-	mes "[Roberto]";
-	mes "So that's how I found out how to create all of these different";
-	mes "kinds of arrows for myself.  It definitely comes in handy.";
-	next;
-	mes "[Roberto]";
-	mes "Say, would you like me to teach you?  We've had such a nice talk";
-	mes "that I feel like can trust you with this knowledge.......";
-	next;
-	menu "Zzz... Eh!! Uh, Arrows... making... yes, teach.",M_0, "Zzzzz... Eh! Uh... where am I????",M_1;
-
-	M_0:
-		mes "[Roberto]";
-		mes "Alright then!  In order for me to teach you the art of ^5533FF'Arrow";
-		mes "Crafting'^000000, you must first bring me these items:";
-		mes "^FF335520 Resin,";
-		mes "7 Poison Spores,";
-		mes "41 Pointed Scales,";
-		mes "13 Trunks,";
-		mes "1 Red potion^000000";
-		set @ARWCRFT, 1;
-		emotion e_ic;
-		close;
-	M_1:
-		mes "[Roberto]";
-		mes "................................................................";
-		emotion e_ag;
-		next;
-		mes "[Roberto]";
-		mes "Let me teach you this special skill.... It's called, my boot up";
-		mes "your A........";
-		emotion e_pif;
-		next;
-		mes "!!!!SMACK!!!!";
-		percentheal -5,0;
-		close;
-
-L_GetSkill:
-	if((countitem(907)<20) || (countitem(7033)<7) || (countitem(906)<41) || (countitem(1019)<13) || (countitem(501)<1)) goto L_NotEnuf;
-	delitem 907, 20;
-	delitem 7033, 7;
-	delitem 906, 41;
-	delitem 1019, 13;
-	delitem 501, 1;
-	mes "You've brought all of the items... very good.  Lets begin.....";
-	next;
-	mes "~ hands you a very long list of ingredients ~";
-	next;
-	mes "[Roberto]";
-	mes "There you are.  You're all set.";
-	next;
-	mes ".......................";
-	next;
-	mes "[Roberto]";
-	mes "Hmm?...... What do you mean 'that's it'?....... What else were you";
-	mes "expecting...... With that list you will be able to make any kind of";
-	mes "arrows you want.......";
-	next;
-	mes "[Roberto]";
-	mes "I hope you didn't expect some kind of elaborate ceremony or some";
-	mes "kind of unique and lengthy training.......";
-	next;
-	skill 147,1,0;
-	set @ARWCRFT, 0;
-	mes "[Roberto]";
-	mes "...... Well good luck and have fun making arrows.  I've got other";
-	mes "things to do if you don't mind.......";
-	close;
-
-	L_NotEnuf:
-		mes "You don't have everything I need.";
-		next;
-		goto M_0;
-L_GotSkill:
-	mes "Hmmm?.... Sorry but I've got nothing left to teach you.  Just keep";
-	mes "on making those arrows..... For us Archer types there can never be";
-	mes "too many arrows.....";
-	close;
-L_LowLvl:
-	mes "Hmm?... Do you have something to say to me? Unfortunately I have";
-	mes "nothing to say to you.....";
-	emotion e_what;
-	next;
-	mes "[Roberto]";
-	mes "It's sad but conversations with people who have ^5533FFlow job levels^000000 such";
-	mes "as yourself always seem to end abruptly..... Maybe if you trained a";
-	mes "little bit longer we would have more to talk about............";
-	close;
-}
-
-
-//<============================== Arrow Repel ===============================>\\
-payon,103,63,5	script	Jason	88,{
-	mes "[Jason]";
-	if(baseClass == Job_Archer) goto L_Start;
-
-L_Other:
-	mes "What does life need from a lonely lad like me?";
-	close;
-L_Start:
-	if(getskilllv(148)>0) goto L_GotSkill;
-	if(BaseJob == Job_Archer && JobLevel < 35) goto L_LowLvl;
-	if(@ARWREP) goto L_Check;
-	mes "Hi, I'm the master of the skill ^0033FFArrow Repel^000000. I might be able to";
-	mes "teach you the skill, but only if you help me get the ingredients";
-	mes "for my Grandma's soup.";
-	next;
-	mes "[Jason]";
-	mes "Arrow Repel allows you to use your arrows to repel, push back, an";
-	mes "enemy and keep them at a distance.  This is a great skill for us";
-	mes "Archer types.";
-	next;
-
-	L_List:
-	mes "[Jason]";
-	mes "I need the following:";
-	mes "- 2 ^FF0000Emeralds^000000";
-	mes "- 3 ^FF0000Yoyo tails^000000";
-	mes "- 10 ^FF0000Tentacles^000000";
-	mes "- 10 ^FF0000Bill of birds^000000";
-	mes "- 36 ^FF0000Banana Juices^000000";
-	next;
-	mes "[Jason]";
-	mes "Hurry hurry!";
-	set @ARWREP, 1;
-	close;
-
-L_LowLvl:
-	mes "Oh I think you're a bit inexperienced to learn anything from me,";
-	mes "come back later!  Maybe around ^5533FFjob level 35^000000 or so.....";
-	close;
-
-L_Check:
-	if((countitem(721)<2) || (countitem(942)<3) || (countitem(962)<10) || (countitem(925)<10) || (countitem(532)<36)) goto L_NotEnuf;
-	delitem 721,2;
-	delitem 942,3;
-	delitem 962,10;
-	delitem 925,10;
-	delitem 532,36;
-	mes "OH! Marvelous you brought me all the ingredients!";
-	mes "Now it'll be my pleasure to teach you the skill ^0033FFArrow Repel^000000";
-	next;
-	skill 148,1,0;
-	set @ARWREP, 0;
-	mes "[Jason]";
-	mes "There you go! Happy hunting in the future.";
-	close;
-
-	L_NotEnuf:
-		mes "You don't have everything I need.";
-		next;
-		goto L_List;
-L_GotSkill:
-	mes "Hey! It's you again? I'm afraid I've taught you everything I know.";
-	close;
-}

+ 146 - 93
npc/quests/skills/mage_skills.txt

@@ -3,116 +3,169 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.4b
-//===== Compatible With: =====================================
-//= eAthena 7.15 +
-//===== Description: =========================================
-//= <Description> 
-//===== Additional Comments: =================================
-//= v1.0a Now using functions found in "Global_Functions.txt"
-//= for class checks.[kobra_k88]
-//= 1.2 Added Baby Class Support [Lupus]
-//= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
-//= 1.4 Fixed exploit [Lupus]
-//= 1.4a Fixed some typos [IVBela]
-//= 1.4b changed perm. variables to temp ones [Lupus]
+//= 1.5
+//===== Compatible With: ===================================== 
+//= eAthena SVN
+//===== Description: ========================================= 
+//= [Aegis Conversion]
+//= Quest for skills: Energy Coat
+//===== Additional Comments: ================================= 
+//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
 //============================================================
 
-
-
-geffen_in,151,119,4	script	BLIZZARDRISS	71,{
+geffen_in,151,119,4	script	Great Wizard#qsk_mg	64,{
 	mes "[BLIZZARDRISS]";
-	if(baseClass == Job_Mage) goto L_Start;
-
-L_Other:
-	mes "What new magic spells will I discover today......??";
-	emotion e_hmm;
-	close;
-
-L_Start:
-	if(@ENRGYCOAT) goto L_GetSkill;
-	if(getskilllv(157)>0) goto L_GotSkill;
-	mes "Hey! My friend! I see that you are a magic user.  If you look within yourself, you'll find that you have... 'HIDDEN ABILITIES'!!";
+	mes "Hey ! My friend !";
+	mes "I see that you are a mage.";
+	mes "Look into yourself to discover";
+	mes "your hidden abilities !";
 	next;
-	menu "'Hidden Abilities'.....?",M_0, "End Conversation.",M_End;
-
-	M_0:
+	switch(select("About mage's hidden ability:About skill ^3355FF' Energy Coat '^000000:End conversation")) {
+	case 1:
 		mes "[BLIZZARDRISS]";
-		mes "For many years I studied the ancient magic of Geffen, and I recently re-discovered a forgotten magic spell that is quite useful.";
+		mes "For many years";
+		mes "I have studied the ancient";
+		mes "magic¡¯s of Geffen.";
+		mes "Recently, I discovered";
+		mes "a very good forgotten skill! ! !";
+		mes "Isn't that fortunate?";
 		next;
 		mes "[BLIZZARDRISS]";
-		mes "The spell uses your 'pyschokinetic energy' to 'coat' your body in a magical shield, protecting you from enemy attacks.";
+		mes "The skill uses your mental";
+		mes "energy to block attacks against you.";
+		mes "It is like a magical shield, or armor.";
+		mes "Only the most special of persons can";
+		mes "use this amazing skills.";
 		next;
 		mes "[BLIZZARDRISS]";
-		mes "Only highly trained magic users can learn this amazing spell.";
-		mes "Those who want to use this spell must tap into the hidden energies and abilities buried deep within!";
+		mes "But the most amazing part is that I";
+		mes "can use the skill! ! !";
+		mes "I can use this to protect myself !";
+		mes "Pu hah hah hah !!";
 		next;
 		mes "[BLIZZARDRISS]";
-		mes "The spell is called ^5555FF'Energy Coat'^000000!.  Would you like me to teach it to you?";
+		mes "Ok Ok, don't get too excited.";
+		mes "Listen carefully to what I can tell you.";
+		mes "Those who use this spell must tap";
+		mes "the hidden energies and abilities";
+		mes "locked within themselves !";
 		next;
-		menu "Wow! Sounds great!",sM_0, "Meh... not interested.",sM_End;
-
-		sM_0: 
+		mes "[BLIZZARDRISS]";
+		mes "If you wish to learn this skill, you";
+		mes "must first have a few items to";
+		mes "be used during the process.";
+		next;
+		mes "[BLIZZARDRISS]";
+		mes "three ^3355FFGlass Bead^000000 ";
+		mes "one ^3355FF1 carat Diamond^000000 ";
+		mes "five ^3355FFShell^000000 ";
+		mes "one ^3355FFSolid Shell^000000 ";
+		mes "Bring me these items.";
+		next;
+		mes "[BLIZZARDRISS]";
+		mes "Also, one more thing. . .";
+		mes "You must be sufficiently experienced";
+		mes "in the magical arts. This means you must";
+		mes "either be a wizard or mage job level 35+.";
+		next;
+		mes "[BLIZZARDRISS]";
+		mes "Wizards already have already";
+		mes "experienced the role of a mage";
+		mes "and so do not require a job level.";
+		mes "In any case, one who wishes to";
+		mes "be trained in this art must be in a";
+		mes "healthy and strong mental state.";
+		next;
+		mes "[BLIZZARDRISS]";
+		mes "Okay . .";
+		mes "There is nothing more to say, are you interested?";
+		close;
+	case 2:
+		if (getskilllv(157) == 1) {
 			mes "[BLIZZARDRISS]";
-			mes "In order for me to teach you this spell I will need the following items:";
-			mes "^5533FF 3 Glass Beads,";
-			mes " 1 One Carat Diamond,";
-			mes " 5 Shells,^000000";
-			mes " and ^5533FF1 Solid shell^000000.";
-			next;
+			mes "It seems that you have ";
+			mes "already mastered this skill.";
+			mes "Your skill in 'Energy Coat' ";
+			mes "is evident.";
+			mes "I am sorry, ";
+			mes "I have nothing more to teach you ...";
+			close;
+		}
+		else {
+			if (countitem(746) > 2 && countitem(730) > 0 && countitem(935) > 4 && countitem(943) > 0) {
+				if ((JobLevel > 34 && BaseJOb == Job_Mage) || BaseJob == Job_Wizard || BaseJob == Job_Sage) {
+					mes "[BLIZZARDRISS]";
+					mes "Okay, I have received your request.";
+					mes "I will now awaken your hidden energies . .";
+					mes ". . . . . .";
+					mes ". . . . . . . . . . . . .";
+					mes ". . . . . . . . . . . . . . . . . . . . . . . . . .";
+					next;
+					mes "[BLIZZARDRISS]";
+					mes "Ancient powers of";
+					mes "Geffen! I seek the enlightenment";
+					mes "and honor of your presence. ";
+					mes "I am humbled in your presence!";
+					mes " ...";
+					next;
+					mes "[BLIZZARDRISS]";
+					mes "Grant me your power!";
+					mes "Release your spirit";
+					mes "Mana Shield! Metal Armor!";
+					mes ". . . . . . . . . . . .";
+					mes "ENERGY COAT! ! !";
+					next;
+					delitem 746,3; //Glass_Bead
+					delitem 730,1; //Crystal_Jewel
+					delitem 935,5; //Shell
+					delitem 943,1; //Solid_Shell
+					skill 157,1,0;
+					mes "[BLIZZARDRISS]";
+					mes ". . . . .";
+					mes "It is done. . .";
+					mes "You know have the ";
+					mes "elite skill of ^3355FF' Energy Coat '^000000 .";
+					mes "Use it well.";
+					next;
+					mes "[BLIZZARDRISS]";
+					mes "Do not shame our";
+					mes "class with disgraceful";
+					mes "use of this or any skill.";
+					mes "Your new power calls for new responsibility.";
+					close;
+				}
+			}
 			mes "[BLIZZARDRISS]";
-			mes "You will also need to have a sufficient amount of experience.  For Mages, a job level of at least 35 is needed.";
-			mes "Wizards and Sages are high level magic users and can learn the skill at any job level.";
+			mes "Look!!";
+			mes "Didn't you listen to my explanation ? !";
+			mes "You have not prepared fully";
+			mes "for me to assist you.";
+			mes "Check that you have me all the requirements";
 			next;
 			mes "[BLIZZARDRISS]";
-			mes "When you are fully trained and have all of the required items come back and see me.";
-			set @ENRGYCOAT, 1;
-			close;
-
-		sM_End:
-			mes "[BLIZZARDRISS]";
-			mes "Hmf! Suit yourself.  Don't come complaining to me when get beat up by a bunch of spores!!";
-			emotion e_an;
+			mes "If you need me to explain";
+			mes "all this again, then ask me.";
+			mes "I would be happy to explain again";
+			mes "if only you would listen. . .";
 			close;
-
-	M_End:
+		}
+	case 3:
 		mes "[BLIZZARDRISS]";
-		mes "The wise man must have patience!  Prepare yourself and return when you are ready.";
-		close;
-
-L_GetSkill:
-	if(BaseJob==Job_Mage && JobLevel < 35) goto L_JobLvl;
-	if(countitem(746)<3 || countitem(730)<1 || countitem(935)<5 || countitem(943)<1) goto L_Items;
-	delitem 746,3;
-	delitem 730,1;
-	delitem 935,5;
-	delitem 943,1;
-	mes "Ohh my, ohh my...... This is going to be swell.  Hand over the items... Thank you.";
- 	next;
-	mes "~ several hours later ~";
-	next;
-	skill 157,1,0;
-	set @ENRGYCOAT,0;
- 	mes "[BLIZZARDRISS]";
- 	mes "You can now use the spell, 'Energy Coat'!! Use it wisely my friend!";
-	emotion e_no1;
- 	close;
-
-	L_JobLvl:
-		mes "Didn't you listen to my explanation? You need a job level of at least 35 to learn 'Energy Coat'.";
-		emotion e_what;
-		close;
-
-	L_Items:
-		mes "Didn't you listen to my explanation? You need the following items for me to teach you 'Energy Coat':";
-		mes "^5533FF 3 Glass Beads,";
-		mes " 1 One Carat Diamond,";
-		mes " 5 Shells,^000000";
-		mes " and ^5533FF1 Solid shell^000000.";
-		emotion e_what;
+		mes "The wise man must have patience !";
+		mes "Prepare yourself again,";
+		mes "and return when you are ready.";
 		close;
-
-L_GotSkill:
-	mes "Well hello there.  The 'Energy Coat' skill is great, isn't it? Anyway, good luck with your journey.";
-	close;
+	}
 }
+
+//============================================================ 
+// Old changelog
+//============================================================ 
+//= v1.0a Now using functions found in "Global_Functions.txt"
+//= for class checks.[kobra_k88]
+//= 1.2 Added Baby Class Support [Lupus]
+//= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
+//= 1.4 Fixed exploit [Lupus]
+//= 1.4a Fixed some typos [IVBela]
+//= 1.4b changed perm. variables to temp ones [Lupus]
+//============================================================

+ 506 - 366
npc/quests/skills/thief_skills.txt

@@ -3,385 +3,525 @@
 //===== By: ================================================== 
 //= kobra_k88
 //===== Current Version: ===================================== 
-//= 1.4b
+//= 1.5
 //===== Compatible With: ===================================== 
-//= eAthena 7.15 +
+//= eAthena SVN
 //===== Description: ========================================= 
-//= Sand Attack, Back Slide, Find Stone, Stone Fling skill quests.
+//= [Aegis Conversion]
+//= Quests for skills: Sand Attack, Back Slide, Find Stone, 
+//= Stone Fling.
 //===== Additional Comments: ================================= 
-//= v1.0 Fully working
-//= v1.1 Changed Sand Attack requirements from 5 Grit to 5 Fine Grit and a
-//= Leather Bag of Infinity.  These are the official RO requirements
-//= Added npc RuRumuni, maker of Leather Bag of Infinity. [kobra_k88]
-//= v1.1a Now using functions found in "Global_Functions.txt" for
-//= class checks.[kobra_k88]
-//= 1.2 Added Baby Class Support [Lupus]
-//= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
-//= 1.4 Fixed exploit [Lupus]
-//= 1.4a Fixed some typos [IVBela]
-//= 1.4b changed perm. variables to temp ones [Lupus]
+//= 1.5 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf]
 //============================================================ 
 
-
-
-//======================================================================================================
-moc_prydb1,154,128,4	script	Alcouskou	118,{
-	mes "[Alcouskou]";
-	if(baseClass == Job_Thief) goto L_Start;
-	if(BaseJob==Job_Novice) goto L_Novice;
-
-L_Other:
-	mes "Your kind isn't welcome here.";
-	close;
-
-L_Novice:
-	mes "Although thieves and assassins have basic skills which aid them in their jobs, most don't have the 'special' skills which can make them truly great!";
-	next;
-	mes "[Alcouskou]";
-	mes "I just happen to be the ONLY one who can teach them these skills!";
-	mes "If you ever decide to become a Thief or an Assassin, come back here and I'll teach you these cool skills.";
-	next;
-	mes "[Alcouskou]";
-	mes "And if you know anyone who already is one, send them to me.  I'm willing to teach anyone who's interested.";
-	close;
-
-L_Start:
-	mes "During the course of your life you will experience many things.";
-	mes "You many have trouble understanding the importance of some of these experiences, and may even consider them to be useless to you.";
-	next;
-	mes "[Alcouskou]";
-	mes "But do not be to hasty with your judgement of them, for some of these experience may actually prove to be beneficial for you.";
-	next;
-	mes "[Alcouskou]";
-	mes "Let me explain:";
-M_Menu:
-	next;
-	menu "-Sand Attack",M_Sand, "-Back Slide",M_Back, "-Find Stone",M_Find, "-Stone Fling",M_Fling, "-I will be back later.",M_End;
-
-	M_Sand:
-		mes "[Alcouskou]";
-		if(@SANDATTACK) goto L_Sand;
-		if(getskilllv(149) > 0) goto L_GotSand;
-		mes "The most important aspect of being a good Thief/Assassin is stealth.  One should never be seen or touched unless he/she wants to be";
-		next;
-		mes "[Alcouskou]";
-		mes "Some may consider this cowardly but I don't see it that way.";
-		mes "We live in a world where it is the survival of the fittest and you must do whatever it takes to survive.....";
-		next;
-		mes "[Alcouskou]";
-		mes "Even if this means throwing sand in an enemy's face.  That is why the skill, ^5555FFSand Attack^000000, was created.";
-		next;
-		mes "[Alcouskou]";
-		mes "This skill allows the user to throw and kick sand in the eyes of an opponent, temporarily blinding them.";
-		mes "This effectively impairs the opponent's ability to defend or attack giving the user a brief but great advantage.";
-		next;
-		mes "[Alcouskou]";
-		mes "In order to learn this skill you will need to gather ^5555FF5 Fine Grit^000000 and a ^FF3355'Leather Bag of Infinity'^000000.";
-		if(BaseJob == Job_Thief) mes "You will also need a job level of at least ^5555FF25^000000.";
-		next;
-		mes "[Alcouskou]";
-		mes "You can find the Leather Bag of Infinity by talking to a merchant by the name of ^5533FFRuRumuni^000000.";
-		mes "He can be found in the ^009500West end of Payon^000000.";
-		next;
-		mes "[Alcouskou]";
-		mes "Come back when you are ready.";
-		set @SANDATTACK, 1;
-		goto M_Menu;
-	M_Back:
-		mes "[Alcouskou]";
-		if(@BACKSLIDE)goto L_Back;
-		if(getskilllv(150)>0) goto L_GotBack;
-		mes "People tend to focus on attack and damage, but it's necessary to understand that FLEEING is JUST AS IMPORTANT as attacking!";
-		next;
-		mes "[Alcouskou]";
-		mes "We thieves/assassins pride ourselves on our speed and ability to quickly dodge.";
-		mes "Of course I'm sure you've noticed that there is a downside to that speed and quickness.....";
-		next;
-		mes "[Alcouskou]";
-		mes "If we DO get hit, depending on the monster, that single hit could put us in serious danger!";
-		next;
-		mes "[Alcouskou]";
-		mes "I can understand how funny it is to watch a monster constantly miss while its attacking you, but......";
-		next;
-		mes "[Alcouskou]";
-		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.";
-		next;
-		mes "[Alcouskou]";
-		mes "That's why most Thieves/Assassins fear large mobs and will flee at the first sign of them.";
-		mes "There are those however, that do not fear being overwhelmed by a large mob.";
-		next;
-		mes "[Alcouskou]";
-		mes "These are the people who have learned a unique skill that allows them to deal with mob situations.";
-		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.";
-		next;
-		mes "[Alcouskou]";
-		mes "The skill is called ^5555FFBack Slide^000000 and requires a lot of practice to master.";
-		mes "If you wish to learn this skill you will first need to bring in ^5555FF20 Grasshopper's Legs^000000.";
-		next;
-		mes "[Alcouskou]";
-		mes "Think of it as the first part of your training.";
-		if(BaseJob == Job_Thief) mes "If you are a Thief, you will also need to have a job level of at least ^5555FF35^000000.";
-		set @BACKSLIDE, 1;
-		goto M_Menu;
-	M_Find:
-		mes "[Alcouskou]";
-		if(@FINDSTONE) goto L_Find;
-		if(getskilllv(151)>0) goto L_GotFind;
-		mes "The more experienced and better skilled members of our guild are quite handy.";
-		mes "They can turn something as common as a rock on the ground into a very effective weapon.";
-		next;
+moc_prydb1,154,128,4	script	Alcouskou#qsk_tf	118,{
+	if (BaseClass == Job_Thief) {
 		mes "[Alcouskou]";
-		mes "They can throw a rock at a far away target with great accuracy and strength.";
-		mes "They can throw it so powerfully that sometimes an enemy will become stunned by it.";
+		mes "As you live life you will encounter";
+		mes "many things. Sometimes you will";
+		mes "not understand and wonder why some";
+		mes "things are so important. You may consider it";
+		mes "as useless knowledge, but it isn't";
+		mes "Let me explain.";
 		next;
+		switch(select("Sand Attack:Back Slide:Find Stone:Stone Fling:I will be back later.")) {
+		case 1:
+			switch(THIEF_SK) {
+			case 0:
+				if (countitem(7041) > 4 && (BaseJob == Job_Thief && JobLevel > 24) || BaseJob == Job_Assassin || BaseJob == Job_Rogue) {
+					mes "[Alcouskou]";
+					mes "Luckily, you have brought some";
+					mes "sand with you. It is very important";
+					mes "to a thief to have a small quantity at";
+					mes "all times. Most people do not";
+					mes "realize the value of such a common";
+					mes "substance.";
+					next;
+					mes "[Alcouskou]";
+					mes "In case you meet a powerful";
+					mes "monster in a dungeon with no";
+					mes "sand, you could use this sand to";
+					mes "blind the monster and flee.";
+					mes "You should have a special sand pocket.";
+					next;
+					mes "[Alcouskou]";
+					mes "What? You don't expect me to";
+					mes "do that for you as well do you?";
+					mes "You must be very lazy! ! !";
+					mes "Very well, find the one named";
+					mes "RuRumuni. He will make you a";
+					mes "sturdy leather pocket.";
+					next;
+					mes "[Alcouskou]";
+					mes "I will be preparing for your";
+					mes "return. Find RuRumuni in";
+					mes "west Payon. That is where I";
+					mes "heard he is these days.";
+					delitem 7041,5; //Fine_Grit
+					set THIEF_SK,1;
+					close;
+				}
+				else {
+					mes "[Alcouskou]";
+					mes "The most important part";
+					mes "of being a good thief is stealth.";
+					mes "A thief should never be seen or";
+					mes "touched unless he wants to.";
+					mes "Some consider this cowardly";
+					mes "but I think differently.";
+					next;
+					mes "[Alcouskou]";
+					mes "The way I see it, we live in a";
+					mes "world where survival of the fittest";
+					mes "rules our lives. ";
+					mes "They may think less of me for use";
+					mes "this special skill. . . What is this skill?";
+					mes "This is the sand blinding skill.";
+					next;
+					mes "[Alcouskou]";
+					mes "If you can throw or kick sand";
+					mes "in the eyes of your opponent,";
+					mes "not only does their defense decrease,";
+					mes "but their ability to attack is impaired.";
+					mes "It is so effective, you may even stun them.";
+					next;
+					mes "[Alcouskou]";
+					mes "Well, we have to survive too.";
+					mes "Its either us or them. . .";
+					mes "I think it is important and vital";
+					mes "that we prepare a little sand.";
+					mes "What do you think? If you like it ";
+					mes "go and get five Fine Grit.";
+					next;
+					mes "[Alcouskou]";
+					mes "I am sure you eager to learn this";
+					mes "skill, but you must first gather five Fine Grit";
+					mes "Until you have gathered them,";
+					mes "I cannot teach you this skill.";
+					mes "Don't be disappointed, hurry and gather them.";
+					next;
+					mes "[Alcouskou]";
+					mes "Oh, I almost forgot! ! !";
+					mes "If you want to learn this ";
+					mes "special skill, be sure that";
+					mes "you are sufficiently experienced";
+					mes "to use this properly. This means";
+					mes "you should be at least job level 25.";
+					close;
+				}
+			case 1:
+				mes "[Alcouskou]";
+				mes "Go to west payon and find";
+				mes "RuRumuni. He will make you";
+				mes "fine durable pouch for your";
+				mes "sand.";
+				next;
+				mes "[Alcouskou]";
+				mes "I will take these five Fine Grit";
+				mes "and prepare them for you while I wait.";
+				close;
+			case 2:
+				mes "[Alcouskou]";
+				mes "Okay! Great !!";
+				mes "What a fine pouch indeed!";
+				mes "Small and easy to carry, with enough";
+				mes "capacity for enough sand. ";
+				mes "This is a perfect ^3355FFLeather Bag of Infinity^000000 !!";
+				mes "for you to use with this skill.";
+				next;
+				mes "[Alcouskou]";
+				mes "Well let¡¯s see what your skill";
+				mes "is like -";
+				mes "Try it out ! !";
+				next;
+				mes "[Alcouskou]";
+				mes "AHhh, watch out for my eyes !!";
+				mes "^5533FF- *throwing sand* -^000000";
+				next;
+				mes "^5533FF- *tossing sand* -^000000";
+				next;
+				mes "[Alcouskou]";
+				mes "Hoo Hoo Hoo... You are a";
+				mes "natural! ! ! Excellent !";
+				mes "I guess I have nothing more";
+				mes "that I can teach you.";
+				mes "I hope that this skill will";
+				mes "aid you in the future. -";
+				delitem 7042,1; //Leather_Bag_Of_Infinity
+				skill 149,1,0;
+				close;
+			}
+		case 2:
+			if (countitem(940) > 19  && (BaseJob == Job_Thief && JobLevel > 34) || BaseJob == Job_Assassin || BaseJob == Job_Rogue) {
+				mes "[Alcouskou]";
+				mes "Okay! Let¡¯s practice!";
+				next;
+				mes "[Alcouskou]";
+				mes "Suuu Suuu uk -";
+				next;
+				mes "[Alcouskou]";
+				mes "Suuuuk - -";
+				next;
+				mes "[Alcouskou]";
+				mes "Suk - Suuuk - - -";
+				next;
+				mes "[Alcouskou]";
+				mes "Great! -At this level,";
+				mes "I am sure you can increase";
+				mes "your skill on your own.";
+				delitem 940,20; //Grasshopper's_Leg
+				skill 150,1,0;
+				close;
+			}
+			else {
+				mes "[Alcouskou]";
+				mes "Usually we like to think about";
+				mes "attacking and damage, but";
+				mes "it is important to realize that";
+				mes "fleeing is just as important";
+				mes "as attacking!";
+				mes "We pride ourselves in our";
+				next;
+				mes "[Alcouskou]";
+				mes "speed and quick dodges,";
+				mes "but I am sure that at times you";
+				mes "have realized while fighting that";
+				mes "despite the fact that our dodging";
+				mes "is superior, if we are hit once we are";
+				mes "serious danger.";
+				next;
+				mes "[Alcouskou]";
+				mes "It is true that at times we";
+				mes "can view others as humorous as";
+				mes "we easily dodge their attacks.";
+				mes "But if we are attacked by many at";
+				mes "once, you must remember that we";
+				mes "may not even have room to doge.";
+				next;
+				mes "[Alcouskou]";
+				mes "You must make a quick decision";
+				mes "to flee. Most would flee immediately,";
+				mes "but we don't need to.";
+				mes "Even if we don't see an opening,";
+				mes "our skill can allow us to slip out";
+				mes "of a very serious predicament.";
+				next;
+				mes "[Alcouskou]";
+				mes "This skill uses our energies in";
+				mes "allowing us to slip out unnoticed.";
+				mes "In a short amount of time we can use";
+				mes "this skill to put a large amount of ";
+				mes "distance between us and our opponent.";
+				mes "This skill requires endless hours of";
+				next;
+				mes "[Alcouskou]";
+				mes "practice for us to master.";
+				mes "If you wish to learn and practice,";
+				mes "you will need to prepare some items.";
+				mes "Prepare ^3355FF20 Grasshopper's Leg^";
+				mes "to begin your training.";
+				next;
+				mes "[Alcouskou]";
+				mes "Oh, by the way. . .";
+				mes "You need to have some background";
+				mes "in the skills of a thief to properly master";
+				mes "this skill. This means you require at";
+				mes "least the experience of job level ^3355FF35^000000 .";
+				mes "If not, I cannot teach you.";
+				close;
+			}
+		case 3:
+			if (countitem(912) > 0 && countitem(948) > 0 && countitem(908) > 4 && (BaseJob == Job_Thief && JobLevel > 19) || BaseJob == Job_Assassin || BaseJob == Job_Rogue) {
+				mes "[Alcouskou]";
+				mes "Wow, you have already prepared?";
+				mes "Great, I see promise in you. -";
+				mes "Your zeal is truly sincere.";
+				mes "Okay, Shall we begin your training?";
+				mes "Stone throwing . . . . .";
+				mes "Find a smoot stone with a good weight.";
+				next;
+				mes "[Alcouskou]";
+				mes "Picking the right stone is ";
+				mes "very important in being successful.";
+				mes "Well I could tell you a million";
+				mes "times but it is better to see for yourself.";
+				mes "Okay why don't you try the skill out";
+				mes "right here where I can watch you.";
+				next;
+				mes "^3355FF- Shweeput ! -^000000";
+				next;
+				mes "^3355FF- Cheeeguk! -^000000";
+				next;
+				mes "^3355FF- Shyaaaakkk ! -^000000";
+				next;
+				mes "[Alcouskou]";
+				mes "Very nice. You seem to take up -";
+				mes "the skill easily.";
+				mes "You can improve your skill with";
+				mes "practice on your own time.";
+				mes "I hope it aids you in the future.";
+				mes ". . . . . Hope to see you soon";
+				delitem 912,1; //Zargon
+				delitem 948,1; //Bear's_Foot
+				delitem 908,5; //Spawn
+				skill 151,1,0;
+				close;
+			}
+			else {
+				mes "[Alcouskou]";
+				mes "The skilled and experienced";
+				mes "members of our guild are usually very handy!";
+				mes "They can pick up a small stone";
+				mes "by the road and use it to hit an";
+				mes "opponent accurately and quickly from";
+				mes "a distance.";
+				next;
+				mes "[Alcouskou]";
+				mes "They realized what a waste it was";
+				mes "to not teach this skill to others. -";
+				mes "They founded a group to train";
+				mes "others in this skill. . .";
+				mes "That is how the ^3355FF' Find Stone '^000000 and";
+				mes "^3355FF' Stone Fling '^000000 skills came to be.";
+				next;
+				mes "[Alcouskou]";
+				mes "It is handy to be able to find a stone";
+				mes "in most any place and have the";
+				mes "ability to hurl it into a distanced enemy.";
+				mes "A very valuable skill indeed. -";
+				mes "Without costing you a zeny, you";
+				mes "can have this skill at your disposal.";
+				next;
+				mes "[Alcouskou]";
+				mes "I really think of this as a great skill.";
+				mes "What do you think of it?";
+				mes ". . . . . Hah Hah Hah . . . . . .";
+				next;
+				mes "[Alcouskou]";
+				mes "^3355FF' Find Stone ! '^000000 skill";
+				mes "can be used in just about any location.";
+				mes "Picking stones off the ground that";
+				mes "are smooth and well weighted for";
+				mes "throwing. It does take some familiarity";
+				mes "and skill to learn this skill well.";
+				next;
+				mes "[Alcouskou]";
+				mes "The small amount of training required";
+				mes "does require that you put in a full";
+				mes "effort . . .-";
+				mes ". . . . . *Ahem* . . . . .";
+				mes "Let first begin by practicing how to pick up";
+				mes "one ^3355FFBear's Footskin^000000 to familiarize the action.";
+				next;
+				mes "[Alcouskou]";
+				mes "And in lieu of a stone, try picking up";
+				mes " a ^3355FFZargon^000000 !";
+				mes "Would that be too little ?";
+				mes "Lets add ^3355FF5 Spawn^000000 !!";
+				mes "Show me your skill !";
+				mes "Retrieve these items by any means you see fit.";
+				close;
+			}
+		case 4:
+			if (countitem(910) > 1 && countitem(911) > 1 && (BaseJob == Job_Thief && JobLevel > 14) || BaseJob == Job_Assassin || BaseJob == Job_Rogue) {
+				mes "[Alcouskou]";
+				mes "Wow! Have you already gathered the items!";
+				mes "Very well, do you wish to begin?";
+				mes "Prepare the items you have gathered ..";
+				next;
+				mes "^3355FF- Shyuuk ! -^000000";
+				next;
+				mes "^3355FF- Shyuuuk Tuk. . -^000000";
+				next;
+				mes "^3355FF- Shyupattt !! - Tauk !! -^000000";
+				next;
+				mes "[Alcouskou]";
+				mes "Strike~~~!!";
+				mes "That was excellent !";
+				mes "You know have sufficient";
+				mes "power and skill.";
+				next;
+				mes "[Alcouskou]";
+				mes "Okay, that is all there is";
+				mes "to it. How you use it in";
+				mes "the future is up to you ..";
+				mes "I wish you luck!";
+				delitem 910,2; //Garlet
+				delitem 911,2; //Scell
+				skill 152,1,0;
+				close;
+			}
+			else {
+				mes "[Alcouskou]";
+				mes "The skilled and experienced";
+				mes "members of our guild are usually very handy!";
+				mes "They can pick up a small stone";
+				mes "by the road and use it to hit an";
+				mes "opponent accurately and quickly from";
+				mes "a distance.";
+				next;
+				mes "[Alcouskou]";
+				mes "They realized what a waste it was";
+				mes "to not teach this skill to others. -";
+				mes "They founded a group to train";
+				mes "others in this skill. . .";
+				mes "That is how the ^3355FF' Find Stone '^000000 and";
+				mes "^3355FF' Stone Fling '^000000 skills came to be.";
+				next;
+				mes "[Alcouskou]";
+				mes "It is handy to be able to find a stone";
+				mes "in most any place and have the";
+				mes "ability to hurl it into a distanced enemy.";
+				mes "A very valuable skill indeed. -";
+				mes "Without costing you a zeny, you";
+				mes "can have this skill at your disposal.";
+				next;
+				mes "[Alcouskou]";
+				mes "I really think of this as a great skill.";
+				mes "What do you think of it?";
+				mes ". . . . . Hah Hah Hah . . . . . .";
+				next;
+				mes "[Alcouskou]";
+				mes "^3355FFStone Fling !!^000000";
+				mes "This skill can be used so";
+				mes "readily and does not take any";
+				mes "extra money if you can pick up";
+				mes "stones well . . .";
+				mes "If you don't know how to choose";
+				next;
+				mes "[Alcouskou]";
+				mes "stones well, you can always buy";
+				mes "them from those who can.";
+				mes "And if you can choose stones well,";
+				mes "it could be very profitable for you.";
+				mes "What do you think? Do you like the idea?";
+				next;
+				mes "[Alcouskou]";
+				mes "If you wish to master this skill,";
+				mes "you will have to train quite a bit.";
+				mes "The training also requires some items";
+				mes "that won't be easy to find. . .";
+				mes "Of course, I am sure it won't be";
+				mes "impossible with your skill . .";
+				next;
+				mes "[Alcouskou]";
+				mes "You will need two ^3355FF' Garlet '^000000";
+				mes "and two ^3355FF' Scell '^000000 to start with.";
+				mes "Make sure they are similar to stones";
+				mes "and able to be thrown. When you";
+				mes "have gathered these items, I will be";
+				mes "happy to teach you.";
+				close;
+			}
+		case 5:
+			mes "[Alcouskou]";
+			mes "It seems you are not very experienced. . .";
+			mes "We may need some more time to consider you.";
+			close;
+		}
+	}
+	else {
 		mes "[Alcouskou]";
-		mes "Of course not every stone can be used as a weapon.  That is why the skill, ^5555FFFind Sone^000000, was developed.";
-		mes "With practice one can learn to pick out a stone that has a weight and shape that is fit for 'flinging'.";
-		next;
-		mes "[Alcouskou]";
-		mes "Once mastered a Thieve/Assassin will be able to pick up stones from any location.";
-		mes "Think about it... the ability to use a long range weapon without spending any zeny.... isn't it great?";
-		next;
-		mes "[Alcouskou]";
-		mes "If you want to learn this skill you must do a little training first.  Start by picking up ^5555FF1 Bear's Footskin^000000.";
-		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.";
-		next;
-		mes "[Alcouskou]";
-		mes "Collecting those items will help you develop the skills necessary to learn Find Stone.";
-		set @FINDSTONE, 1;
-		goto M_Menu;
-	M_Fling:
-		mes "[Alcouskou]";
-		if(@STONEFLING) goto L_Fling;
-		if(getskilllv(152)>0) goto L_GotFling;
-		mes "The more experienced and better skilled members of our guild are quite handy.";
-		mes "They can turn something as common as a rock on the ground into a very effective weapon.";
-		next;
-		mes "[Alcouskou]";
-		mes "They can throw a stone at a target far away with great accuracy and strength.";
-		mes "They can throw it so powerfully that sometimes an enemy will become stunned by it.";
-		next;
-		mes "[Alcouskou]";
-		mes "These guild members call this skill ^5555FFStone Fling^000000.  It is extremely useful and doesn't cost any zeny.";
-		next;
-		mes "[Alcouskou]";
-		mes "If you wish to learn Stone Fling you must first bring me ^5555FF2 Garlet and 2 Scell^000000.";
-		mes "You will also need to have mastered ^5555FFFind Stone^000000 as well.";
-		set @STONEFLING, 1;
-		goto M_Menu;
-	M_End:
-		mes "[Alcouskou]";
-		mes "It seems that you are not experienced enough yet....";
-		close;
-
-L_Sand:
-	if(countitem(7041)<5 || countitem(7042)<1) goto L_NotRdy1;
-	if(BaseJob==Job_Thief && JobLevel<25) goto L_LowLvl1;
-	delitem 7041, 5;
-	delitem 7042, 1;
-	mes "Alright, you've got all the items.  Now it's time to learn.... the... ultimate.... attack.... Sand Attack!!!";
-	next;
-	mes "[Alcouskou]";
-	mes "Look down at your feet.  See that? The very thing your stepping on is the secret behind this skill.........  SAND!!";
-	next;
-	mes "[Alcouskou]";
-	mes "Okay, grab a handful....... yep, that much will do....... now.........";
-	next;
-	mes "[Alcouskou]";
-	mes "THROW IT AT ME!!!";
-	emotion e_go;
-	next;
-	mes "[Alcouskou]";
-	mes "(AHHH!! My EYES!!! Son of a)......... ya see how effective that was........ (JEEZE that STINGS!!).......";
-	emotion e_omg;
-	next;
-	mes "[Alcouskou]";
-	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!!)";
-	next;
-	mes "[Alcouskou]";
-	mes "Oh and it does Earth Property damage....... (I gotta find a better way to teach this).........";
-	emotion e_swt;
-	skill 149,1,0;
-	set @SANDATTACK, 0;
-	close;
-
-	L_NotRdy1:
-		mes "You need ^5555FF5 Fine Grit^000000 and a ^FF3355'Leather Bag of Infinity'^000000.";
+		mes "Most thieves and assassins";
+		mes "have the basic skills to do";
+		mes "well at their job. However,";
+		mes "the skills that I can teach them";
+		mes "cannot be learned anywhere else.";
+		mes "If you every decide to";
 		next;
 		mes "[Alcouskou]";
-		mes "You can find the Leather Bag of Infinity by talking to a merchant by the name of ^5533FFRuRumuni^000000.";
-		mes "He can be found in the ^009500West end of Payon^000000.";
-		close;
-	L_LowLvl1:
-		mes "You need to have a ^5555FFJob level of 25^000000 to learn Sand Attack.";
-		close;
-	L_GotSand:
-		mes "Oh you're back... hopefully not to throw any more sand in my eyes, heh heh.... heh........ heh..............";
-		emotion e_swt;
-		close;
-
-L_Back:
-	if(countitem(940)<20) goto L_NotRdy2;
-	if(BaseJob==Thief && JobLevel<35) goto L_LowLvl2;
-	delitem 940,20;
-	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.";
-	next;
-	mes "[Alcouskou]";
-	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.";
-	next;
-	mes "[Alcouskou]";
-	mes "Okay, lets begin........";
-	next;
-	mes "~fwoosh~";
-	next;
-	mes "~fwooooosh~";
-	next;
-	mes "~fwoooooooooooooooosh~";
-	next;
-	mes "[Alcouskou]";
-	mes "Ah! You've got it.  Just like a pro.  With this skill being overwhelmed by mobs is a thing of the past.";
-	skill 150,1,0;
-	set @BACKSLIDE, 0;
-	close;
-
-	L_NotRdy2:
-		mes "You need ^5555FF20 Grasshopper's Legs^000000.";
-		close;
-	L_LowLvl2:
-		mes "You need a ^5555FFJob level of 35^000000 to learn Back Slide.";
-		close;
-	L_GotBack:
-		mes "Seeing as you already have Back Slide..... why don't you 'Back' on outta here.....";
+		mes "become a thief or assassin,";
+		mes "or know someone who is,";
+		mes "come to me or send them to me.";
+		mes "These new skills should be";
+		mes "taught to all who want to learn them.";
 		close;
+	}
+}
 
-L_Find:
-	if(countitem(912)<1 || countitem(948)<1 || countitem(908)<5) goto L_NotRdy3;
-	delitem 912,1;
-	delitem 948,1;
-	delitem 908,5;
-	mes "Ah! I see that you're fully prepared to learn this skill.  Let us begin....";
-	next;
-	mes "[Alcouskou]";
-	mes "There are many stones on the floor here.  Pick them all up one by one and examine each one carefully.";
-	mes "Get a feel for how much each one weighs and become aware of how each one has a different texture.";
-	next;
-	mes "[Alcouskou]";
-	mes "You must become one with the stone... it is the only way you will be able to use it effectively...";
-	next;
-	mes "~ an hour later... ~";
-	next;
-	mes "[Alcouskou]";
-	mes "Very good.  You have chosen some fine stones.  This tells me that you have now perfected the Find Stone skill.";
-	emotion e_no1;
-	skill 151,1,0;
-	set @FINDSTONE, 0;
-	next;
-	mes "[Alcouskou]";
-	mes "Have fun using it.";
-	close;
-
-	L_NotRdy3:
-		mes "You need ^5555FF1 Bear's Footskin, 1 Zargon, and 5 Spawns^000000 to learn Find Stone.";
-		close;
-	L_GotFind:
-		mes "Picking up stones can be fun but...... don't spend all day doing it OK?.....";
-		close;
-
-L_Fling:
-	if(getskilllv(151) == 0) goto L_NotRdy4;
-	if((countitem(910)<2) || (countitem(911)<2)) goto L_NotRdy4;
-	delitem 910,2;
-	delitem 911,2;
-	mes "Good! You look like you're ready for me to teach you the Stone Fling skill.  Let us begin....";
-	next;
-	mes "[Alcouskou]";
-	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.";
-	next;
-	mes "[Alcouskou]";
-	mes "Now imagine yourself going straight through the target! Continue to visualize this!";
-	next;
-	mes "~ 1/2 hour later... ~";
-	next;
-	mes "[Alcouskou]";
-	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.....";
-	next;
-	mes "[Alcouskou]";
-	mes "Open your eyes! SEE THE TARGET!! Throw the stone at the target as if you were hurling yourself towards it! DO IT NOW!!";
-	emotion e_go;
-	next;
-	mes "!!Whooooossshh!!................. !!Thwack!!";
-	next;
-	mes "[Alcouskou]";
-	mes "Haha! Excellent! It's a bullseye.  You have now mastered Stone Fling, congratulations.";
-	emotion e_no1;
-	skill 152,1,0;
-	set @STONEFLING, 0;
-	next;
-	mes "[Alcouskou]";
-	mes "As you can see this is a skill that relies heavily on concentration.";
-	mes "As long as you keep your mind focused you will have on problems using this skill.";
-	close;
-
-	L_NotRdy4:
-		mes "You need ^5555FF2 Scell and 2 Garlet^000000, and the ability to use ^5555FFFind Stone^000000 to learn Stone Fling.";
+payon,91,77,3	script	Bag Seller#qsk_tf	99,{
+	mes "[RuRumuni]";
+	mes "I am a humble merchant here";
+	mes "in Payon. I buy the leather";
+	mes "hides of animals brought in by";
+	mes "the hunters and make leather";
+	mes "pouches to sell. I grew up";
+	mes "around leather working and am quite good at it.";
+	next;
+	switch(THIEF_SK) {
+	case 0:
+		mes "[RuRumuni]";
+		mes "There is a thief guild in the";
+		mes "area of Moroc. I know one there";
+		mes "that sends me thieves in need";
+		mes "of items I make such as a";
+		mes "^3355FF' Leather Bag of Infinity '^000000.";
+		mes "They visit my store often.";
 		close;
-	L_GotFling:
-		mes "So Stone Fling is coming in handy huh? Just make sure you don't hit the wrong monster";
+	case 1:
+		if (countitem(952) > 0 && countitem(1055) > 0 && countitem(1025) > 0) {
+			mes "[RuRumuni]";
+			mes "Ahhh... You have come for a leather bag.";
+			mes "Very good, very good.";
+			mes "I will make you the leather bag";
+			mes "right away if you wait just a bit.";
+			mes "TuTak TuTak Shyuku Shyuku Shyuku";
+			mes "- - - - -";
+			next;
+			mes "[RuRumuni]";
+			mes "Okay, here it is all done.";
+			mes "Take this leather bag";
+			mes "to the Thief guild's Alcouskou";
+			mes "If you take him this, he will";
+			mes "teach you the skill that you ";
+			mes "wish to learn.";
+			delitem 952,1; //Cactus_Needle
+			delitem 1055,1; //Earthworm_Peeling
+			delitem 1025,1; //Spiderweb
+			set THIEF_SK,2;
+			getitem 7042,1; //Leather_Bag_Of_Infinity
+			close;
+		}
+		else {
+			mes "[RuRumuni]";
+			mes "Find Alcouskou of the thief guild";
+			mes "to place and order for a leather bag of infinity.";
+			mes "You should know that the leather bag of infinity";
+			mes "takes much time and skill to make.";
+			mes "In order to make such an item, you";
+			mes "must provide me with the materials.";
+			next;
+			mes "The items needed as materials are";
+			mes "these items. ..";
+			mes "^3355FF' Earthworm Peeling '^000000";
+			mes "^3355FF' Cobweb '^000000";
+			mes "^3355FF' Cactus Needle '^000000";
+			mes "I need one of each.";
+			close;
+	}
+	case 2:
+		mes "[RuRumuni]";
+		mes "Here is your leather bag of infinity.";
+		mes "Take this to the Thief guilds";
+		mes "Alcouskou and let him know ";
+		mes "that you are now ready to learn";
+		mes "the skill.";
 		close;
+	}
 }
 
-
-//====================================================================================
-payon,91,77,4	script	RuRumuni	99,{
-	mes "[RuRumuni]";
-	if(@SANDATTACK && !countitem(7042)) goto L_Start;
-
-	mes "I am a humble merchant here in Payon.  I buy leather hides, brought in by the hunters, to make leather pouches to sell.";
-	mes "I grew up around leather and am quite good at working with it.";
-	next;
-	mes "[RuRumuni]";
-	mes "There is a Thief guild in the Morroc area.";
-	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.";
-	close;
-
-L_Start:
-	if(@BAGNFNTY == 1) goto L_Check;
-	mes "Hello.  So you were sent by Alcouskou to obtain a ^5533FF'Leather Bag of Infinity'^000000........";
-	mes "I will be more than happy to make one for you............";
-	next;
-	mes "[RuRumuni]";
-	mes "But this bag is very special, and I will need some special items in order to make it.";
-	next;
-	set @BAGNFNTY, 1;
-
-L_List:
-	mes "[RuRumuni]";
-	mes "Here are the items that I will need:";
-	mes "- 5 ^5533FFScorpion Tails^000000";
-	mes "- 1 ^5533FFCobweb^000000";
-	mes "- 1 ^5533FFCactus Needle^000000";
-	mes "- 1 ^5533FFEarthworm Peeling^000000.";
-	next;
-	mes "[RuRumuni]";
-	mes "Once you have all of these items I will be able to make the Bag of Infinity for you.";
-	close;
-
-L_Check:
-	mes "Nice to see you again.  Do you have all of the items? Lets see........";
-	next;
-	if(countitem(904)<5 || countitem(1025)<1 || countitem(952)<1 || countitem(1055)<1) goto L_List;
-	delitem 904, 5;
-	delitem 1025, 1;
-	delitem 952, 1;
-	delitem 1055, 1;
-	mes "[RuRumuni]";
-	mes "Great you have everything I asked for.  Let me start making the bag right away.......";
-	next;
-	mes "~( 30 minutes later )~";
-	next;
-	mes "[RuRumuni]";
-	mes "Here you go, one Leather Bag of Infinity.  Enjoy!";
-	getitem 7042, 1;
-	set @BAGNFNTY, 0;
-	close;
-}
+//============================================================ 
+// Old changelog
+//============================================================ 
+//= v1.0 Fully working
+//= v1.1 Changed Sand Attack requirements from 5 Grit to 5 Fine Grit and a
+//= Leather Bag of Infinity.  These are the official RO requirements
+//= Added npc RuRumuni, maker of Leather Bag of Infinity. [kobra_k88]
+//= v1.1a Now using functions found in "Global_Functions.txt" for
+//= class checks.[kobra_k88]
+//= 1.2 Added Baby Class Support [Lupus]
+//= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
+//= 1.4 Fixed exploit [Lupus]
+//= 1.4a Fixed some typos [IVBela]
+//= 1.4b changed perm. variables to temp ones [Lupus]
+//============================================================