diff --git a/npc/quests/first_class/tu_acolyte.txt b/npc/quests/first_class/tu_acolyte.txt index 54022ff72c..202a9b73f0 100644 --- a/npc/quests/first_class/tu_acolyte.txt +++ b/npc/quests/first_class/tu_acolyte.txt @@ -1,15 +1,15 @@ -//===== rAthena Script ======================================= +//===== rAthena Script ======================================= //= Acolyte Class Tutorial and Job Specific Quest -//===== By: ================================================== +//===== By: ================================================== //= Fix up by Jukka -//===== Current Version: ===================================== -//= 1.9 -//===== Compatible With: ===================================== +//===== Current Version: ===================================== +//= 2.0 +//===== Compatible With: ===================================== //= rAthena Project -//===== Description: ========================================= +//===== Description: ========================================= //= [Official Conversion] //= Acolyte training quest. -//===== Additional Comments: ================================= +//===== Additional Comments: ================================= //= 1.0 Fully working //= 1.1 optimized [Lupus] //= 1.2 Fixed experience gains to match upcoming rate adjustments. [SinSloth] @@ -21,11 +21,12 @@ //= 1.7 Fixed exp, texts, and requirements in pre-renewal [Daegaladh] //= 1.8 Updated to match the official script. [Euphy] //= 1.9 Added GM management function. [Euphy] -//============================================================ +//= 2.0 Clean-up and little fix in Cleope Verce. [Capuche] +//============================================================ // Priest Praupin //============================================================ -prt_church,179,15,1 script Priest Praupin 110,{ +prt_church,179,15,1 script Priest Praupin 4_M_MINISTER,{ mes "[Priest Praupin]"; if(BaseJob != Job_Acolyte){ if(tu_acolyte01 == 25){ @@ -65,7 +66,7 @@ prt_church,179,15,1 script Priest Praupin 110,{ mes "[Priest Praupin]"; mes "I look forward to seeing you"; mes "become a better Acolyte after learning from Sister Asthe's instructions. If you like, I can send you to the convent."; - set tu_acolyte01, 1; + tu_acolyte01 = 1; next; if(select("Go to the convent.:Do not go.")==1){ mes "[Priest Praupin]"; @@ -94,7 +95,7 @@ prt_church,179,15,1 script Priest Praupin 110,{ mes "Ah, he's away at the convent right now. If you want to meet Bishop Maugins in the Saint Capitolina Convent, travel ^3131FFnorth^000000, ^3131FFeast^000000, ^3131FFeast^000000 and then ^3131FFeast^000000 from Prontera."; close; case 22: - if(countitem(7181) > 0){ // Receipt_01 + if(countitem(7181) > 0){// Receipt_01 emotion e_gasp; mes "Oh my, you seem"; mes "to be growing quickly"; @@ -119,25 +120,18 @@ prt_church,179,15,1 script Priest Praupin 110,{ mes "I know I'm not offering much,"; mes "but they were quite helpful to me when I was a young Acolyte like yourself."; next; - switch(select("Wand:Flail")) { - case 1: - delitem 7181,1; //Receipt_01 - set tu_acolyte01,23; + if (select("Wand:Flail") == 1) getitem 1604,1; //Wand - break; - case 2: - delitem 7181,1; //Receipt_01 - set tu_acolyte01,23; + else getitem 1510,1; //Flail - break; - } + delitem 7181,1; //Receipt_01 + tu_acolyte01 = 23; close; } else { mes "You are such a good person,"; mes "a true child of the light. I hope that many others will benefit from the purity of your heart and mind."; close; } - break; case 25: mes "You must now find"; mes "your own path and become"; @@ -176,7 +170,7 @@ prt_church,179,15,1 script Priest Praupin 110,{ // Asthe //============================================================ -prt_monk,230,106,3 script Asthe#tu 79,{ +prt_monk,230,106,3 script Asthe#tu 1_F_PRIEST,{ mes "[Asthe]"; switch(tu_acolyte01){ case 1: @@ -189,8 +183,8 @@ prt_monk,230,106,3 script Asthe#tu 79,{ if(select("I came for fun.:Priest Praupin suggested I come here.")==1){ mes "[Asthe]"; mes "This convent is always quiet and peaceful. Sitting on the benches and feeling the almighty presense all around you is such a relaxing, meditative experience."; - close; - } else { + } + else { mes "[Asthe]"; mes "Priest Praupin?"; mes "He's a very kind man"; @@ -203,10 +197,9 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "why don't you rest"; mes "for a little bit? You must be tired after traveling all the way here. When you're ready, just come"; mes "see me, okay?"; - set tu_acolyte01, 2; - close; + tu_acolyte01 = 2; } - break; + close; case 2: mes "This castle, Saint Capitolina Convent, is a beautiful and peaceful place that brings"; mes "calm to any heart."; @@ -249,13 +242,12 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "is the most necessary"; mes "skill for an Acolyte?"; next; - switch(select("Heal:Aqua Benedicta:Teleport")){ + switch(select("Heal:Aqua Benedicta:Teleport")){ case 1: mes "[Asthe]"; mes "Ah, yes."; mes "^3131FFHeal ^000000 is a basic, yet important skill for people like us. It can recover your own health as"; mes "well as that of others."; - next; break; case 2: mes "[Asthe]"; @@ -268,7 +260,6 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "^3131FFHeal^000000 is the most important"; mes "skill that an Acolyte can learn. It's a special ability that can save others and defeat the"; mes "monsters borne of darkness."; - next; break; case 3: mes "[Asthe]"; @@ -278,10 +269,9 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "In my opinion,"; mes "^3131FFHeal^000000 is the most important skill that an Acolyte can learn. It's a special ability that can save others and defeat the"; mes "monsters borne of darkness."; - next; break; } - + next; mes "[Asthe]"; mes "You can use the holy power"; mes "in the Heal skill to attack Undead monsters (^3131FFShift + Heal^000000). The light of truth protects the righteous and destroys the wicked."; @@ -294,7 +284,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "[Asthe]"; mes "HEAL !!"; npcskill "AL_HEAL",11,99,60; - set tu_acolyte01, 3; + tu_acolyte01 = 3; if(getskilllv("AL_HEAL") == 0){ getexp 0,100; specialeffect2 EF_CONE; @@ -332,12 +322,12 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "Well then,"; mes "I hope you"; mes "have a safe trip."; - set tu_acolyte01,4; + tu_acolyte01 = 4; getitem 1504,1; //Mace getitem 602,1; //Wing_Of_Butterfly savepoint "prt_monk",30,250; - close; - } else { + } + else { mes "[Asthe]"; mes "Oh my!"; mes "You've already"; @@ -350,13 +340,12 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "ready for me to discuss"; mes "the next subject. Now,"; mes "let's see... Hmm..."; - set tu_acolyte01, 5; - close; + tu_acolyte01 = 5; } - break; + close; case 4: if(getskilllv("AL_HEAL") > 2){ - if(countitem(1504) > 0){ + if(countitem(1504) > 0){// Mace mes "Oh my!"; mes "Welcome back~"; mes "I see that you've"; @@ -382,18 +371,15 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "Thank you so much."; mes "You have returned the Mace."; emotion e_heh; - set tu_acolyte01, 5; - delitem 1504, 1; //Mace - if(Class == Job_Acolyte_High) { + tu_acolyte01 = 5; + delitem 1504,1; //Mace + if(Class == Job_Acolyte_High) getexp 2000,1000; - specialeffect2 EF_CONE; - close; - } else { + else getexp 1000,500; - specialeffect2 EF_CONE; - close; - } - } else { + specialeffect2 EF_CONE; + } + else { mes "Oh my!"; mes "Welcome back~"; mes "I see that you've"; @@ -401,8 +387,8 @@ prt_monk,230,106,3 script Asthe#tu 79,{ next; mes "[Asthe]"; mes "But you must have forgotten the Mace I've lent you. Would you bring it back so that I can return it to the church?"; - close; } + close; } mes "Are you having"; mes "a hard time training"; @@ -435,7 +421,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "[Asthe]"; mes "Did you undertand all that?"; mes "Ho ho ho~ No need to try to remember everything right now. You'll get the hang of it."; - set tu_acolyte01, 6; + tu_acolyte01 = 6; close; case 6: mes ""+strcharinfo(0)+","; @@ -446,7 +432,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "[Asthe]"; mes "However, I'm a little busy with"; mes "my work right now, so would you deliver this to Priest Gardron in the next building for me?"; - set tu_acolyte01,7; + tu_acolyte01 = 7; getitem 7148,1; //Mother_Letter close; case 7: @@ -494,7 +480,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ next; mes "^3355FFSister Asthe gives"; mes "you some dog food.^000000"; - set tu_acolyte01, 10; + tu_acolyte01 = 10; close; case 11: case 12: @@ -515,7 +501,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "know the answer."; mes "Think carefully"; mes "and it will come."; - set tu_acolyte01, 12; + tu_acolyte01 = 12; close; case 13: mes "You remember that"; @@ -544,7 +530,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "Let's take a break before"; mes "we proceed to the next lesson,"; mes "alright? I'll be right here."; - set tu_acolyte01, 14; + tu_acolyte01 = 14; close; case 14: mes "Now it's time"; @@ -566,7 +552,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "[Asthe]"; mes "Try it for"; mes "yourself, okay?"; - set tu_acolyte01, 15; + tu_acolyte01 = 15; npcskill "AL_INCAGI",10,0,0; close; case 15: @@ -577,7 +563,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ next; mes "[Asthe]"; mes "Like you'd expect, Decrease AGI slows down enemies, reducing their agility, Movement Speed, Dodge Rate and Attack Speed. Its effect is the exact reverse of Increase AGI."; - set tu_acolyte01, 15; + tu_acolyte01 = 15; next; mes "[Asthe]"; mes "The last skill in the Heal skill tree is ^3131FFCure^000000. You can learn Cure after learning Level 2 Heal."; @@ -593,7 +579,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "For now, don't forget that the Increase AGI, Decrease AGI and"; mes "Cure skills can only be learned"; mes "by learning the Heal skill."; - set tu_acolyte01, 16; + tu_acolyte01 = 16; close; case 16: mes "You've been learning"; @@ -660,7 +646,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "[Asthe]"; mes "Ho ho!"; mes "What a smart Acolyte~"; - set tu_acolyte01, 17; + tu_acolyte01 = 17; } close; case 17: @@ -693,7 +679,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "to carry everything."; mes "Why don't you put some of your things in Kafra Storage first?"; } else { - set tu_acolyte01, 18; + tu_acolyte01 = 18; getitem 7183,1; //Sister_Letter getitem 7181,1; //Receipt_01 getitem 1081,2; //Merchant_Box_1 @@ -743,7 +729,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ mes "the next time we"; mes "meet, I will give"; mes "you my final lesson."; - set tu_acolyte01, 24; + tu_acolyte01 = 24; close; case 24: mes "The last skill"; @@ -777,7 +763,7 @@ prt_monk,230,106,3 script Asthe#tu 79,{ next; mes "[Asthe]"; mes "Well, please don't forget what I've taught you. I hope you look back with fondness at our time together amongst these beautiful flowers. May God bless you~"; - set tu_acolyte01, 25; + tu_acolyte01 = 25; if (checkre(3)) getexp 1000,1000; else @@ -802,10 +788,10 @@ prt_monk,230,106,3 script Asthe#tu 79,{ // Priest Gardron //============================================================ -monk_in,18,38,6 script Priest Gardron#tu 110,{ +monk_in,18,38,6 script Priest Gardron#tu 4_M_MINISTER,{ mes "[Priest Gardron]"; if(tu_acolyte01 == 7){ - if(countitem(7148) >= 1){ + if(countitem(7148) >= 1){// Mother_Letter mes "Hmm...?"; mes "What's that?"; mes "You have something for me?"; @@ -820,8 +806,7 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{ mes "she is getting old now, but I'm relieved to hear that her health"; mes "is good. We are truly blessed..."; delitem 7148,1; //Mother_Letter - set tu_acolyte01,8; - close; + tu_acolyte01 = 8; } else { mes "Hmm...?"; mes "What's that?"; @@ -832,10 +817,10 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{ mes "Well, it seems that"; mes "you must have forgotten"; mes "it or misplaced it somewhere."; - close; } + close; } else if(tu_acolyte01 == 8){ - if(countitem((checkre(0)?939:957)) > 4){ + if(countitem((checkre(0)?939:957)) > 4){// Bee_Sting mes "Oh...!"; mes "You've returned!"; mes "Let's see... One..."; @@ -855,7 +840,7 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{ mes "should return to Sister"; mes "Asthe to continue your"; mes "Acolyte training."; - set tu_acolyte01, 9; + tu_acolyte01 = 9; percentheal 100,100; if (checkre(3)) getexp 1000,1000; @@ -954,7 +939,7 @@ monk_in,18,38,6 script Priest Gardron#tu 110,{ // Dog //============================================================ -prt_monk,235,245,5 script Dog#tu 81,{ +prt_monk,235,245,5 script Dog#tu 4_DOG01,{ mes "[Dog]"; mes "^CDB79EBark bark!"; mes "Woof woof!^000000"; @@ -963,7 +948,7 @@ prt_monk,235,245,5 script Dog#tu 81,{ while(1) { switch(select("Give a treat.:Pet the dog.:End actions.")){ case 1: - set .@dog_food, .@dog_food + 1; + .@dog_food++; if(.@dog_food > 4){ mes "[Dog]"; mes "^CDB79EGrrrrrr...!^000000"; @@ -972,26 +957,23 @@ prt_monk,235,245,5 script Dog#tu 81,{ mes "^3355FFThe dog grinds"; mes "its teeth and glares"; mes "at you menacingly.^000000"; - next; } else { mes "[Dog]"; mes "^CDB79ERoof roof!^000000"; emotion e_lv; - next; } break; case 2: mes "[Dog]"; mes "^CDB79ERoof roof~^000000"; emotion e_lv; - next; break; case 3: mes "[Dog]"; mes "^CDB79ERoof roof!^000000"; - next; break; } + next; } } mes "["+strcharinfo(0)+"]"; @@ -1001,9 +983,9 @@ prt_monk,235,245,5 script Dog#tu 81,{ // Boy //============================================================ -prt_monk,243,238,5 script Boy#boy_voi 139,5,5,{ +prt_monk,243,238,5 script Boy#boy_voi HIDDEN_WARP_NPC,5,5,{ OnTouch_: - if(tu_acolyte01 != 10)end; + if(tu_acolyte01 != 10) end; mes "[??]"; mes "^333333*Sniff*^000000"; mes "Sister..."; @@ -1012,7 +994,7 @@ OnTouch_: // Ill Girl //============================================================ -prt_monk,226,257,6 script Ill Girl#tu 93,{ +prt_monk,226,257,6 script Ill Girl#tu 4_F_04,{ mes "[Angelic]"; if(tu_acolyte01 > 12){ mes "Thanks for helping me."; @@ -1087,15 +1069,15 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{ mes "["+strcharinfo(0)+"]"; mes "I'll cure you..."; mes "For sure."; - set tu_acolyte01, 11; - close; - } else if(tu_acolyte01 == 11){ + tu_acolyte01 = 11; + } + else if(tu_acolyte01 == 11){ next; mes "[Angelic]"; mes "It hurts...!"; mes "I... I can't...!"; - close; - } else if(tu_acolyte01 == 12){ + } + else if(tu_acolyte01 == 12){ next; mes "^3355FFYou go towards"; mes "the girl, place your hands"; @@ -1112,8 +1094,7 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{ mes "^3355FFNothing happened."; mes "It doesn't look like"; mes "that skill will work.^000000"; - close; - break; + close; case 2: if(getskilllv("AL_BLESSING") > 0){ mes "["+strcharinfo(0)+"]"; @@ -1131,7 +1112,7 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{ mes "practice your abilities!"; mes "It seemed that this good"; mes "deed has improved your skills.^000000"; - set tu_acolyte01, 13; + tu_acolyte01 = 13; if (checkre(3)) getexp 0,500; else @@ -1153,7 +1134,6 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{ mes "not able to use it for now.^000000"; close; } - break; case 3: if(getskilllv("AL_CURE") > 0){ mes "["+strcharinfo(0)+"]"; @@ -1163,13 +1143,13 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{ mes "^3355FFNothing happened."; mes "It doesn't look like"; mes "that skill will work.^000000"; - close; - } else { + } + else { mes "^3355FFYou didn't learn"; mes "this skill yet, so you're"; mes "not able to use it for now.^000000"; - close; } + close; case 4: mes "^3355FFThis isn't a skill"; mes "that Acolytes can use...^000000"; @@ -1184,19 +1164,18 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{ mes "^3355FFNothing happened."; mes "It doesn't look like"; mes "that skill will work.^000000"; - close; - } else { + } + else { mes "^3355FFYou didn't learn"; mes "this skill yet, so you're"; mes "not able to use it for now.^000000"; - close; } + close; case 6: mes "^3355FFThis isn't a skill"; mes "that Acolytes can use...^000000"; close; } - mes "[Angelic]"; mes "Ah..."; mes "I feel..."; @@ -1214,9 +1193,9 @@ prt_monk,226,257,6 script Ill Girl#tu 93,{ // Veiner //============================================================ -prt_monk,197,228,3 script Veiner 89,{ +prt_monk,197,228,3 script Veiner 4_M_ORIENT02,{ mes "[Veiner]"; - if(countitem(1081) && tu_acolyte01 == 18){ + if(countitem(1081) && tu_acolyte01 == 18){// Merchant_Box_1 mes "So very exhausted..."; mes "Should I just go back home?"; next; @@ -1238,34 +1217,35 @@ prt_monk,197,228,3 script Veiner 89,{ mes "Oh right!"; mes "Thank you very much for delivering this to me. Sorry, but I'm always excited to hear from my cutie pie~"; emotion e_thx; - set tu_acolyte01,19; + tu_acolyte01 = 19; delitem 1081,1; //Merchant_Box_1 - close; - } else if(tu_acolyte01 > 18){ + } + else if(tu_acolyte01 > 18){ mes "I can't wait"; mes "to see her again!"; mes "Bibi...! I loooove you!"; emotion e_kis2; - close; } - mes "So very"; - mes "exhausted..."; - mes "Would you help"; - mes "me carry my stuff?"; - mes "P-please..."; + else { + mes "So very"; + mes "exhausted..."; + mes "Would you help"; + mes "me carry my stuff?"; + mes "P-please..."; + } close; } // Hedrick //============================================================ -prt_monk,28,260,5 script Hedrick 50,{ +prt_monk,28,260,5 script Hedrick 1_M_04,{ mes "[Hedrick]"; mes "^333333*Whew!*^000000"; mes "Man I worked hard today!"; mes "And so efficiently too!"; mes "Awesome job as usual,"; mes "Hedrick. You're number one!"; - if(countitem(7148)==0 || tu_acolyte01 != 19) close; + if(countitem(7148)==0 || tu_acolyte01 != 19) close;// Mother_Letter next; mes "[Hedrick]"; mes "Oh...?"; @@ -1287,16 +1267,16 @@ prt_monk,28,260,5 script Hedrick 50,{ mes "you have one of the"; mes "cookies she sent me?"; delitem 7148,1; //Mother_Letter - set tu_acolyte01,20; + tu_acolyte01 = 20; getitem 538,1; //Well_Baked_Cookie close; } // Weapon Merchant //============================================================ -prt_monk,136,261,0 script Weapon Merchant#tu 139,9,9,{ +prt_monk,136,261,0 script Weapon Merchant#tu HIDDEN_WARP_NPC,9,9,{ OnTouch: - if(tu_acolyte01 != 20 || countitem(1081)==0) end; + if(tu_acolyte01 != 20 || countitem(1081) == 0) end;// Merchant_Box_1 mes "[Weapon Merchant]"; mes "The stuff I requested from the guild is finally here!"; mes "It's pretty tough to keep everything in stock since this is such a remote place."; @@ -1306,18 +1286,18 @@ OnTouch: mes "Oh, and come here if"; mes "you need anything, okay?"; delitem 1081,1; //Merchant_Box_1 - set tu_acolyte01,21; + tu_acolyte01 = 21; close; } // Karven //============================================================ -monk_in,103,176,7 script Karven 60,{ +monk_in,103,176,7 script Karven 1_M_PASTOR,{ mes "[Karven]"; mes "May you rest"; if(tu_acolyte01 == 21 && countitem(7183)){ - delitem 7183, 1; - set tu_acolyte01, 22; + delitem 7183, 1;// Sister_Letter + tu_acolyte01 = 22; mes "in peace forever..."; next; mes "[Karven]"; @@ -1346,7 +1326,7 @@ monk_in,103,176,7 script Karven 60,{ // Gloria //============================================================ -prt_monk,219,164,3 script Gloria#tu 95,{ +prt_monk,219,164,3 script Gloria#tu 4_F_SISTER,{ mes "[Gloria]"; if(BaseJob != Job_Acolyte){ mes "Hi, hi~"; @@ -1419,12 +1399,12 @@ prt_monk,219,164,3 script Gloria#tu 95,{ // Cleope Verce //============================================================ -prt_monk,153,210,3 script Cleope Verce 95,{ +prt_monk,153,210,3 script Cleope Verce 4_F_SISTER,{ mes "[Cleope Verce]"; - if(BaseJob != Job_Acolyte){ + if(BaseJob == Job_Acolyte){ if (JobLevel < 40) { if (BaseLevel < 26) { - mes "Oh my.. "; + mes "Oh my.. "; mes "A newbie Acolyte?"; mes "It doesn't even seem"; mes "like you've learned"; @@ -1466,7 +1446,7 @@ prt_monk,153,210,3 script Cleope Verce 95,{ mes "Rookie."; close; } else if(BaseLevel < 36){ - mes "Oh my.. "; + mes "Oh my.. "; mes "A young Acolyte?"; mes "You seem to have just"; mes "started learning your skills?"; @@ -1517,7 +1497,7 @@ prt_monk,153,210,3 script Cleope Verce 95,{ mes "young friend."; close; } else if(BaseLevel < 46){ - mes "Well, well, well~"; + mes "Well, well, well~"; mes "Hello, young Acolyte."; mes "You're still kind of"; mes "green, but I guess you're"; @@ -1593,7 +1573,7 @@ prt_monk,153,210,3 script Cleope Verce 95,{ } // Range NPC //============================================================ -prt_monk,217,123,0 script #tu_monk 139,10,10,{ +prt_monk,217,123,0 script #tu_monk HIDDEN_WARP_NPC,10,10,{ OnTouch_: if(BaseJob == Job_Acolyte){ switch(tu_acolyte01){ @@ -1614,7 +1594,7 @@ OnTouch_: // Eavesdrop //============================================================ -prt_monk,223,123,3 script Eavesdrop#tu 111,{ +prt_monk,223,123,3 script Eavesdrop#tu HIDDEN_NPC,{ if(BaseJob != Job_Acolyte){ mes "^3355FFThere's nothing here.^000000"; close; @@ -1643,8 +1623,8 @@ prt_monk,223,123,3 script Eavesdrop#tu 111,{ mes "^A68064 Alright, sir."; mes "Still, I can't help"; mes "but feel uneasy...^000000"; - close; - } else if(tu_acolyte01 > 9 && tu_acolyte01 < 25){ + } + else if(tu_acolyte01 > 9 && tu_acolyte01 < 25){ mes "[Voices from Window]"; mes "^A68064I heard from an"; mes "official at the palace"; @@ -1674,8 +1654,8 @@ prt_monk,223,123,3 script Eavesdrop#tu 111,{ next; mes "[Voices from Window]"; mes "^CD6600Thank you...^000000"; - close; - } else if(tu_acolyte01 > 24){ + } + else if(tu_acolyte01 > 24){ mes "[Voices from Window]"; mes "^A68064...Sir, do you know anything about the ^855E42curse of the Gaebolg family^A68064?^000000"; next; @@ -1776,34 +1756,34 @@ prt_monk,223,123,3 script Eavesdrop#tu 111,{ mes "[Voice from Window]"; mes "^CD6600Oh dear God."; mes "Please expel the darkness that approaches the Rune-Midgarts Kingdom. Please protect us with your light and compassion.^000000"; - close; } + close; } -sec_in02,17,156,3 script 1st Job Quest Reset 726,{ +sec_in02,17,156,3 script 1st Job Quest Reset 4_F_JOB_BLACKSMITH,{ callfunc "F_GM_NPC"; mes "[1st Job Quest]"; mes "Which would you like to reset?"; next; switch(select("Swordsman:Merchant:Archer:Acolyte:Thief:Mage")) { case 1: - set tu_swordman,0; + tu_swordman = 0; break; case 2: - set tu_merchant,0; + tu_merchant = 0; break; case 3: - set tu_archer01,0; - set tu_archer02,0; + tu_archer01 = 0; + tu_archer02 = 0; break; case 4: - set tu_acolyte01,0; + tu_acolyte01 = 0; break; case 5: - set tu_thief01,0; + tu_thief01 = 0; break; case 6: - set tu_magician01,0; + tu_magician01 = 0; break; } mes "Completed."; diff --git a/npc/quests/first_class/tu_archer.txt b/npc/quests/first_class/tu_archer.txt index ab4f6154dc..526c54757b 100644 --- a/npc/quests/first_class/tu_archer.txt +++ b/npc/quests/first_class/tu_archer.txt @@ -1,15 +1,15 @@ -//===== rAthena Script ======================================= +//===== rAthena Script ======================================= //= Archer Class Tutorial and Job Specific Quest -//===== By: ================================================== +//===== By: ================================================== //= Fix up by Jukka -//===== Current Version: ===================================== -//= 2.0 -//===== Compatible With: ===================================== +//===== Current Version: ===================================== +//= 3.0 +//===== Compatible With: ===================================== //= rAthena Project -//===== Description: ========================================= +//===== Description: ========================================= //= [Official Conversion] //= Archer training quest. -//===== Additional Comments: ================================= +//===== Additional Comments: ================================= //= 1.0 Fully working //= 1.1 optimized [Lupus] //= 1.2 fixed Weight check @@ -24,11 +24,12 @@ //= 1.9a Added 'npcskill' command. [Euphy] //= 2.0 Updated to match the official script. [Euphy] //= Added Pre-Renewal support. -//============================================================ +//= 3.0 Clean-up. [Capuche] +//============================================================ // Bard Jet //============================================================ -payon_in02,67,65,3 script Bard Jet#tu 51,{ +payon_in02,67,65,3 script Bard Jet#tu 1_M_BARD,{ mes "[Jet]"; mes "Every god never grows old"; mes "Because of beautiful"; @@ -37,7 +38,7 @@ payon_in02,67,65,3 script Bard Jet#tu 51,{ mes "Goddess of immortality."; next; mes "[Jet]"; - if(Class == Job_Archer || Class == Job_Baby_Archer || Class == Job_Archer_High){ + if (BaseJob == Job_Archer){ mes "Ooh, you're an Archer?"; mes "There was a time when I too"; mes "was an Archer. But I've changed jobs, so now I entertain the masses with my songs and humor."; @@ -103,8 +104,7 @@ payon_in02,67,65,3 script Bard Jet#tu 51,{ mes "everything and change"; mes "jobs so that you can"; mes "come play with me!"; - close; - } else if(Class == Job_Bard || Class == Job_Clown || Class == Job_Baby_Bard){ //CHECK + } else if (BaseJob == Job_Bard){ mes "Ooh...!"; mes "You're...!"; next; @@ -130,15 +130,13 @@ payon_in02,67,65,3 script Bard Jet#tu 51,{ mes "and the word Mammonite"; mes "sounds-- wait. It's not funny"; mes "if I have to explain it, huh?"; - close; - } else if(Class == Job_Dancer || Class == Job_Gypsy || Class == Job_Baby_Dancer){ + } else if (BaseJob == Job_Dancer){ mes "Ooh...!"; mes "Hello, hello!"; mes "Wouldn't it be"; mes "nice if we could"; mes "perform together"; mes "one of these days?"; - close; } else { mes "You look bored..."; mes "Is life really that"; @@ -164,7 +162,7 @@ payon_in02,67,65,3 script Bard Jet#tu 51,{ // Sign //============================================================ -pay_arche,127,154,4 script Sign#arc 835,{ +pay_arche,127,154,4 script Sign#arc 2_BOARD1,{ mes " "; mes " Archer Job Change Office ---> "; mes " <--- Icarus "; @@ -174,7 +172,7 @@ pay_arche,127,154,4 script Sign#arc 835,{ // Master Kavaruk //============================================================ -payon_in02,54,13,3 script Master Kavaruk 55,{ +payon_in02,54,13,3 script Master Kavaruk 1_M_JOBTESTER,{ mes "[Master Kavaruk]"; mes "Hello, young one."; mes "I am Master Kavaruk"; @@ -200,25 +198,22 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ mes "The members of our guild are those who not only wish to be brave, but to reach out for our dreams like Icarus did. Our members are aspiring Archers, former Archers and current Archers."; next; mes "[Master Kavaruk]"; - if(Class == Job_Novice || Class == Job_Baby){ + if (Class == Job_Novice){ mes "If you'd like to become an Archer, why don't you go around and learn"; mes "a few things about the profession? I'm sure you'll be able to hear plenty of stories around here."; - close; - - } else if(Class == Job_Archer){ + } + else if(Class == Job_Archer){ mes "Since you're an Archer, you might"; mes "benefit from going around and listening to everyone else's battle experiences. Becoming familiar with different fight scenarios will help you in the future."; - close; - - } else if(Class == Job_Hunter || Class == Job_Sniper || Class == Job_Baby_Hunter){ //CHECK + } + else if (BaseJob == Job_Hunter){ mes "[Master Kavaruk]"; mes "Arpesto is waiting"; mes "outside. Since he's a"; mes "veteran hunter, he can"; mes "be of great help to you."; - close; - - } else if(Class == Job_Dancer || Class == Job_Gypsy || Class == Job_Baby_Dancer){ //CHECK + } + else if (BaseJob == Job_Dancer){ mes "In fact, a few of our"; mes "members specialize in"; mes "capturing the fascination"; @@ -230,24 +225,23 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ mes "any of them around here right now. They never seem to remain in one"; mes "place for very long. Still, I'm sure of them will turn up here"; mes "one of these days."; - close; - - } else if(Class == Job_Bard || Class == Job_Clown || Class == Job_Baby_Bard){ //CHECK + } + else if (BaseJob == Job_Bard){ mes "In fact, a few of our members"; mes "are highly skilled in singing and entertaining their allies, much in the same way you do."; next; mes "[Master Kavaruk]"; mes "...But I don't seem to see any of them around here right now. They always wander wherever the wind takes them, but I'm sure one of them will wander back here one"; mes "of these days."; - close; } - mes "They happen to know a lot of information about jobs related to Archers. Why don't you speak to them and learn more about"; - mes "these other jobs?"; + else { + mes "They happen to know a lot of information about jobs related to Archers. Why don't you speak to them and learn more about"; + mes "these other jobs?"; + } close; - break; case 2: mes "[Master Kavaruk]"; - if(Class == Job_Archer || Class == Job_Baby_Archer || Class == Job_Archer_High){ + if (BaseJob == Job_Archer) { if(tu_archer02 == 0){ mes "Oh, it's a good thing"; mes "you're here, "+strcharinfo(0)+"."; @@ -267,9 +261,7 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ next; mes "[Master Kavaruk]"; mes "If you're interested, it would probably be best to speak to the Alchemist Guild member who is waiting to hear from us at the ^3131FFshop next to the road south of Icarus^000000."; - set tu_archer02,1; - close; - + tu_archer02 = 1; } else if(tu_archer02 == 1){ mes "Hmmm..."; mes ".........."; @@ -293,27 +285,23 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ mes "[Master Kavaruk]"; mes "Please find out if he is all right and help him with whatever he"; mes "may need. In the meantime, I will be waiting to hear from you. Thank you very much."; - set tu_archer02, 2; - close; - + tu_archer02 = 2; } else if(tu_archer02 == 2){ mes "Find Arthail"; mes "of the Wind for me."; mes "He must be somewhere"; mes "in Prontera..."; - close; - } else if(tu_archer02 == 9){ mes "Hmmm, I see. Thank you"; mes "for bringing me the news. As Arthail has said, I shall wait until he has more news for me."; mes "You should also train and prepare for the future as well."; - set tu_archer02, 10; + tu_archer02 = 10; if (checkre(3)) getexp 1000,1000; else getexp 2000,1000; - close; } + close; } mes "I don't know..."; mes "Recently, I haven't heard any noteworthy news. For now, the warmth of the sun seems to be protecting the peace here."; @@ -323,8 +311,6 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ mes "any interesting rumors,"; mes "I will let you know."; close; - break; - case 3: mes "[Master Kavaruk]"; if(tu_archer01 < 1){ @@ -333,21 +319,18 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ mes "So are you"; mes "interested in"; mes "becoming an Archer?"; - - } else if(BaseClass == Job_Archer){ + } else if (Class == Job_Archer_High || BaseJob == Job_Dancer || BaseJob == Job_Bard){ mes "Although I can't deny that you're an expert, I suppose it is a good idea to review the basics of archery from time to time. Would you like to try some refresher training?"; - } else if(Class == Job_Hunter || Class == Job_Sniper){ //CHECK + } else if (BaseJob == Job_Hunter){ mes "[Master Kavaruk]"; mes "Arpesto is waiting"; mes "outside. Since he's a"; mes "veteran hunter, he can"; mes "be of great help to you."; close; - } else if(Class == Job_Archer || Class == Job_Baby_Archer){ mes "As an Archer, I can see that you'd want to make sure that you have a strong grasp on the fundamentals"; mes "of our job. Would you like some specialized instruction?"; - } else { mes "Although you may not be able"; mes "to directly apply archery related knowledge, it's a good idea to understand the capabilities of"; @@ -360,7 +343,7 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ next; switch(select("Yes:No")){ case 1: - set tu_archer01, 1; + tu_archer01 = 1; mes "[Master Kavaruk]"; mes "Ah yes. Well then, please"; mes "take this message over to ^3131FFSeisner^000000 who is in the Training Grounds west of Icarus."; @@ -391,25 +374,22 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ mes "hills west of Icarus and"; mes "talk to ^3131FFSeisner^000000 to begin your special training."; close; - } else if(tu_archer01 == 3){ mes "So "+strcharinfo(0)+","; mes "Did you have a good experience? Learning theory alone is never too enjoyable, but it is necessary."; next; mes "[Master Kavaruk]"; - if(Class == Job_Archer || Class == Job_Archer_High || Class == Job_Baby_Archer){ + if (BaseJob == Job_Archer){ mes "Now it is time to experience the principles you've just learned firsthand. Go speak to ^3131FFReidin Corse^000000, who is just outside of this building, and he'll tell you about the different skills."; - set tu_archer01, 4; + tu_archer01 = 4; } else { mes "Still, there's no need for you to do any field training since only Archers can actually participate"; mes "in that."; } close; - - } else if(tu_archer01 == 4){ + } else if(tu_archer01 == 4 && BaseJob == Job_Archer) { mes "Reidin Corse is just outside of this building. Didn't you see him on your way in?"; close; - } } mes "You're great"; @@ -420,8 +400,14 @@ payon_in02,54,13,3 script Master Kavaruk 55,{ // Reidin Corse //============================================================ -pay_arche,103,165,5 script Reidin Corse#tu 832,{ +pay_arche,103,165,5 script Reidin Corse#tu 4_M_REIDIN_KURS,{ mes "[Reidin Corse]"; + if (checkweight(1201,1) == 0) { + mes "[Reidin Corse]"; + mes "Why are you carrying"; + mes "so much stuff? You better put everything you don't need into Kafra Storage."; + close; + } if(MaxWeight - Weight < 2000){ mes "Hey, you're carrying an"; mes "awful lot of stuff. You ought"; @@ -429,7 +415,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "into Kafra Storage..."; close; } - if(tu_archer01 > 0){ + if(tu_archer01 > 0 && (BaseJob != Job_Hunter && BaseJob != Job_Bard && BaseJob != Job_Dancer || Upper == 2)){ if(tu_archer01 == 4){ mes "Ah, what is it?"; mes "Can I help you"; @@ -493,27 +479,25 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "^3355FFReidin Corse narrows his experienced eyes and sizes you up.^000000"; next; mes "[Reidin Corse]"; - if(JobLevel > 39){ + if(JobLevel > 39) mes "Hey! You're ready to change jobs, aren't you? Don't waste time here and just get a new job already! Eh, or you can ask Master Kavaruk for something to do."; - close; - } else if(JobLevel < 5){ + else if(JobLevel < 5){ mes "Alright! We got a fresh Archer here! You're lucky you came to me, I'm the best teacher you can find! But let me warn you, I teach at a really fast pace, so try to keep"; mes "up. Okay? Good."; next; - set tu_archer01, 5; + tu_archer01 = 5; mes "[Reidin Corse]"; mes "Okay, I'm ready to begin the lessons! Come back over here once you've got your bow and arrows and everything else ready, got it?"; - close; } else { mes "Okay. It looks like you know"; mes "some stuff. But even if you're"; mes "a little experienced, there's still room for you to learn. So try and keep up, got it?"; next; - set tu_archer01, 5; + tu_archer01 = 5; mes "[Reidin Corse]"; mes "Well, I'm ready to teach whenever you're ready to learn. Come back once your bow and arrows and everything else is ready, alright?"; - close; } + close; } else if(tu_archer01 == 5){ mes "You ready? I think it's fair to remind you that I won't tolerate any complaining! Just do what"; mes "I say and you'll be the second best Archer in the world! After me, of course~"; @@ -544,9 +528,9 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "if you can't aim at your targets, you'd be horrible at archery, right? You gotta have Accuracy!"; next; mes "[Reidin Corse]"; - set .@skill_owl, getskilllv("AC_OWL"); + .@skill_owl = getskilllv("AC_OWL"); if(.@skill_owl < 3){ - set tu_archer01, 6; + tu_archer01 = 6; mes "Now, your first assignment"; mes "is to learn ^3131FFLevel 3 Owl's Eye^000000!"; if (checkre(0)) @@ -624,7 +608,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ } else { emotion e_ag; mes "Huh. So you already know a little about Owl's Eye already, huh? Well then, I guess I oughta talk about something you don't know about!"; - set tu_archer01, 7; + tu_archer01 = 7; getexp 500,0; close; } @@ -639,7 +623,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ close; } } else if(tu_archer01 == 6){ - set .@owl, getskilllv(43); + .@owl = getskilllv(43); if(.@owl > 2){ mes "Ah, you're"; mes "finally back."; @@ -651,7 +635,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "Ah, but your eyes look a lot sharper than they used to be."; mes "Here, this is a small, special reward for you."; specialeffect2 EF_WIND; - set tu_archer01, 7; + tu_archer01 = 7; getexp 500,0; next; emotion e_pif; @@ -730,8 +714,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "so they're perfect for target"; mes "practice from a distance!"; next; - - set .@eagle, getskilllv("AC_VULTURE"); + .@eagle = getskilllv("AC_VULTURE"); if(.@eagle < 3){ if (checkre(0)) mes "Alright, Mandagora usually live around Geffen. I can send you to Geffen, so just travel north from there to find"; @@ -745,16 +728,15 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ if(MaxWeight - Weight < 1000){ mes "You've got plenty of arrows"; mes "for that, so go for it!"; - set tu_archer01, 8; - next; + tu_archer01 = 8; } else { next; mes "[Reidin Corse]"; mes "Here's a little something to encourage you. Since Mandagora are Earth property monsters, these Fire Arrows will work really well."; - set tu_archer01,8; + tu_archer01 = 8; getitem 1752,300; //Fire_Arrow - next; } + next; mes "[Reidin Corse]"; mes "Alright~"; mes "Ready to go?"; @@ -786,12 +768,12 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "You already"; mes "learned Vulture's Eye!"; mes "Why did I spend so much time explaining about it? Well, I guess we're ready to move on to the next lesson..."; - set tu_archer01,9; + tu_archer01 = 9; getitem 1752,500; //Fire_Arrow close; } } else if(tu_archer01 == 8){ - set .@eagle, getskilllv("AC_VULTURE"); + .@eagle = getskilllv("AC_VULTURE"); if(.@eagle < 3){ if (checkre(0)) mes "Mandagora lives in the area north of Geffen. Learn up to Level 3 Vulture's Eye and get acquainted with your attack range."; @@ -824,7 +806,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ } else { mes "Ah, so you've learned"; mes "a little something about Vulture's Eye! What do you think about it now? Ah, and here's a little reward for you before I start the next lesson~"; - set tu_archer01,9; + tu_archer01 = 9; getitem 1752,500; //Fire_Arrow close; } @@ -846,7 +828,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "Whaddya think?"; mes "Exciting, yes?"; next; - set .@eagle, getskilllv("AC_DOUBLE"); + .@eagle = getskilllv("AC_DOUBLE"); if(.@eagle > 2){ mes "["+strcharinfo(0)+"]"; mes "I..."; @@ -860,7 +842,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "[Reidin Corse]"; mes "^333333*Sigh*^000000"; mes "Next lesson..."; - set tu_archer01, 10; + tu_archer01 = 10; close; } else { mes "[Reidin Corse]"; @@ -878,7 +860,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ next; if(.@eagle == 0){ specialeffect2 EF_WIND; - set tu_archer01, 10; + // tu_archer01 = 10; getexp 0,500; } emotion e_no1; @@ -928,9 +910,9 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "[Reidin Corse]"; mes "It's easier to find Izlude if you pass by Prontera, so head towards the fields near Prontera. Alright, off you go, " + strcharinfo(0) + "~"; } - set tu_archer01,11; + tu_archer01 = 11; close; - } else if(tu_archer01 == 11){ + } else if(tu_archer01 == 11){// Grasshopper's_Leg if (checkre(0) && countitem(940) < 10) { mes "Hey..."; mes "You gotta bring"; @@ -956,7 +938,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "Good! You pass."; mes "Don't forget that you gotta keep training and improve your skills. Before you know it, you'll be an expert almost as good as me!"; specialeffect2 EF_WIND; - set tu_archer01, 12; + tu_archer01 = 12; if (checkre(0)) delitem 940,10; //Grasshopper's_Leg getexp 1000,1000; @@ -984,7 +966,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "[Reidin Corse]"; mes "You might not be able"; mes "to see it now, but as you become more skilled, you'll eventually recognize all the benefits of this skill."; - set tu_archer01, 13; + tu_archer01 = 13; close; } else if(tu_archer01 == 13){ mes "^333333*Sigh*^000000"; @@ -1029,14 +1011,14 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ } else { mes "This stuff is just a little something to encourage you, so don't take it the wrong way! Now hurry up, get what I asked for,"; mes "and come back!"; - set tu_archer01,14; + tu_archer01 = 14; getitem 601,10; //Wing_Of_Fly getitem 501,10; //Red_Potion getitem 602,1; //Wing_Of_Butterfly close; } } else if((tu_archer01 == 14) || (tu_archer01 == 15)){ - if (checkre(0) && (countitem(906) < 10 || countitem(921) < 10)) { + if (checkre(0) && (countitem(906) < 10 || countitem(921) < 10)) {// Pointed_Scale, Mushroom_Spore mes "Remember, you"; mes "need to head into"; mes "the forest east of Payon and get me"; @@ -1089,7 +1071,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ mes "my final exam! Here, take"; mes "this little reward!"; specialeffect2 EF_WIND; - set tu_archer01,16; + tu_archer01 = 16; if (checkre(3)) getexp 1000,1000; else @@ -1189,7 +1171,7 @@ pay_arche,103,165,5 script Reidin Corse#tu 832,{ // Seisner //============================================================ -pay_arche,84,139,3 script Seisner 727,{ +pay_arche,84,139,3 script Seisner 4_F_JOB_HUNTER,{ specialeffect EF_HIT2,"#Target"; mes "[Seisner]"; mes "Aaaah!"; @@ -1216,8 +1198,8 @@ pay_arche,84,139,3 script Seisner 727,{ mes "So Master Kavaruk"; mes "wants me to teach you"; mes "about Archers and Archery? Alright, what would you like to know more about?"; - next; while(1){ + next; switch(select("About Archers.:Stats for Archers:End Conversation.")){ case 1: mes "[Seisner]"; @@ -1243,8 +1225,7 @@ pay_arche,84,139,3 script Seisner 727,{ next; mes "[Seisner]"; mes "Hunters can ultimately transcend into ^3131FFSnipers^000000, Bards into ^3131FFMinstrels^000000, and Dancers into ^3131FFGypsies^000000. I know that's pretty complex."; - if(tu_archer01 == 1) set tu_archer01, 2; - next; + if(tu_archer01 == 1) tu_archer01 = 2; break; case 2: mes "[Seisner]"; @@ -1270,8 +1251,8 @@ pay_arche,84,139,3 script Seisner 727,{ mes "increase the amount of weight"; mes "that any character can carry. So if you have more STR, you can carry around more arrows."; next; - if(tu_archer01 == 1) set tu_archer01, 2; - break; + if(tu_archer01 == 1) tu_archer01 = 2; + continue; case 2: mes "[Seisner]"; mes "^FF3131AGI^000000 as you know, "; @@ -1281,8 +1262,8 @@ pay_arche,84,139,3 script Seisner 727,{ mes "[Seisner]"; mes "One of the drawbacks of being an Archer is having weaker strength and lower Dodge Rate. However, the Dodge Rate disadvantage is lessened by increasing your ^FF3131AGI^000000."; next; - if(tu_archer01 == 1) set tu_archer01, 2; - break; + if(tu_archer01 == 1) tu_archer01 = 2; + continue; case 3: mes "[Seisner]"; mes "^3131FFVIT^000000 will increase"; @@ -1297,8 +1278,8 @@ pay_arche,84,139,3 script Seisner 727,{ mes "VIT might be helpful"; mes "depending on how you use it. Still, I wouldn't recommend focusing too much on increasing your VIT if you're an Archer."; next; - if(tu_archer01 == 1) set tu_archer01, 2; - break; + if(tu_archer01 == 1) tu_archer01 = 2; + continue; case 4: mes "[Seisner]"; mes "^FF0000INT^000000 is more"; @@ -1313,8 +1294,8 @@ pay_arche,84,139,3 script Seisner 727,{ mes "[Seisner]"; mes "For Hunters, one of the Second Job Classes for Archers, having higher INT will increase the damage inflicted by ^3131FFFalcons^000000."; next; - if(tu_archer01 == 1) set tu_archer01, 2; - break; + if(tu_archer01 == 1) tu_archer01 = 2; + continue; case 5: mes "[Seisner]"; mes "Now DEX is almost"; @@ -1332,8 +1313,8 @@ pay_arche,84,139,3 script Seisner 727,{ mes "[Seisner]"; mes "Just like any other class, ^FF3131DEX^000000 increases ^3131FFAccuracy (HIT)^000000 and slightly enhances Attack Speed (ASPD)."; next; - if(tu_archer01 == 1) set tu_archer01, 2; - break; + if(tu_archer01 == 1) tu_archer01 = 2; + continue; case 6: mes "[Seisner]"; mes "^FF0000LUK^000000 affects your"; @@ -1343,18 +1324,16 @@ pay_arche,84,139,3 script Seisner 727,{ mes "[Seisner]"; mes "For Hunters, one of the Second Classes for the Archer, LUK increases the chance of ^3131FFBlitz Beat^000000 occurring automatically. So Hunters who rely on their Falcons might want to invest in LUK."; next; - if(tu_archer01 == 1) set tu_archer01, 2; - break; + if(tu_archer01 == 1) tu_archer01 = 2; + continue; case 7: mes "[Seisner]"; mes "So is there"; mes "anything else that"; mes "you want to ask me?"; - next; - set .@exitwhile,1; break; } - if (.@exitwhile) break; + break; } break; case 3: @@ -1378,7 +1357,7 @@ pay_arche,84,139,3 script Seisner 727,{ mes "If you feel comfortable enough with the knowledge I've taught you, you should go back to Master Kavaruk. But if you still have questions, you can always come and ask me."; close2; specialeffect2 EF_WIND; - set tu_archer01, 3; + tu_archer01 = 3; if(JobLevel == 1){ getexp 0,30; } else if((JobLevel > 1) && (JobLevel < 11)){ @@ -1395,7 +1374,7 @@ pay_arche,84,139,3 script Seisner 727,{ // Target //============================================================ -pay_arche,76,135,3 script #Target 111,{ end; } +pay_arche,76,135,3 script #Target HIDDEN_NPC,{ end; } // Acolyte //============================================================ @@ -1431,7 +1410,7 @@ pay_arche,76,135,3 script #Target 111,{ end; } mes "Wow!"; mes "Thank you, thank you!"; mes "I''ll try my very best!"; - set tu_archer01, 15; + tu_archer01 = 15; close; case 2: mes "[Acolyte]"; @@ -1456,8 +1435,6 @@ pay_arche,76,135,3 script #Target 111,{ end; } mes "Y-you're a man!"; mes "D-d-d-don't tease me"; mes "like that! I'm serious!"; - set tu_archer01, 15; - close; } else { mes "And he's so brave"; mes "and funny and smart."; @@ -1468,12 +1445,12 @@ pay_arche,76,135,3 script #Target 111,{ end; } mes "^333333*Sniffle*^000000"; mes "I'll d-do my best to help you!"; mes "I wish you both happiness! (Waaaaaah~!)"; - set tu_archer01, 15; - close; } + tu_archer01 = 15; + close; } - end; - } else { + } + else { mes "^666666Zzzzz...^000000"; mes "Wh-wha...?"; mes "Who are you?"; @@ -1487,7 +1464,6 @@ pay_arche,76,135,3 script #Target 111,{ end; } case 0: npcskill "AL_HEAL",3,90,62; break; case 1: npcskill "AL_HEAL",9,90,62; break; case 2: npcskill "AL_HEAL",8,90,62; break; - case 3: break; } switch(rand(3)) { case 0: npcskill "AL_INCAGI",1,0,0; break; @@ -1501,7 +1477,8 @@ pay_arche,76,135,3 script #Target 111,{ end; } } close; } - } else if(tu_archer01 == 15){ + } + else if(tu_archer01 == 15){ if((gettime(3) >= 18) && (gettime(3) < 22)){ mes "^666666Zzzzz...^000000"; mes "Wh-wha...?"; @@ -1528,7 +1505,6 @@ pay_arche,76,135,3 script #Target 111,{ end; } case 0: npcskill "AL_HEAL",3,90,62; break; case 1: npcskill "AL_HEAL",10,90,62; break; case 2: npcskill "AL_HEAL",8,90,62; break; - case 3: break; } switch(rand(3)) { case 0: npcskill "AL_INCAGI",1,0,0; break; @@ -1553,7 +1529,7 @@ pay_arche,76,135,3 script #Target 111,{ end; } // Alchemist Guildmember //============================================================ -pay_arche,130,113,3 script Alchemist Guildmember#tu 740,{ +pay_arche,130,113,3 script Alchemist Guildmember#tu 2_M_ALCHE,{ mes "[Alchemist Guildmember]"; if(tu_archer02 > 0){ if((countitem(1032) > 0) || (countitem(905) > 0 )){ // Blossom_Of_Maneater & Stem @@ -1580,20 +1556,14 @@ pay_arche,130,113,3 script Alchemist Guildmember#tu 740,{ mes "Flora field! I really"; mes "appreciate your help~"; - set .@alche_f,countitem(1032); // Blossom_Of_Maneater - set .@alche_s,countitem(905); // Stem - set .@f_zeny, .@alche_f * 130; - set .@s_zeny, .@alche_s * 30; - set .@total_zeny, .@f_zeny + .@s_zeny; - if(countitem(1032) == 0){ - delitem 905, .@alche_s; //Stem - } else if(countitem(905) == 0){ - delitem 1032, .@alche_f; //Blossom_Of_Maneater - } else { + .@alche_f = countitem(1032); // Blossom_Of_Maneater + .@alche_s = countitem(905); // Stem + .@total_zeny = .@alche_f * 130 + .@alche_s * 30; + if (countitem(1032)) delitem 1032, .@alche_f; //Blossom_Of_Maneater + if (countitem(905)) delitem 905, .@alche_s; //Stem - } - set Zeny,Zeny+.@total_zeny; + Zeny = Zeny+.@total_zeny; close; case 2: mes "[Alchemist Guildmember]"; @@ -1627,7 +1597,7 @@ pay_arche,130,113,3 script Alchemist Guildmember#tu 740,{ // Arthail //============================================================ -prontera,126,335,5 script Arthail 51,{ +prontera,126,335,5 script Arthail 1_M_BARD,{ mes "[Arthail]"; if(tu_archer02 < 3){ mes "I am the Bard"; @@ -1679,16 +1649,15 @@ prontera,126,335,5 script Arthail 51,{ next; mes "[Arthail]"; mes "Would you please go and see if there's any news being spread around in that area for me?"; - set tu_archer02, 3; + tu_archer02 = 3; } - close; - } else if(tu_archer02 == 3){ + } + else if(tu_archer02 == 3){ mes "I'm ashamed to ask,"; mes "but would you go the fountain in Prontera's central plaza and see"; mes "if there's any news?"; - close; - - } else if(tu_archer02 == 4){ + } + else if(tu_archer02 == 4){ mes "I see..."; mes "Nothing much."; mes "Another person"; @@ -1767,14 +1736,11 @@ prontera,126,335,5 script Arthail 51,{ mes "I can't help it then."; mes "I'd better go check"; mes "this out on my own."; - set tu_archer02, 5; - close; - - } else if(tu_archer02 > 4 && tu_archer02 < 7){ + tu_archer02 = 5; + } + else if(tu_archer02 > 4 && tu_archer02 < 7) mes "^333333Zzzzz...^000000"; - close; - - } else if(tu_archer02 == 8){ + else if(tu_archer02 == 8){ mes "Where did you go?"; mes "I thought you might have been kidnapped since you weren't"; mes "here when I woke up."; @@ -1798,17 +1764,18 @@ prontera,126,335,5 script Arthail 51,{ mes "I guess I'll finally"; mes "have a song that"; mes "I can share with you."; - set tu_archer02, 9; - close; + tu_archer02 = 9; + } + else { + mes "..."; + mes "......"; } - mes "..."; - mes "......"; close; } // New Guild Master //============================================================ -prontera,167,281,3 script New Guild Master#tu 753,{ +prontera,167,281,3 script New Guild Master#tu 4_M_MONK,{ mes "[New Guild Master]"; mes "Hearken, all"; mes "of you who seek"; @@ -1825,13 +1792,13 @@ prontera,167,281,3 script New Guild Master#tu 753,{ mes "those who call themselves"; mes "my comrades will never"; mes "know the taste of defeat!"; - if(tu_archer02 == 3) set tu_archer02, 4; + if(tu_archer02 == 3) tu_archer02 = 4; close; } // Mage //============================================================ -prontera,144,301,5 script Mage#tu 123,{ +prontera,144,301,5 script Mage#tu 2_F_MAGICMASTER,{ mes "[Mage]"; mes "Did you see that"; mes "new guild master?"; @@ -1859,7 +1826,7 @@ prontera,144,301,5 script Mage#tu 123,{ // Minister //============================================================ -prt_castle,76,165,6 script Minister#tu 55,{ +prt_castle,76,165,6 script Minister#tu 1_M_JOBTESTER,{ mes "[Minister]"; mes "The royal family"; mes "is extremely busy"; @@ -1878,15 +1845,15 @@ prt_castle,76,165,6 script Minister#tu 55,{ next; mes "[Minister]"; mes "Ah, there are a few stray cats running around, those Wild Roses, so those noises you heard must have been them. Everything is fine here in the palace."; - set tu_archer02, 6; - close; - } else if(tu_archer02 == 7){ + tu_archer02 = 6; + } + else if(tu_archer02 == 7){ next; mes "^3355FFThe urgency that the Minister expressed earlier has been"; mes "replaced with a stone cold feeling of sternness. He probably won't tell you much more information,"; mes "no matter how much you ask him."; - close; - } else if(tu_acolyte01 == 25){ + } + else if(tu_acolyte01 == 25){ next; mes "["+strcharinfo(0)+"]"; mes "Um..."; @@ -1913,20 +1880,20 @@ prt_castle,76,165,6 script Minister#tu 55,{ next; mes "[Minister]"; mes "As a holy servant, I'm sure that you'll find plenty of other people who have need of your help and abilities outside of the palace."; - } + } close; } // Range NPC //============================================================ -prt_castle,94,150,4 script #sound_tu 139,6,6,{ +prt_castle,94,150,4 script #sound_tu HIDDEN_WARP_NPC,6,6,{ OnTouch_: if(tu_archer02 == 6) { mes "[Minister]"; mes "Contact the"; mes "Prontera Church."; mes "Hurry, this is urgent!"; - set tu_archer02, 7; + tu_archer02 = 7; close; } end; @@ -1934,7 +1901,7 @@ OnTouch_: // Bishop Maugins //============================================================ -monk_in,19,43,1 script Bishop Maugins 60,{ +monk_in,19,43,1 script Bishop Maugins 1_M_PASTOR,{ mes "[Bishop Maugins]"; if(tu_archer02 == 7){ mes "Greetings."; @@ -1947,8 +1914,7 @@ monk_in,19,43,1 script Bishop Maugins 60,{ mes "charge of that area. So"; mes "how may I help you?"; next; - switch(select("Has something happened to the Kingdom?:Nothing.")) { - case 1: + if (select("Has something happened to the Kingdom?:Nothing.") == 1) { mes "[Bishop Maugins]"; mes "...!!"; next; @@ -1961,8 +1927,7 @@ monk_in,19,43,1 script Bishop Maugins 60,{ mes "Of course not!"; mes "The king and I regularly write to each other, but I haven't heard of anything in particular. Please don't worry yourself."; next; - set tu_archer02, 8; - break; + tu_archer02 = 8; } mes "[Bishop Maugins]"; mes "Good luck on"; diff --git a/npc/quests/first_class/tu_ma_th01.txt b/npc/quests/first_class/tu_ma_th01.txt index 3f96e35201..13faac166b 100644 --- a/npc/quests/first_class/tu_ma_th01.txt +++ b/npc/quests/first_class/tu_ma_th01.txt @@ -1,1336 +1,796 @@ -//===== rAthena Script ======================================= +//===== rAthena Script ======================================= //= Thief Mage Quest Story Mode -//===== By: ================================================== +//===== By: ================================================== //= Fix up by Jukka -//===== Current Version: ===================================== -//= 1.3 -//===== Compatible With: ===================================== +//===== Current Version: ===================================== +//= 2.0 +//===== Compatible With: ===================================== //= rAthena Project -//===== Description: ========================================= +//===== Description: ========================================= //= [Official Conversion] //= Battle Traces from Thief and Magician training quests. -//===== Additional Comments: ================================= +//===== Additional Comments: ================================= //= 1.0 Fully working //= 1.1 optimized [Lupus] //= 1.2 Changed "battle_trace" to "Trace of Battle". [L0ne_W0lf] //= 1.3 Misc. updates. [L0ne_W0lf] -//============================================================ +//= 2.0 Clean-up. [Capuche] +//============================================================ // Battle Traces 1 //============================================================ -moc_fild12,166,369,0 script Trace of Battle#1 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 5){ - mes "^3355FFYou find traces of poison"; - mes "used in a battle. You sense"; - mes "its potency and decide not"; - mes "to get too close to it.^000000"; - close; - } else if(tu_thief01 == 5){ - mes "^3355FFYou find traces of poison"; - mes "used in a battle. A feeling"; - mes "of acute dizziness overcomes"; - mes "you after examining the scene.^000000"; - set tu_thief01, 6; - sc_start SC_Poison,60000,0; +moc_fild12,166,369,0 script Trace of Battle#1 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThere are signs that show"; + mes "that some violent scuffle"; + mes "might have occurred here,"; + mes "but you can't tell what had"; + mes "happened exactly...^000000"; + } else if (tu_thief01 < 5 && .@class_thief || .@class_mage && tu_magician01 < 8) { + mes "^3355FFYou find traces of poison"; + mes "used in a battle. You sense"; + mes "its potency and decide not"; + mes "to get too close to it.^000000"; + if (.@class_mage) specialeffect EF_VENOMDUST2; - close; - } else if(tu_thief01 == 6){ - mes "^3355FFYou find traces of poison"; - mes "used in a battle. A feeling"; - mes "of acute dizziness overcomes"; - mes "you after examining the scene.^000000"; - sc_start SC_Poison,60000,0; - specialeffect EF_VENOMDUST2; - close; - } else if(tu_thief01 == 7){ - mes "^3355FFYou find traces of poison"; - mes "used in a battle. You sense"; - mes "its potency and decide not"; - mes "to get too close to it.^000000"; - close; - } else if(tu_thief01 == 8){ - mes "^3355FFThere are traces of a battle"; - mes "that seem to be leading in"; - mes "different directions. From the"; - mes "peculiar smell that permeates"; - mes "the area, it seems that some"; - mes "kind of lethal poison was used.^000000"; - next; - mes "^3355FFStill..."; - mes "The trail of this"; - mes "battle decidedly"; - mes "heads southward.^000000"; - set tu_thief01, 9; - close; - } else { - mes "^3355FFYou find signs of"; - mes "a heated pursuit"; - mes "that head south."; - close; - } + } else if (tu_thief01 == 5 && .@class_thief) { + mes "^3355FFYou find traces of poison"; + mes "used in a battle. A feeling"; + mes "of acute dizziness overcomes"; + mes "you after examining the scene.^000000"; + tu_thief01 = 6; + sc_start SC_Poison,60000,0; + specialeffect EF_VENOMDUST2; + } else if (tu_thief01 == 6 && .@class_thief) { + mes "^3355FFYou find traces of poison"; + mes "used in a battle. A feeling"; + mes "of acute dizziness overcomes"; + mes "you after examining the scene.^000000"; + sc_start SC_Poison,60000,0; + specialeffect EF_VENOMDUST2; + } else if (tu_thief01 == 7 && .@class_thief) { + mes "^3355FFYou find traces of poison"; + mes "used in a battle. You sense"; + mes "its potency and decide not"; + mes "to get too close to it.^000000"; + } else if (.@class_thief && tu_thief01 == 8 || .@class_mage && tu_magician01 == 8) { + mes "^3355FFThere are traces of a battle"; + mes "that seem to be leading in"; + mes "different directions. From the"; + mes "peculiar smell that permeates"; + mes "the area, it seems that some"; + mes "kind of lethal poison was used.^000000"; + next; + mes "^3355FFStill..."; + mes "The trail of this"; + mes "battle decidedly"; + mes "heads southward.^000000"; + if (tu_magician01 == 8) + tu_magician01 = 9; + else + tu_thief01 = 9; + } else { + mes "^3355FFYou find signs of"; + mes "a heated pursuit"; + mes "that head south."; } - if(BaseClass == Job_Mage){ - if(tu_magician01 < 8){ - mes "^3355FFYou find traces of poison"; - mes "used in a battle. You sense"; - mes "its potency and decide not"; - mes "to get too close to it.^000000"; - specialeffect EF_VENOMDUST2; - close; - } else if(tu_magician01 == 8){ - mes "^3355FFThere are traces of a battle"; - mes "that seem to be leading in"; - mes "different directions. From the"; - mes "peculiar smell that permeates"; - mes "the area, it seems that some"; - mes "kind of lethal poison was used.^000000"; - next; - mes "^3355FFStill..."; - mes "The trail of this"; - mes "battle decidedly"; - mes "heads southward.^000000"; - set tu_magician01, 9; - close; - } else { - mes "^3355FFYou find signs of"; - mes "a heated pursuit"; - mes "that head south."; - close; - } - } - mes "^3355FFThere are signs that show"; - mes "that some violent scuffle"; - mes "might have occurred here,"; - mes "but you can't tell what had"; - mes "happened exactly...^000000"; close; } // Battle Traces 2 //============================================================ -moc_fild12,173,215,0 script Trace of Battle#2 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 9){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_thief01 == 9){ - mes "^3355FFYou've found traces"; - mes "of the pursuit which"; - mes "continue eastward.^000000"; - set tu_thief01, 10; - close; - } else { - mes "^3355FFThese traces of"; - mes "the pursuit lead"; - mes "towards the east.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 9){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_magician01 == 9){ - mes "^3355FFYou've found traces"; - mes "of the pursuit which"; - mes "continue eastward.^000000"; - set tu_magician01, 10; - close; - } else { - mes "^3355FFThese traces of"; - mes "the pursuit lead"; - mes "towards the east.^000000"; - close; - } +moc_fild12,173,215,0 script Trace of Battle#2 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThere are signs that show"; + mes "that some violent scuffle"; + mes "might have occurred here,"; + mes "but you can't tell what had"; + mes "happened exactly...^000000"; + } else if (tu_thief01 < 9 && .@class_thief || tu_magician01 < 9 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "that many people"; + mes "have traveled through"; + mes "this particular area.^000000"; + } else if (tu_thief01 == 9 && .@class_thief || tu_magician01 == 9 && .@class_mage) { + mes "^3355FFYou've found traces"; + mes "of the pursuit which"; + mes "continue eastward.^000000"; + if (tu_magician01 == 9) + tu_magician01 = 10; + else + tu_thief01 = 10; + } else { + mes "^3355FFThese traces of"; + mes "the pursuit lead"; + mes "towards the east.^000000"; } - mes "^3355FFThere are signs that show"; - mes "that some violent scuffle"; - mes "might have occurred here,"; - mes "but you can't tell what had"; - mes "happened exactly...^000000"; close; } // Battle Traces 3 //============================================================ -moc_fild12,276,165,0 script Trace of Battle#3 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 10){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_thief01 == 10){ - mes "^3355FFYou examine these traces"; - mes "and notice that one set of"; - mes "footprints looks almost too"; - mes "pronounced, as if it had been"; - mes "made for somebody to find.^000000"; - set tu_thief01, 11; - close; - } else { - mes "^3355FFIt's a very"; - mes "strange looking"; - mes "set of footprints.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 10){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_magician01 == 10){ - mes "^3355FFYou examine these traces"; - mes "and notice that one set of"; - mes "footprints looks almost too"; - mes "pronounced, as if it had been"; - mes "made for somebody to find.^000000"; - set tu_magician01, 11; - close; - } else { - mes "^3355FFIt's a very"; - mes "strange looking"; - mes "set of footprints.^000000"; - close; - } +moc_fild12,276,165,0 script Trace of Battle#3 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 10 && .@class_thief || tu_magician01 < 10 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "that many people"; + mes "have traveled through"; + mes "this particular area.^000000"; + } else if (tu_thief01 == 10 && .@class_thief || tu_magician01 == 10 && .@class_mage) { + mes "^3355FFYou examine these traces"; + mes "and notice that one set of"; + mes "footprints looks almost too"; + mes "pronounced, as if it had been"; + mes "made for somebody to find.^000000"; + if (tu_magician01 == 10) + tu_magician01 = 11; + else + tu_thief01 = 11; + } else { + mes "^3355FFIt's a very"; + mes "strange looking"; + mes "set of footprints.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 4 //============================================================ -moc_fild11,39,163,0 script Trace of Battle#4 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 11){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_thief01 == 11){ - mes "^3355FFFrom these traces,"; - mes "you see that another"; - mes "set of footprints has"; - mes "been added. It looks like"; - mes "someone } else got involved."; - mes "These prints are distinctly"; - mes "clearer and much smaller.^000000"; - set tu_thief01, 12; - close; - } else { - mes "^3355FFFrom these traces,"; - mes "you see that another"; - mes "person has gotten involved"; - mes "in this heated scuffle.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 11){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_magician01 == 11){ - mes "^3355FFFrom these traces,"; - mes "you see that another"; - mes "set of footprints has"; - mes "been added. It looks like"; - mes "someone } else got involved."; - mes "These prints are distinctly"; - mes "clearer and much smaller.^000000"; - set tu_magician01, 12; - close; - } else { - mes "^3355FFFrom these traces,"; - mes "you see that another"; - mes "person has gotten involved"; - mes "in this heated scuffle.^000000"; - close; - } +moc_fild11,39,163,0 script Trace of Battle#4 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThere are signs that show"; + mes "that some violent scuffle"; + mes "might have occurred here,"; + mes "but you can't tell what had"; + mes "happened exactly...^000000"; + } else if (tu_thief01 < 11 && .@class_thief || tu_magician01 < 11 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "that many people"; + mes "have traveled through"; + mes "this particular area.^000000"; + } else if (tu_thief01 == 11 && .@class_thief || tu_magician01 == 11 && .@class_mage) { + mes "^3355FFFrom these traces,"; + mes "you see that another"; + mes "set of footprints has"; + mes "been added. It looks like"; + mes "someone else got involved."; + mes "These prints are distinctly"; + mes "clearer and much smaller.^000000"; + if (tu_magician01 == 11) + tu_magician01 = 12; + else + tu_thief01 = 12; + } else { + mes "^3355FFFrom these traces,"; + mes "you see that another"; + mes "person has gotten involved"; + mes "in this heated scuffle.^000000"; } - mes "^3355FFThere are signs that show"; - mes "that some violent scuffle"; - mes "might have occurred here,"; - mes "but you can't tell what had"; - mes "happened exactly...^000000"; close; } // Battle Traces 5 //============================================================ -moc_fild11,205,52,0 script Trace of Battle#5 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 12){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_thief01 == 12){ - mes "^3355FFThe traces of the battle"; - mes "now split and head towards"; - mes "the north and south. However,^000000"; - if(countitem(506) == 0){ - mes "^3355FFthere is a puddle of strong poison that you must neutralize before you can investigate this scene.^000000"; - close; - } else { - mes "^3355FFthere is a puddle of strong poison that you must neutralize before you can investigate this scene.^000000"; - next; - mes "^3355FFFortunately, you can"; - mes "temporarily nullify the"; - mes "poison by using one"; - mes "of your Green Potions.^000000"; - next; - switch(select("Use Green Potion.:Don't use it.")){ - case 1: - mes "^3355FFThe poison weakens"; - mes "and some of it evaporates,"; - mes "revealing a piece of cloth that"; - mes "was hidden in that puddle.^000000"; - next; - switch(select("Don't investigate.:Investigate.")){ - case 1: - mes "["+strcharinfo(0)+"]"; - mes "A piece of cloth"; - mes "is nothing to be"; - mes "concerned about."; - close; - case 2: - mes "["+strcharinfo(0)+"]"; - mes "Hey... There's"; - mes "blood on this cloth"; - mes "and some writing on"; - mes "it that I can't recognize."; - mes "Hopefully, this'll provide"; - mes "some sort of clue to all this?"; - set tu_thief01, 13; - next; - mes "^3355FFYou take the piece"; - mes "of cloth from the puddle"; - mes "of poison and keep it with you.^000000"; - close; - } - case 2: - mes "["+strcharinfo(0)+"]"; - mes "Hmm..."; - mes "It'll probably be"; - mes "faster if I follow this"; - mes "trail, rather than stop to"; - mes "investigate this scene."; - close; - } - } - } else { - mes "^3355FFYou can't find"; - mes "anything } else here,"; - mes "aside from the traces"; - mes "that split and lead both"; - mes "northward and southward.^000000"; +moc_fild11,205,52,0 script Trace of Battle#5 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 12 && .@class_thief || tu_magician01 < 12 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "that many people"; + mes "have traveled through"; + mes "this particular area.^000000"; + } else if (tu_thief01 == 12 && .@class_thief || tu_magician01 == 12 && .@class_mage) { + mes "^3355FFThe traces of the battle"; + mes "now split and head towards"; + mes "the north and south. However,^000000"; + if (countitem(506) == 0) {// Green_Potion + mes "^3355FFthere is a puddle of strong poison that you must neutralize before you can investigate this scene.^000000"; close; } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 12){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else if(tu_magician01 == 12){ - mes "^3355FFThe traces of the battle"; - mes "now split and head towards"; - mes "the north and south. However,^000000"; - if(countitem(506) == 0){ - mes "^3355FFthere is a puddle of strong poison that you must neutralize before you can investigate this scene.^000000"; + mes "^3355FFthere is a puddle of strong poison that you must neutralize before you can investigate this scene.^000000"; + next; + mes "^3355FFFortunately, you can"; + mes "temporarily nullify the"; + mes "poison by using one"; + mes "of your Green Potions.^000000"; + next; + switch(select("Use Green Potion.:Don't use it.")) { + case 1: + mes "^3355FFThe poison weakens"; + mes "and some of it evaporates,"; + mes "revealing a piece of cloth that"; + mes "was hidden in that puddle.^000000"; + next; + switch(select("Don't investigate.:Investigate.")) { + case 1: + mes "["+strcharinfo(0)+"]"; + mes "A piece of cloth"; + mes "is nothing to be"; + mes "concerned about."; close; - } else { - mes "^3355FFthere is a puddle of strong poison that you must neutralize before you can investigate this scene.^000000"; + case 2: + mes "["+strcharinfo(0)+"]"; + mes "Hey... There's"; + mes "blood on this cloth"; + mes "and some writing on"; + mes "it that I can't recognize."; + mes "Hopefully, this'll provide"; + mes "some sort of clue to all this?"; + if (tu_thief01 == 12) + tu_thief01 = 13; + else + tu_magician01 = 13; next; - mes "^3355FFFortunately, you can"; - mes "temporarily nullify the"; - mes "poison by using one"; - mes "of your Green Potions.^000000"; - next; - switch(select("Use Green Potion.:Don't use it.")){ - case 1: - mes "^3355FFThe poison weakens"; - mes "and some of it evaporates,"; - mes "revealing a piece of cloth that"; - mes "was hidden in that puddle.^000000"; - next; - switch(select("Don't investigate.:Investigate.")){ - case 1: - mes "["+strcharinfo(0)+"]"; - mes "A piece of cloth"; - mes "is nothing to be"; - mes "concerned about."; - close; - case 2: - mes "["+strcharinfo(0)+"]"; - mes "Hey... There's"; - mes "blood on this cloth"; - mes "and some writing on"; - mes "it that I can't recognize."; - mes "Hopefully, this'll provide"; - mes "some sort of clue to all this?"; - set tu_magician01,13; - next; - mes "^3355FFYou take the piece"; - mes "of cloth from the puddle"; - mes "of poison and keep it with you.^000000"; - close; - } - case 2: - mes "["+strcharinfo(0)+"]"; - mes "Hmm..."; - mes "It'll probably be"; - mes "faster if I follow this"; - mes "trail, rather than stop to"; - mes "investigate this scene."; - close; - } + mes "^3355FFYou take the piece"; + mes "of cloth from the puddle"; + mes "of poison and keep it with you.^000000"; + close; } - } else { - mes "^3355FFYou can't find"; - mes "anything } else here,"; - mes "aside from the traces"; - mes "that split and lead both"; - mes "northward and southward.^000000"; + case 2: + mes "["+strcharinfo(0)+"]"; + mes "Hmm..."; + mes "It'll probably be"; + mes "faster if I follow this"; + mes "trail, rather than stop to"; + mes "investigate this scene."; close; } + } else { + mes "^3355FFYou can't find"; + mes "anything else here,"; + mes "aside from the traces"; + mes "that split and lead both"; + mes "northward and southward.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 6 //============================================================ -moc_fild11,226,235,0 script Trace of Battle#6 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 13){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else { - mes "^3355FFThese footprints"; - mes "look like they're"; - mes "heading towards the"; - mes "north from the south."; - mes "But you can't really"; - mes "be sure just yet.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 13){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else { - mes "^3355FFThese footprints"; - mes "look like they're"; - mes "heading towards the"; - mes "north from the south."; - mes "But you can't really"; - mes "be sure just yet.^000000"; - close; - } +moc_fild11,226,235,0 script Trace of Battle#6 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 13 && .@class_thief || tu_magician01 < 13 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "that many people"; + mes "have traveled through"; + mes "this particular area.^000000"; + } else { + mes "^3355FFThese footprints"; + mes "look like they're"; + mes "heading towards the"; + mes "north from the south."; + mes "But you can't really"; + mes "be sure just yet.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 7 //============================================================ -moc_fild11,184,342,0 script Trace of Battle#7 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 13){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else { - mes "^3355FFThe trail here looks pretty"; - mes "muddled, since it looks like"; - mes "they battled here for quite a"; - mes "while. But the footprints are"; - mes "definitely heading south.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 13){ - mes "^3355FFThere are signs"; - mes "that many people"; - mes "have traveled through"; - mes "this particular area.^000000"; - close; - } else { - mes "^3355FFThe trail here looks pretty"; - mes "muddled, since it looks like"; - mes "they battled here for quite a"; - mes "while. But the footprints are"; - mes "definitely heading south.^000000"; - close; - } +moc_fild11,184,342,0 script Trace of Battle#7 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 13 && .@class_thief || tu_magician01 < 13 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "that many people"; + mes "have traveled through"; + mes "this particular area.^000000"; + } else { + mes "^3355FFThe trail here looks pretty"; + mes "muddled, since it looks like"; + mes "they battled here for quite a"; + mes "while. But the footprints are"; + mes "definitely heading south.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 8 //============================================================ -moc_fild17,213,358,0 script Trace of Battle#8 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 13){ - mes "^3355FFThere are two"; - mes "distinct sets of"; - mes "footprints in this"; - mes "area, but they don't"; - mes "hold any significance"; - mes "right about now.^000000"; - close; - } else if(tu_thief01 == 13){ - mes "^3355FFAround here, it"; - mes "looks like there are"; - mes "only two sets of footprints."; - mes "What happened to the other"; - mes "set that you found earlier?^000000"; - set tu_thief01, 14; - close; - } else { - mes "^3355FFFrom the evidence"; - mes "that you've found here,"; - mes "it looks like the battle"; - mes "involves only two people"; - mes "from this point onward.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 13){ - mes "^3355FFThere are two"; - mes "distinct sets of"; - mes "footprints in this"; - mes "area, but they don't"; - mes "hold any significance"; - mes "right about now.^000000"; - close; - } else if(tu_magician01 == 13){ - mes "^3355FFAround here, it"; - mes "looks like there are"; - mes "only two sets of footprints."; - mes "What happened to the other"; - mes "set that you found earlier?^000000"; - set tu_magician01, 14; - close; - } else { - mes "^3355FFFrom the evidence"; - mes "that you've found here,"; - mes "it looks like the battle"; - mes "involves only two people"; - mes "from this point onward.^000000"; - close; - } +moc_fild17,213,358,0 script Trace of Battle#8 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 13 && .@class_thief || tu_magician01 < 13 && .@class_mage) { + mes "^3355FFThere are two"; + mes "distinct sets of"; + mes "footprints in this"; + mes "area, but they don't"; + mes "hold any significance"; + mes "right about now.^000000"; + } else if (tu_thief01 == 13 && .@class_thief || tu_magician01 == 13 && .@class_mage) { + mes "^3355FFAround here, it"; + mes "looks like there are"; + mes "only two sets of footprints."; + mes "What happened to the other"; + mes "set that you found earlier?^000000"; + if (tu_magician01 == 13) + tu_magician01 = 14; + else + tu_thief01 = 14; + } else { + mes "^3355FFFrom the evidence"; + mes "that you've found here,"; + mes "it looks like the battle"; + mes "involves only two people"; + mes "from this point onward.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 9 //============================================================ -moc_fild17,228,274,0 script Trace of Battle#9 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 14){ - mes "^3355FFTraces of some"; - mes "sort of battle are"; - mes "scattered all over"; - mes "this particular area.^000000"; - close; - } else if(tu_thief01 == 14){ - mes "^3355FFYou follow the trail"; - mes "and although traces from"; - mes "the north and southeast mix"; - mes "together, it looks like the battle continues towards the east."; - mes "But you should check this"; - mes "spot a little bit more...^000000"; - set tu_thief01, 15; - close; - } else if(tu_thief01 == 15){ - set .@seek_tm, rand(1,10); - if(.@seek_tm == 7){ - mes "^3355FFAfter investigating this"; - mes "area more thoroughly,"; - mes "you find another piece of"; - mes "cloth stained with blood."; - mes "You decide to keep it with"; - mes "you, hoping that it will"; - mes "provide more clues.^000000"; - set tu_thief01, 16; - close; - } else { - mes "^3355FFYou don't find anything,"; - mes "but you still can't shake"; - mes "the feeling that there is"; - mes "some important clue that"; - mes "you have to find here. It won't hurt to keep investigating here.^000000"; - close; - } +moc_fild17,228,274,0 script Trace of Battle#9 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 14 && .@class_thief || tu_magician01 < 14 && .@class_mage) { + mes "^3355FFTraces of some"; + mes "sort of battle are"; + mes "scattered all over"; + mes "this particular area.^000000"; + } else if (tu_thief01 == 14 && .@class_thief || tu_magician01 == 14 && .@class_mage) { + mes "^3355FFYou follow the trail"; + mes "and although traces from"; + mes "the north and southeast mix"; + mes "together, it looks like the battle continues towards the east."; + mes "But you should check this"; + mes "spot a little bit more...^000000"; + if (tu_magician01 == 14) + tu_magician01 = 15; + else + tu_thief01 = 15; + } else if (tu_thief01 == 15 && .@class_thief || tu_magician01 == 15 && .@class_mage) { + if (rand(1,10) == 7) { + mes "^3355FFAfter investigating this"; + mes "area more thoroughly,"; + mes "you find another piece of"; + mes "cloth stained with blood."; + mes "You decide to keep it with"; + mes "you, hoping that it will"; + mes "provide more clues.^000000"; + if (tu_magician01 == 15) + tu_magician01 = 16; + else + tu_thief01 = 16; } else { - mes "^3355FFYou better continue"; - mes "following this trail"; - mes "which leads westward.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 14){ - mes "^3355FFTraces of some"; - mes "sort of battle are"; - mes "scattered all over"; - mes "this particular area.^000000"; - close; - } else if(tu_magician01 == 14){ - mes "^3355FFYou follow the trail"; - mes "and although traces from"; - mes "the north and southeast mix"; - mes "together, it looks like the battle continues towards the east."; - mes "But you should check this"; - mes "spot a little bit more...^000000"; - set tu_magician01, 15; - close; - } else if(tu_magician01 == 15){ - set .@seek_tm1, rand(1,10); - if(.@seek_tm1 == 7){ - mes "^3355FFAfter investigating this"; - mes "area more thoroughly,"; - mes "you find another piece of"; - mes "cloth stained with blood."; - mes "You decide to keep it with"; - mes "you, hoping that it will"; - mes "provide more clues.^000000"; - set tu_magician01, 16; - close; - } else { - mes "^3355FFYou don't find anything,"; - mes "but you still can't shake"; - mes "the feeling that there is"; - mes "some important clue that"; - mes "you have to find here. It won't hurt to keep investigating here.^000000"; - close; - } - } else { - mes "^3355FFYou better continue"; - mes "following this trail"; - mes "which leads westward.^000000"; - close; + mes "^3355FFYou don't find anything,"; + mes "but you still can't shake"; + mes "the feeling that there is"; + mes "some important clue that"; + mes "you have to find here. It won't hurt to keep investigating here.^000000"; } + } else { + mes "^3355FFYou better continue"; + mes "following this trail"; + mes "which leads westward.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 10 //============================================================ -moc_fild17,34,292,0 script Trace of Battle#10 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 16){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_thief01 == 16){ - mes "^3355FFThe lead set of footprints,"; - mes "probably belonging to the one"; - mes "who was being pursued, look"; - mes "more erratic, as if exhaustion"; - mes "and desperation were setting in. These traces lead to the west.^000000"; - set tu_thief01, 17; - close; - } else { - mes "^3355FFThe trail from"; - mes "this point heads"; - mes "towards the west.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 16){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_magician01 == 16){ - mes "^3355FFThe lead set of footprints,"; - mes "probably belonging to the one"; - mes "who was being pursued, look"; - mes "more erratic, as if exhaustion"; - mes "and desperation were setting in. These traces lead to the west.^000000"; - set tu_magician01, 17; - close; - } else { - mes "^3355FFThe trail from"; - mes "this point heads"; - mes "towards the west.^000000"; - close; - } +moc_fild17,34,292,0 script Trace of Battle#10 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 16 && .@class_thief || tu_magician01 < 16 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "showing that a lot"; + mes "of people were in"; + mes "this area earlier.^000000"; + } else if (tu_thief01 == 16 && .@class_thief || tu_magician01 == 16 && .@class_mage) { + mes "^3355FFThe lead set of footprints,"; + mes "probably belonging to the one"; + mes "who was being pursued, look"; + mes "more erratic, as if exhaustion"; + mes "and desperation were setting in. These traces lead to the west.^000000"; + if (tu_magician01 == 16) + tu_magician01 = 17; + else + tu_thief01 = 17; + } else { + mes "^3355FFThe trail from"; + mes "this point heads"; + mes "towards the west.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 11 //============================================================ -moc_fild18,346,296,0 script Trace of Battle#11 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 17){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_thief01 == 17){ - mes "^3355FFFollowing the"; - mes "trail, you see signs"; - mes "that blood was spilled"; - mes "in this area. It looks like"; - mes "someone was injured"; - mes "pretty badly around here.^000000"; - set tu_thief01, 18; - close; - } else { - mes "^3355FFSince someone involved"; - mes "in this conflict was bleeding,"; - mes "further traces of this pursuit"; - mes "might be easier to find now.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 17){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_magician01 == 17){ - mes "^3355FFFollowing the"; - mes "trail, you see signs"; - mes "that blood was spilled"; - mes "in this area. It looks like"; - mes "someone was injured"; - mes "pretty badly around here.^000000"; - set tu_magician01, 18; - close; - } else { - mes "^3355FFSince someone involved"; - mes "in this conflict was bleeding,"; - mes "further traces of this pursuit"; - mes "might be easier to find now.^000000"; - close; - } +moc_fild18,346,296,0 script Trace of Battle#11 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 17 && .@class_thief || tu_magician01 < 17 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "showing that a lot"; + mes "of people were in"; + mes "this area earlier.^000000"; + } else if (tu_thief01 == 17 && .@class_thief || tu_magician01 == 17 && .@class_mage) { + mes "^3355FFFollowing the"; + mes "trail, you see signs"; + mes "that blood was spilled"; + mes "in this area. It looks like"; + mes "someone was injured"; + mes "pretty badly around here.^000000"; + if (tu_magician01 == 17) + tu_magician01 = 18; + else + tu_thief01 = 18; + } else { + mes "^3355FFSince someone involved"; + mes "in this conflict was bleeding,"; + mes "further traces of this pursuit"; + mes "might be easier to find now.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 12 //============================================================ -moc_fild18,309,257,0 script Trace of Battle#12 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 18){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_thief01 == 18){ - mes "^3355FFThese traces lead"; - mes "northward and it looks"; - mes "like whoever is doing"; - mes "the chasing is getting"; - mes "much closer to his prey.^000000"; - set tu_thief01, 19; - close; - } else { - mes "^3355FFThe trail of this"; - mes "pursuit now leads"; - mes "towards the north.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 18){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_magician01 == 18){ - mes "^3355FFThese traces lead"; - mes "northward and it looks"; - mes "like whoever is doing"; - mes "the chasing is getting"; - mes "much closer to his prey.^000000"; - set tu_magician01, 19; - close; - } else { - mes "^3355FFThe trail of this"; - mes "pursuit now leads"; - mes "towards the north.^000000"; - close; - } +moc_fild18,309,257,0 script Trace of Battle#12 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 18 && .@class_thief || tu_magician01 < 18 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "showing that a lot"; + mes "of people were in"; + mes "this area earlier.^000000"; + } else if (tu_thief01 == 18 && .@class_thief || tu_magician01 == 18 && .@class_mage) { + mes "^3355FFThese traces lead"; + mes "northward and it looks"; + mes "like whoever is doing"; + mes "the chasing is getting"; + mes "much closer to his prey.^000000"; + if (tu_magician01 == 18) + tu_magician01 = 19; + else + tu_thief01 = 19; + } else { + mes "^3355FFThe trail of this"; + mes "pursuit now leads"; + mes "towards the north.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 13 //============================================================ -moc_fild18,177,333,0 script Trace of Battle#13 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 19){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_thief01 == 19){ - mes "^3355FFJudging from these"; - mes "traces, it looks like"; - mes "even more people have"; - mes "joined the battle which"; - mes "now seems to be leading"; - mes "in the southwest direction.^000000"; - set tu_thief01, 20; - close; - } else { - mes "^3355FFIt looks like"; - mes "the battle heads"; - mes "towards the southwest"; - mes "from this particular point.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 19){ - mes "A large group of people seem to have gone by."; - close; - } else if(tu_magician01 == 19){ - mes "^3355FFJudging from these"; - mes "traces, it looks like"; - mes "even more people have"; - mes "joined the battle which"; - mes "now seems to be leading"; - mes "in the southwest direction.^000000"; - set tu_magician01, 20; - close; - } else { - mes "^3355FFIt looks like"; - mes "the battle heads"; - mes "towards the southwest"; - mes "from this particular point.^000000"; - close; - } +moc_fild18,177,333,0 script Trace of Battle#13 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 19 && .@class_thief) { + mes "^3355FFThere are signs"; + mes "showing that a lot"; + mes "of people were in"; + mes "this area earlier.^000000"; + } else if (tu_magician01 < 19 && .@class_mage) { + mes "A large group of people seem to have gone by."; + } else if (tu_thief01 == 19 && .@class_thief || tu_magician01 == 19 && .@class_mage) { + mes "^3355FFJudging from these"; + mes "traces, it looks like"; + mes "even more people have"; + mes "joined the battle which"; + mes "now seems to be leading"; + mes "in the southwest direction.^000000"; + if (tu_magician01 == 19) + tu_magician01 = 20; + else + tu_thief01 = 20; + } else { + mes "^3355FFIt looks like"; + mes "the battle heads"; + mes "towards the southwest"; + mes "from this particular point.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 14 //============================================================ -moc_fild18,111,303,0 script Trace of Battle#14 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 20){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_thief01 == 20){ - mes "^3355FFIn this area, it looks"; - mes "like even more people"; - mes "joined in this battle and"; - mes "the pursuit clearly heads"; - mes "towards the south.^000000"; - set tu_thief01, 21; - close; - } else { - mes "^3355FFThe trail of"; - mes "this battle heads"; - mes "towards the south.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 20){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; - close; - } else if(tu_magician01 == 20){ - mes "^3355FFIn this area, it looks"; - mes "like even more people"; - mes "joined in this battle and"; - mes "the pursuit clearly heads"; - mes "towards the south.^000000"; - set tu_magician01, 21; - close; - } else { - mes "^3355FFThe trail of"; - mes "this battle heads"; - mes "towards the south.^000000"; - close; - } +moc_fild18,111,303,0 script Trace of Battle#14 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 20 && .@class_thief || tu_magician01 < 20 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "showing that a lot"; + mes "of people were in"; + mes "this area earlier.^000000"; + } else if (tu_thief01 == 20 && .@class_thief || tu_magician01 == 20 && .@class_mage) { + mes "^3355FFIn this area, it looks"; + mes "like even more people"; + mes "joined in this battle and"; + mes "the pursuit clearly heads"; + mes "towards the south.^000000"; + if (tu_magician01 == 20) + tu_magician01 = 21; + else + tu_thief01 = 21; + } else { + mes "^3355FFThe trail of"; + mes "this battle heads"; + mes "towards the south.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 15 //============================================================ -moc_fild18,109,197,0 script Trace of Battle#15 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 21){ - mes "^3355FFThere are signs"; - mes "showing that a lot"; - mes "of people were in"; - mes "this area earlier.^000000"; +moc_fild18,109,197,0 script Trace of Battle#15 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 21 && .@class_thief) { + mes "^3355FFThere are signs"; + mes "showing that a lot"; + mes "of people were in"; + mes "this area earlier.^000000"; + } else if (tu_magician01 < 21 && .@class_mage) + mes "A large group of people seem to have gone by."; + else if (tu_thief01 == 21 && .@class_thief || tu_magician01 == 21 && .@class_mage) { + mes "^3355FFThis area is clearly"; + mes "marked with signs"; + mes "of a violent battle, with"; + mes "traces of poison strewn"; + mes "all over the ground.^000000"; + next; + switch(select("Continue following the traces.:Further investigate the area.")) { + case 1: + mes "^3355FFYou examine the"; + mes "trail, but can't really"; + mes "discern the direction"; + mes "in which the battle"; + mes "continues...^000000"; close; - } else if(tu_thief01 == 21){ - mes "^3355FFThis area is clearly"; - mes "marked with signs"; - mes "of a violent battle, with"; - mes "traces of poison strewn"; - mes "all over the ground.^000000"; - next; - switch(select("Continue following the traces.:Further investigate the area.")){ - case 1: - mes "^3355FFYou examine the"; - mes "trail, but can't really"; - mes "discern the direction"; - mes "in which the battle"; - mes "continues...^000000"; - close; - case 2: - mes "^3355FFYou find a bunch of"; - mes "traps that use different"; - mes "kinds of poison. The ones"; - mes "that have been set off are"; - mes "mixed with the ones which"; - mes "haven't been triggered.^000000"; - set tu_thief01, 22; - close; - } - } else if(tu_thief01 == 22){ - set .@trap_tm, rand(1,3); - if(.@trap_tm == 3){ - mes "^3355FFOne trap in particular"; - mes "stands out to you more"; - mes "than the rest. Perhaps"; - mes "you should pour some"; - mes "Green Potion on it to"; - mes "neutralize it first.^000000"; - next; - switch(select("Pour Green Potion.:Don't use Green Potion.")){ - case 1: - if(countitem(506) < 1){ - mes "^3355FFUnfortunately, you"; - mes "don't have a Green"; - mes "Potion that you can"; - mes "use to pour on this trap...^000000"; - close; - } else { - mes "^3355FFPouring that"; - mes "Green Potion didn't"; - mes "really make anything"; - mes "happen. Perhaps you"; - mes "should try something else.^000000"; - delitem 506,1; //Green_Potion - set tu_thief01, 23; - close; - } - case 2: - mes "["+strcharinfo(0)+"]"; - mes "I guess..."; - mes "I'll try investigating"; - mes "this area a little more?"; - close; - } - } else { - mes "^3355FFBy sheer accident,"; - mes "you set off one of"; - mes "the traps in the area.^000000"; - sc_start SC_Poison,60000,0; - specialeffect EF_VENOMDUST2; - percentheal -30,0; - close; - } - } else if(tu_thief01 == 23){ - if(countitem(511) > 0 || countitem(716) > 0){ - if(countitem(511) > 0 && countitem(716) > 0){ - mes "^3355FFYou try grinding"; - mes "a Green Herb and"; - mes "sprinkling it on the"; - mes "trap and then place"; - mes "a Red Gemstone on it."; - mes "The gem glows and"; - mes "slowly melts away...^000000"; - next; - mes "^3355FFAlthough you don't"; - mes "fully understand the"; - mes "science of using poisons"; - mes "or antidotes, you managed"; - mes "to successfully dismantle"; - mes "the trap. Now you can safely"; - mes "check what might be inside.^000000"; - delitem 511,1; //Green_Herb - delitem 716,1; //Red_Gemstone - set tu_thief01, 24; - close; - } else if(countitem(511) > 0){ - mes "^3355FFYou should try to"; - mes "dismantle this trap"; - mes "by using other catalysts"; - mes "related to the curing or"; - mes "use of poison. You do have"; - mes "a Green Herb on you, so you"; - mes "try sprinkling it on the trap.^000000"; - next; - mes "^3355FFHowever, nothing"; - mes "happens. It seems that"; - mes "you need another catalyst"; - mes "in addition to the Green Herb"; - mes "that you have in order to"; - mes "dismantle this trap.^000000"; - close; - } else { - mes "^3355FFYou should try to"; - mes "dismantle this trap"; - mes "by using other catalysts"; - mes "related to the curing or use"; - mes "of poison. You do have a"; - mes "Red Gemstone, so you grind"; - mes "it and sprinkle it on the trap.^000000"; - next; - mes "^3355FFHowever, nothing"; - mes "happens. It seems that"; - mes "you need another catalyst to"; - mes "use with the Red Gemstone"; - mes "that you have in order to"; - mes "dismantle this trap.^000000"; - close; - } - } else { - mes "^3355FFYou should try to"; - mes "dismantle this trap"; - mes "by using other catalysts"; - mes "related to the curing or"; - mes "use of poison. But what"; - mes "items should you bring?^000000"; - close; - } - } else if(tu_thief01 == 24){ - mes "^3355FFInside the dismantled"; - mes "trap, you find another"; - mes "piece of strange cloth"; - mes "that's stained with blood."; - mes "You take it with you in"; - mes "hopes that it provides"; - mes "some kind of evidence.^000000"; - set tu_thief01, 25; - close; - } else { - mes "^3355FFYou examine the area"; - mes "a little further and guess"; - mes "that the battle might head"; - mes "towards the south.^000000"; + case 2: + mes "^3355FFYou find a bunch of"; + mes "traps that use different"; + mes "kinds of poison. The ones"; + mes "that have been set off are"; + mes "mixed with the ones which"; + mes "haven't been triggered.^000000"; + if (tu_thief01 == 21) + tu_thief01 = 22; + else + tu_magician01 = 22; close; } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 21){ - mes "A large group of people seem to have gone by."; - close; - } else if(tu_magician01 == 21){ - mes "^3355FFThis area is clearly"; - mes "marked with signs"; - mes "of a violent battle, with"; - mes "traces of poison strewn"; - mes "all over the ground.^000000"; + } else if (tu_thief01 == 22 && .@class_thief || tu_magician01 == 22 && .@class_mage) { + if (rand(1,3) == 3) { + mes "^3355FFOne trap in particular"; + mes "stands out to you more"; + mes "than the rest. Perhaps"; + mes "you should pour some"; + mes "Green Potion on it to"; + mes "neutralize it first.^000000"; next; - switch(select("Continue following the traces.:Further investigate the area.")){ + switch(select("Pour Green Potion.:Don't use Green Potion.")) { case 1: - mes "^3355FFYou examine the"; - mes "trail, but can't really"; - mes "discern the direction"; - mes "in which the battle"; - mes "continues...^000000"; - close; - case 2: - mes "^3355FFYou find a bunch of"; - mes "traps that use different"; - mes "kinds of poison. The ones"; - mes "that have been set off are"; - mes "mixed with the ones which"; - mes "haven't been triggered.^000000"; - set tu_magician01, 22; - close; - } - } else if(tu_magician01 == 22){ - set .@trap_tm, rand(1,3); - if(.@trap_tm == 3){ - mes "^3355FFOne trap in particular"; - mes "stands out to you more"; - mes "than the rest. Perhaps"; - mes "you should pour some"; - mes "Green Potion on it to"; - mes "neutralize it first.^000000"; - next; - switch(select("Pour Green Potion.:Don't use Green Potion.")){ - case 1: - if(countitem(506) < 1){ - mes "^3355FFUnfortunately, you"; - mes "don't have a Green"; - mes "Potion that you can"; - mes "use to pour on this trap...^000000"; - close; - } else { - mes "^3355FFPouring that"; - mes "Green Potion didn't"; - mes "really make anything"; - mes "happen. Perhaps you"; - mes "should try something else.^000000"; - delitem 506,1; //Green_Potion - set tu_magician01, 23; - close; - } - case 2: - mes "["+strcharinfo(0)+"]"; - mes "I guess..."; - mes "I'll try investigating"; - mes "this area a little more?"; - close; - } - } else { - mes "^3355FFBy sheer accident,"; - mes "you set off one of"; - mes "the traps in the area.^000000"; - sc_start SC_Poison,60000,0; - specialeffect EF_VENOMDUST2; - percentheal -30,0; - close; - } - } else if(tu_magician01 == 23){ - if(countitem(511) > 0 || countitem(716) > 0){ - if(countitem(511) > 0 && countitem(716) > 0){ - mes "^3355FFYou try grinding"; - mes "a Green Herb and"; - mes "sprinkling it on the"; - mes "trap and then place"; - mes "a Red Gemstone on it."; - mes "The gem glows and"; - mes "slowly melts away...^000000"; - next; - mes "^3355FFAlthough you don't"; - mes "fully understand the"; - mes "science of using poisons"; - mes "or antidotes, you managed"; - mes "to successfully dismantle"; - mes "the trap. Now you can safely"; - mes "check what might be inside.^000000"; - delitem 511,1; //Green_Herb - delitem 716,1; //Red_Gemstone - set tu_magician01, 24; - close; - } else if(countitem(511) > 0){ - mes "^3355FFYou should try to"; - mes "dismantle this trap"; - mes "by using other catalysts"; - mes "related to the curing or"; - mes "use of poison. You do have"; - mes "a Green Herb on you, so you"; - mes "try sprinkling it on the trap.^000000"; - next; - mes "^3355FFHowever, nothing"; - mes "happens. It seems that"; - mes "you need another catalyst"; - mes "in addition to the Green Herb"; - mes "that you have in order to"; - mes "dismantle this trap.^000000"; + if (countitem(506) < 1) {// Green_Potion + mes "^3355FFUnfortunately, you"; + mes "don't have a Green"; + mes "Potion that you can"; + mes "use to pour on this trap...^000000"; close; } else { - mes "^3355FFYou should try to"; - mes "dismantle this trap"; - mes "by using other catalysts"; - mes "related to the curing or use"; - mes "of poison. You do have a"; - mes "Red Gemstone, so you grind"; - mes "it and sprinkle it on the trap.^000000"; - next; - mes "^3355FFHowever, nothing"; - mes "happens. It seems that"; - mes "you need another catalyst to"; - mes "use with the Red Gemstone"; - mes "that you have in order to"; - mes "dismantle this trap.^000000"; + mes "^3355FFPouring that"; + mes "Green Potion didn't"; + mes "really make anything"; + mes "happen. Perhaps you"; + mes "should try something else.^000000"; + delitem 506,1; //Green_Potion + if (tu_thief01 == 22) + tu_thief01 = 23; + else + tu_magician01 = 23; close; } - } else { - mes "^3355FFYou should try to"; - mes "dismantle this trap"; - mes "by using other catalysts"; - mes "related to the curing or"; - mes "use of poison. But what"; - mes "items should you bring?^000000"; + case 2: + mes "["+strcharinfo(0)+"]"; + mes "I guess..."; + mes "I'll try investigating"; + mes "this area a little more?"; close; } - } else if(tu_magician01 == 24){ - mes "^3355FFInside the dismantled"; - mes "trap, you find another"; - mes "piece of strange cloth"; - mes "that's stained with blood."; - mes "You take it with you in"; - mes "hopes that it provides"; - mes "some kind of evidence.^000000"; - set tu_magician01, 25; - close; } else { - mes "^3355FFYou examine the area"; - mes "a little further and guess"; - mes "that the battle might head"; - mes "towards the south.^000000"; - close; + mes "^3355FFBy sheer accident,"; + mes "you set off one of"; + mes "the traps in the area.^000000"; + sc_start SC_Poison,60000,0; + specialeffect EF_VENOMDUST2; + percentheal -30,0; } - + } else if (tu_thief01 == 23 && .@class_thief || tu_magician01 == 23 && .@class_mage) { + if (countitem(511) > 0 && countitem(716) > 0) { + mes "^3355FFYou try grinding"; + mes "a Green Herb and"; + mes "sprinkling it on the"; + mes "trap and then place"; + mes "a Red Gemstone on it."; + mes "The gem glows and"; + mes "slowly melts away...^000000"; + next; + mes "^3355FFAlthough you don't"; + mes "fully understand the"; + mes "science of using poisons"; + mes "or antidotes, you managed"; + mes "to successfully dismantle"; + mes "the trap. Now you can safely"; + mes "check what might be inside.^000000"; + delitem 511,1; //Green_Herb + delitem 716,1; //Red_Gemstone + if (tu_thief01 == 23) + tu_thief01 = 24; + else + tu_magician01 = 24; + } else if (countitem(511) > 0) { + mes "^3355FFYou should try to"; + mes "dismantle this trap"; + mes "by using other catalysts"; + mes "related to the curing or"; + mes "use of poison. You do have"; + mes "a Green Herb on you, so you"; + mes "try sprinkling it on the trap.^000000"; + next; + mes "^3355FFHowever, nothing"; + mes "happens. It seems that"; + mes "you need another catalyst"; + mes "in addition to the Green Herb"; + mes "that you have in order to"; + mes "dismantle this trap.^000000"; + } else if (countitem(716) > 0) { + mes "^3355FFYou should try to"; + mes "dismantle this trap"; + mes "by using other catalysts"; + mes "related to the curing or use"; + mes "of poison. You do have a"; + mes "Red Gemstone, so you grind"; + mes "it and sprinkle it on the trap.^000000"; + next; + mes "^3355FFHowever, nothing"; + mes "happens. It seems that"; + mes "you need another catalyst to"; + mes "use with the Red Gemstone"; + mes "that you have in order to"; + mes "dismantle this trap.^000000"; + } else { + mes "^3355FFYou should try to"; + mes "dismantle this trap"; + mes "by using other catalysts"; + mes "related to the curing or"; + mes "use of poison. But what"; + mes "items should you bring?^000000"; + } + } else if (tu_thief01 == 24 && .@class_thief || tu_magician01 == 24 && .@class_mage) { + mes "^3355FFInside the dismantled"; + mes "trap, you find another"; + mes "piece of strange cloth"; + mes "that's stained with blood."; + mes "You take it with you in"; + mes "hopes that it provides"; + mes "some kind of evidence.^000000"; + if (tu_thief01 == 24) + tu_thief01 = 25; + else + tu_magician01 = 25; + } else { + mes "^3355FFYou examine the area"; + mes "a little further and guess"; + mes "that the battle might head"; + mes "towards the south.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; } // Battle Traces 16 //============================================================ -moc_fild18,156,96,0 script Trace of Battle#16 844,{ - if(BaseClass == Job_Thief){ - if(tu_thief01 < 25){ - mes "^3355FFThere are signs"; - mes "that a large group"; - mes "of people have been in"; - mes "this area for some reason.^000000"; - close; - } else if(tu_thief01 == 25){ - mes "^3355FFThese traces lead"; - mes "to the edge of the cliff."; - mes "marking the end of the trail."; - mes "Apparently, the one who was"; - mes "being chased met his fate here.^000000"; - next; - mes "^3355FFThere are many footprints"; - mes "leading to the edge of the"; - mes "cliff and all of them leave"; - mes "this scene, save for the set"; - mes "of footprints that distinctly"; - mes "belong to the person who"; - mes "was pursued all this time...^3355FF"; - next; - mes "^3355FFIt looks like you've"; - mes "learned all that you can"; - mes "from this investigation. You"; - mes "better return and report your"; - mes "findings to Yierhan soon.^000000"; - set tu_thief01, 26; - close; - } else { - mes "^3355FFThis is the end"; - mes "of the trail. There"; - mes "aren't any more traces"; - mes "of the battle left to find.^000000"; - close; - } - } else if(BaseClass == Job_Mage){ - if(tu_magician01 < 25){ - mes "^3355FFThere are signs"; - mes "that a large group"; - mes "of people have been in"; - mes "this area for some reason.^000000"; - close; - } else if(tu_magician01 == 25){ - mes "^3355FFThese traces lead"; - mes "to the edge of the cliff."; - mes "marking the end of the trail."; - mes "Apparently, the one who was"; - mes "being chased met his fate here.^000000"; - next; - mes "^3355FFThere are many footprints"; - mes "leading to the edge of the"; - mes "cliff and all of them leave"; - mes "this scene, save for the set"; - mes "of footprints that distinctly"; - mes "belong to the person who"; - mes "was pursued all this time...^3355FF"; - next; - mes "^3355FFIt looks like you've"; - mes "learned all that you can"; - mes "from this investigation. You"; - mes "better return and report your"; - mes "findings to Yierhan soon.^000000"; - set tu_magician01, 26; - close; - } else { - mes "^3355FFThis is the end"; - mes "of the trail. There"; - mes "aren't any more traces"; - mes "of the battle left to find.^000000"; - close; - } +moc_fild18,156,96,0 script Trace of Battle#16 CLEAR_NPC,{ + .@class_thief = ( BaseClass == Job_Thief ); + .@class_mage = ( BaseClass == Job_Mage ); + if (.@class_thief == 0 && .@class_mage == 0 || eaclass()&EAJL_BABY) { + mes "^3355FFThese look like"; + mes "traces of some kind"; + mes "of pursuit or battle, but"; + mes "you can't really tell for sure.^000000"; + } else if (tu_thief01 < 25 && .@class_thief || tu_magician01 < 25 && .@class_mage) { + mes "^3355FFThere are signs"; + mes "that a large group"; + mes "of people have been in"; + mes "this area for some reason.^000000"; + } else if (tu_thief01 == 25 && .@class_thief || tu_magician01 == 25 && .@class_mage) { + mes "^3355FFThese traces lead"; + mes "to the edge of the cliff."; + mes "marking the end of the trail."; + mes "Apparently, the one who was"; + mes "being chased met his fate here.^000000"; + next; + mes "^3355FFThere are many footprints"; + mes "leading to the edge of the"; + mes "cliff and all of them leave"; + mes "this scene, save for the set"; + mes "of footprints that distinctly"; + mes "belong to the person who"; + mes "was pursued all this time...^3355FF"; + next; + mes "^3355FFIt looks like you've"; + mes "learned all that you can"; + mes "from this investigation. You"; + mes "better return and report your"; + mes "findings to Yierhan soon.^000000"; + if (tu_magician01 == 25) + tu_magician01 = 26; + else + tu_thief01 = 26; + } else { + mes "^3355FFThis is the end"; + mes "of the trail. There"; + mes "aren't any more traces"; + mes "of the battle left to find.^000000"; } - mes "^3355FFThese look like"; - mes "traces of some kind"; - mes "of pursuit or battle, but"; - mes "you can't really tell for sure.^000000"; close; -} +} \ No newline at end of file diff --git a/npc/quests/first_class/tu_magician01.txt b/npc/quests/first_class/tu_magician01.txt index 09f5a680f1..4768f25b20 100644 --- a/npc/quests/first_class/tu_magician01.txt +++ b/npc/quests/first_class/tu_magician01.txt @@ -1,22 +1,22 @@ -//===== rAthena Script ======================================= +//===== rAthena Script ======================================= //= Magician Class Tutorial and Job Specific Quest -//===== By: ================================================== +//===== By: ================================================== //= Fix up by Jukka -//===== Current Version: ===================================== -//= 1.5 -//===== Compatible With: ===================================== +//===== Current Version: ===================================== +//= 2.0 +//===== Compatible With: ===================================== //= rAthena Project -//===== Description: ========================================= +//===== Description: ========================================= //= [Official Conversion] //= Magician training quest. -//===== Additional Comments: ================================= +//===== Additional Comments: ================================= //= 1.0 Fully working //= 1.1 Optimized [Lupus] //= 1.2 Fixed experience gains to match upcoming rate adjustments. [SinSloth] //= 1.3 Misc. updates. [L0ne_W0lf] //= 1.4 Updated to match the official script. [Euphy] -//= 1.5 Replaced occurrence of PcName and clean-up. [Capuche] -//============================================================ +//= 2.0 Replaced occurrence of PcName and clean-up. [Capuche] +//============================================================ // Sign //============================================================ @@ -37,7 +37,7 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "a Mage first. Alright, dear?"; close; } - if(BaseClass != Job_Mage){ + if(BaseClass != Job_Mage || eaclass()&EAJL_BABY){ mes "You know, sometimes"; mes "other jobs might look a"; mes "little better in some battle"; @@ -46,7 +46,7 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "anyone can do what you do~"; close; } - if(eaclass()&(EAJL_UPPER|EAJL_2|EAJL_THIRD) && tu_magician01 < 7){ + if(Class != Job_Mage && tu_magician01 < 7){ mes "Although I offer magic"; mes "training, it's not very helpful"; mes "if you're already experienced"; @@ -164,8 +164,8 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "In other words, even the same properties"; mes "have different features that must be considered."; mes "I will explain the properties now."; - next; while((1)){ + next; switch(select("^ff0000Fire^000000", "^5C4033Earth^000000", "^93DB70Wind^000000", "^0000FFWater^000000", "^CFB53BGhost^000000", "Quit.")){ case 1: mes "[Mana]"; @@ -211,7 +211,6 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "Fire Wall won't necessarily"; mes "block its approach. So beware!"; .@eread_1 = 1; - next; break; case 2: mes "[Mana]"; @@ -246,7 +245,6 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "Fire Ball, to take advantage of"; mes "the monster's Earth property."; .@eread_2 = 1; - next; break; case 3: mes "[Mana]"; @@ -284,7 +282,6 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "that we Mages can use are"; mes "Lighning Bolt and Thunder Storm."; .@eread_3 = 1; - next; break; case 4: mes "[Mana]"; @@ -321,7 +318,6 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "While monsters are frozen by"; mes "Frost Diver, they're considered Water monsters. Interesting, huh?"; .@eread_4 = 1; - next; break; case 5: mes "[Mana]"; @@ -354,7 +350,6 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "attacks or strong property"; mes "attacks, so be really careful!"; .@eread_5 = 1; - next; break; case 6: mes "[Mana]"; @@ -476,7 +471,7 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ } next; mes "[Mana]"; - if (countitem(915) < 10){ + if (countitem(915) < 10){// Chrysalis if (tu_magician01 == 3) { mes "Aw, you don't"; mes "have enough of"; @@ -512,8 +507,8 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ mes "more advanced Mage"; mes "skills. Which one would"; mes "you like me to explain?"; - next; while(1){ + next; switch(select("Soul Strike:Safety Wall:Fire Ball:Frost Diver:Thunderstorm:Fire Wall:Energy Coat:Quit.")) { case 1: mes "[Mana]"; @@ -679,7 +674,6 @@ geffen,67,180,4 script New Mage Manager#M 8_F,{ if (.@total) getexp (.@total*300),(.@total*100); close; } - next; } close; case 6: diff --git a/npc/quests/first_class/tu_merchant.txt b/npc/quests/first_class/tu_merchant.txt index fc6127a810..76ef529040 100644 --- a/npc/quests/first_class/tu_merchant.txt +++ b/npc/quests/first_class/tu_merchant.txt @@ -1,27 +1,28 @@ -//===== rAthena Script ======================================= +//===== rAthena Script ======================================= //= Merchant Class Tutorial and Job Specific Quest -//===== By: ================================================== +//===== By: ================================================== //= Fix up by Jukka -//===== Current Version: ===================================== -//= 1.3 -//===== Compatible With: ===================================== +//===== Current Version: ===================================== +//= 2.0 +//===== Compatible With: ===================================== //= rAthena Project -//===== Description: ========================================= +//===== Description: ========================================= //= [Official Conversion] //= Merchant training quest. -//===== Additional Comments: ================================= +//===== Additional Comments: ================================= //= 1.0 Fully working //= 1.1 Fixed bugs, optimized [Lupus] //= 1.2 fixed Weight check //= 1.2 Fixed experience gains to match upcoming rate adjustments. [SinSloth] //= 1.3 Misc. updates. [L0ne_W0lf] -//============================================================ +//= 2.0 Clean-up. [Capuche] +//============================================================ // Guarnien //============================================================ -alberta_in,70,51,5 script Guarnien 98,{ +alberta_in,70,51,5 script Guarnien 4W_M_02,{ mes "[Guarnien]"; - if(Class != Job_Merchant && Class != Job_Baby_Merchant){ + if(Class != Job_Merchant){ mes "Hello stranger."; mes "I wish I could"; mes "offer you help"; @@ -49,106 +50,81 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "If you can be sincerely kind to everyone that you meet, you'll"; mes "have no problem."; close; - case 16: - mes "So..."; - mes "How much have"; - mes "you learned"; - mes "about Vending?"; - next; - set .@chk_vend, getskilllv("MC_VENDING"); - if((.@chk_vend > 3) && (.@chk_vend < 10)){ - mes "[Guarnien]"; - mes "Excellent!"; - mes "You've taught yourself well. Here, you've earned this little reward~"; - set tu_merchant, 17; - completequest 8240; - getexp 186,43; - next; - } else if(.@chk_vend == 10){ - mes "[Guarnien]"; - mes "Oh, I see that you're very serious about being a Merchant. I'm proud that you've managed to master this skill! Here, you deserve this reward!"; - set tu_merchant, 17; - completequest 8240; - getexp 199,69; - next; - } else { - mes "[Guarnien]"; - mes "Hmm..."; - mes "Haven't learned Level 4 Vending yet, huh? Just keep in mind that being able to vend things is one"; - mes "of the defining characteristics of being a Merchant!"; - close; - } - mes "[Guarnien]"; - mes "Ah, now you have mastered the fundamentals of the Merchant class. Just keep practicing the basic principles, like researching the market for item prices, and you should be fine."; - next; - mes "[Guarnien]"; - mes "Although everything we do is for money, never forget customer needs and always sell your products at a suitably fair price. Otherwise, no one may buy your goods!"; - next; - mes "[Guarnien]"; - mes "Well, there's nothing more I can teach you for now. Go out into the world and make your mark as a Merchant."; - next; - mes "[Guarnien]"; - mes "And feel free to"; - mes "visit me whenever"; - mes "the mood strikes you."; - mes "Good luck to you~"; - close; case 15: - mes "I believe it's time"; - mes "for my final lecture."; - mes "I'll discuss the definitive"; - mes "skill of the Merchant: ^871F78Vending^000000. Please listen carefully."; - next; - mes "[Guarnien]"; - mes "The Vending skill is an active skill which allows you to open your own shop where you stand. Vending allows you to do real business with other people."; - next; - mes "[Guarnien]"; - mes "However, you can only vend items that are stored in your PushCart,"; - mes "so you'll need one of those. The maximum price you can set for"; - mes "each item is 99,990,000 Zeny."; - next; - mes "[Guarnien]"; - mes "Basically, you've got to learn the Push Cart skill first before you can learn the Vending skill."; - next; - mes "[Guarnien]"; - mes "The higher the level of the Vending skill, the more items you can vend at one time. Vending is mastered at Skill Level 10."; - next; - mes "[Guarnien]"; - mes "Level 1 Vending allows you"; - mes "to vend a total of 3 items at one time. Each time you level up the Vending skill, the total number of items you can vend will"; - mes "increase by one."; - next; - set .@chk_vend, getskilllv("MC_VENDING"); - if((.@chk_vend > 3) && (.@chk_vend < 10)){ + case 16: + .@chk_vend = getskilllv("MC_VENDING"); + if (tu_merchant == 15) { + mes "I believe it's time"; + mes "for my final lecture."; + mes "I'll discuss the definitive"; + mes "skill of the Merchant: ^871F78Vending^000000. Please listen carefully."; + next; mes "[Guarnien]"; - mes "But I see that you must already know that, huh? Well, seeing as you're so clever, I think you've earned this little prize~"; - set tu_merchant, 17; + mes "The Vending skill is an active skill which allows you to open your own shop where you stand. Vending allows you to do real business with other people."; + next; + mes "[Guarnien]"; + mes "However, you can only vend items that are stored in your PushCart,"; + mes "so you'll need one of those. The maximum price you can set for"; + mes "each item is 99,990,000 Zeny."; + next; + mes "[Guarnien]"; + mes "Basically, you've got to learn the Push Cart skill first before you can learn the Vending skill."; + next; + mes "[Guarnien]"; + mes "The higher the level of the Vending skill, the more items you can vend at one time. Vending is mastered at Skill Level 10."; + next; + mes "[Guarnien]"; + mes "Level 1 Vending allows you"; + mes "to vend a total of 3 items at one time. Each time you level up the Vending skill, the total number of items you can vend will"; + mes "increase by one."; + next; + mes "[Guarnien]"; + if((.@chk_vend > 3) && (.@chk_vend < 10)){ + mes "But I see that you must already know that, huh? Well, seeing as you're so clever, I think you've earned this little prize~"; + getexp 186,60; + } else if(.@chk_vend == 10){ + mes "But it looks like I just put my foot in my mouth. I'm sorry, I didn't notice that you already mastered the Vending skill..."; + next; + mes "[Guarnien]"; + mes "You're such an"; + mes "excellent student!"; + mes "Please, take this"; + mes "little reward for"; + mes "all your efforts~"; + getexp 199,69; + } else { + mes "For your final assignment, I will ask you to learn the Vending skill up to Skill Level 4. Of course, once you do, I'll give you a little reward. I'll be waiting, so do your best~"; + tu_merchant = 16; + erasequest 8239; + setquest 8240; + close; + } completequest 8239; - getexp 186,60; - next; - } else if(.@chk_vend == 10){ - mes "[Guarnien]"; - mes "But it looks like I just put my foot in my mouth. I'm sorry, I didn't notice that you already mastered the Vending skill..."; - next; - mes "[Guarnien]"; - mes "You're such an"; - mes "excellent student!"; - mes "Please, take this"; - mes "little reward for"; - mes "all your efforts~"; - set tu_merchant, 17; - completequest 8239; - getexp 199,69; - next; - } else { - mes "[Guarnien]"; - mes "For your final assignment, I will ask you to learn the Vending skill up to Skill Level 4. Of course, once you do, I'll give you a little reward. I'll be waiting, so do your best~"; - set tu_merchant, 16; - erasequest 8239; - setquest 8240; - close; } - + else { + mes "So..."; + mes "How much have"; + mes "you learned"; + mes "about Vending?"; + next; + mes "[Guarnien]"; + if((.@chk_vend > 3) && (.@chk_vend < 10)){ + mes "Excellent!"; + mes "You've taught yourself well. Here, you've earned this little reward~"; + getexp 186,43; + } else if(.@chk_vend == 10){ + mes "Oh, I see that you're very serious about being a Merchant. I'm proud that you've managed to master this skill! Here, you deserve this reward!"; + getexp 199,69; + } else { + mes "Hmm..."; + mes "Haven't learned Level 4 Vending yet, huh? Just keep in mind that being able to vend things is one"; + mes "of the defining characteristics of being a Merchant!"; + close; + } + completequest 8240; + } + tu_merchant = 17; + next; mes "[Guarnien]"; mes "Ah, now you have mastered the fundamentals of the Merchant class. Just keep practicing the basic principles, like researching the market for item prices, and you should be fine."; next; @@ -164,200 +140,161 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "the mood strikes you."; mes "Good luck to you~"; close; - case 14: - mes "So, have you"; - mes "learned Push Cart up"; - mes "to Level 4 like I asked?"; - next; - set .@chk_cart, getskilllv("MC_PUSHCART"); - if(.@chk_cart > 3 && .@chk_cart < 10){ - mes "[Guarnien]"; - mes "Well done~"; - mes "You've been a very"; - mes "cooperative student."; - mes "You deserve a little"; - mes "reward for your effort~"; - set tu_merchant, 15; - erasequest 8238; - setquest 8239; - getexp 162,52; - next; - mes "[Guarnien]"; - mes "Next time, I'll talk about the skill that sets Merchants apart from all the other classes: ^871F78Vending^000000. So don't miss it!"; - close; - } else if(.@chk_cart == 10){ - mes "[Guarnien]"; - mes "Excellent!"; - mes "You've actually went above and beyond mastered the Push Cart skill. Great work!"; - set tu_merchant, 15; - erasequest 8238; - setquest 8239; - getexp 186,60; - next; - mes "[Guarnien]"; - mes "Next time, I'll talk about the skill that sets Merchants apart from all the other classes: ^871F78Vending^000000. So don't miss it!"; - close; - } else { - mes "[Guarnien]"; - mes "Still not there, huh?"; - mes "Well, remember that you need"; - mes "Level 5 Increase Weight Limit before you can learn the Push"; - mes "Cart skill. I hope that helps."; - close; - } case 13: - mes "Now to talk about"; - mes "^871F78Push Cart^000000. First off, you need to know Level 5 Increase Weight Limit before you can even learn the Push Cart skill."; - next; - mes "[Guarnien]"; - mes "Push Cart can be mastered at"; - mes "Skill Level 10. This skill allows you to carry a Push Cart with you. You can carry a maximum of 100 different kinds of items that weigh less than 8,000."; - next; - mes "[Guarnien]"; - mes "As you can see, this skill is an advanced form of the Increase Weight Limit skill. You can procure a PushCart from most Kafra Ladies for a certain fee."; - next; - mes "[Guarnien]"; - mes "Once you have rented a Cart, you can hold on to it so long as you don't take it off. The disadvantage to using a PushCart is that your movement speed is reduced to"; - mes "almost half! Horrible, isn't it?"; - next; - mes "[Guarnien]"; - mes "Fortunately, when you increase"; - mes "the level of the Push Cart skill, your movement speed will slowly be restored. With Push Cart Level 10, a PushCart won't slow you"; - mes "down at all!"; - next; - set .@chk_cart, getskilllv("MC_PUSHCART"); - if(.@chk_cart > 3 && .@chk_cart < 10){ + case 14: + .@chk_cart = getskilllv("MC_PUSHCART"); + if (tu_merchant == 13) { + mes "Now to talk about"; + mes "^871F78Push Cart^000000. First off, you need to know Level 5 Increase Weight Limit before you can even learn the Push Cart skill."; + next; mes "[Guarnien]"; - mes "Ah, and I see that you've been focusing on learning Push Cart. Although you might still have a problem with your movement"; - mes "speed, it shouldn't be a big deal."; - mes "Well done~"; - set tu_merchant, 15; + mes "Push Cart can be mastered at"; + mes "Skill Level 10. This skill allows you to carry a Push Cart with you. You can carry a maximum of 100 different kinds of items that weigh less than 8,000."; + next; + mes "[Guarnien]"; + mes "As you can see, this skill is an advanced form of the Increase Weight Limit skill. You can procure a PushCart from most Kafra Ladies for a certain fee."; + next; + mes "[Guarnien]"; + mes "Once you have rented a Cart, you can hold on to it so long as you don't take it off. The disadvantage to using a PushCart is that your movement speed is reduced to"; + mes "almost half! Horrible, isn't it?"; + next; + mes "[Guarnien]"; + mes "Fortunately, when you increase"; + mes "the level of the Push Cart skill, your movement speed will slowly be restored. With Push Cart Level 10, a PushCart won't slow you"; + mes "down at all!"; + next; erasequest 8237; - setquest 8238; - getexp 162,52; - next; + .@chk_cart = getskilllv("MC_PUSHCART"); mes "[Guarnien]"; - mes "Next time, I'll talk about the skill that sets Merchants apart from all the other classes: ^871F78Vending^000000. So don't miss it!"; - close; - } else if(.@chk_cart == 10){ - mes "[Guarnien]"; - mes "Wonderful! You've already"; - mes "mastered the Push Cart skill."; - mes "You truly deserve a little bit of a reward~"; - set tu_merchant, 15; - erasequest 8237; - setquest 8238; - getexp 186,60; - next; - mes "[Guarnien]"; - mes "Next time, I'll talk about the skill that sets Merchants apart from all the other classes: ^871F78Vending^000000. So don't miss it!"; - close; - } else { - mes "[Guarnien]"; - mes "For now, why don't"; - mes "you learn the Push Cart"; - mes "skill up to Level 4? Once"; - mes "you do that, I can go on to"; - mes "my next lecture."; - set tu_merchant, 14; - close; + if(.@chk_cart > 3 && .@chk_cart < 10){ + mes "Ah, and I see that you've been focusing on learning Push Cart. Although you might still have a problem with your movement"; + mes "speed, it shouldn't be a big deal."; + mes "Well done~"; + getexp 162,52; + } else if(.@chk_cart == 10){ + mes "Wonderful! You've already"; + mes "mastered the Push Cart skill."; + mes "You truly deserve a little bit of a reward~"; + getexp 186,60; + } else { + mes "For now, why don't"; + mes "you learn the Push Cart"; + mes "skill up to Level 4? Once"; + mes "you do that, I can go on to"; + mes "my next lecture."; + tu_merchant = 14; + setquest 8238; + close; + } + setquest 8239; } - case 12: - mes "So..."; - mes "How is it going"; - mes "with learning that"; - mes "^871F78Over Charge^000000 skill?"; + else { + mes "So, have you"; + mes "learned Push Cart up"; + mes "to Level 4 like I asked?"; + next; + mes "[Guarnien]"; + if(.@chk_cart > 3 && .@chk_cart < 10){ + mes "Well done~"; + mes "You've been a very"; + mes "cooperative student."; + mes "You deserve a little"; + mes "reward for your effort~"; + getexp 162,52; + } else if(.@chk_cart == 10){ + mes "Excellent!"; + mes "You've actually went above and beyond mastered the Push Cart skill. Great work!"; + getexp 186,60; + } else { + mes "Still not there, huh?"; + mes "Well, remember that you need"; + mes "Level 5 Increase Weight Limit before you can learn the Push"; + mes "Cart skill. I hope that helps."; + close; + } + erasequest 8238; + setquest 8239; + } + tu_merchant = 15; next; - set .@chk_over, getskilllv("MC_OVERCHARGE"); - if(.@chk_over > 3 && .@chk_over < 10){ - mes "[Guarnien]"; - mes "Nice work!"; - mes "I can tell that"; - mes "you've done just"; - mes "as I asked. Please,"; - mes "take this little reward~"; - set tu_merchant, 13; - erasequest 8236; - setquest 8237; - getexp 126,27; - next; - mes "[Guarnien]"; - mes "Next time, I'll discuss the Push Cart skill. Be ready for this lecture, as Push Cart is one of the more important skills for a Merchant."; - close; - } else if(.@chk_over == 10){ - mes "[Guarnien]"; - mes "Whoa..."; - mes "You actually"; - mes "mastered Over Charge?"; - mes "Most impressive! You deserve a small reward for your work!"; - set tu_merchant, 13; - erasequest 8236; - setquest 8237; - getexp 142,33; - next; - mes "[Guarnien]"; - mes "Next time, I'll discuss the Push Cart skill. Be ready for this lecture, as Push Cart is one of the more important skills for a Merchant."; - close; - } else { - mes "[Guarnien]"; - mes "Mm? You haven't"; - mes "learned Over Charge"; - mes "up to Skill Level 4 yet?"; - mes "There's no rush, but I won't be able to lecture on anything until you finish this little task."; - close; - } + mes "[Guarnien]"; + mes "Next time, I'll talk about the skill that sets Merchants apart from all the other classes: ^871F78Vending^000000. So don't miss it!"; + close; case 11: - mes "Ah, ready to"; - mes "learn already,"; - mes "are you? Alright,"; - mes "let me tell you"; - mes "about ^871F78Over Charge^000000."; - next; - mes "[Guarnien]"; - mes "Like Discount, Over Charge is a Passive skill that can be mastered at Skill Level 10. Therefore, it doesn't require SP to use it."; - next; - mes "[Guarnien]"; - mes "Over Charge allows you to sell items to NPC shops for more Zeny. The higher your Over Charge Skill Level, the more Zeny you'll receive for items sold to NPCs."; - next; - set .@chk_over, getskilllv("MC_OVERCHARGE"); - if(.@chk_over > 3 && .@chk_over < 10){ - mes "[Guarnien]"; - mes "Ah, you've already learned Level 4 Over Charge. Perfect! Let me give you a little reward~"; - set tu_merchant, 13; - erasequest 8235; - setquest 8236; - getexp 126,27; + case 12: + .@chk_over = getskilllv("MC_OVERCHARGE"); + if (tu_merchant == 11) { + mes "Ah, ready to"; + mes "learn already,"; + mes "are you? Alright,"; + mes "let me tell you"; + mes "about ^871F78Over Charge^000000."; next; mes "[Guarnien]"; - mes "Next time, I'll discuss the"; - mes "Push Cart skill. Be ready for this lecture, as Push Cart is one of the more important skills for a Merchant."; - close; - } else if(.@chk_over == 10){ - mes "[Guarnien]"; - mes "Amazing! You've already mastered the Over Charge skill! You must have wanted this reward badly~"; - set tu_merchant, 13; - erasequest 8235; - setquest 8236; - getexp 142,33; + mes "Like Discount, Over Charge is a Passive skill that can be mastered at Skill Level 10. Therefore, it doesn't require SP to use it."; next; mes "[Guarnien]"; - mes "Next time, I'll discuss the"; - mes "Push Cart skill. Be ready for this lecture, as Push Cart is one of the more important skills for a Merchant."; - close; - } else { - mes "[Guarnien]"; - mes "Personally, I think you should learn this skill for sure! For your next assignment, learn Over Charge up to Level 4. It shouldn't be too difficult to do."; - set tu_merchant, 12; - erasequest 8235; - setquest 8236; + mes "Over Charge allows you to sell items to NPC shops for more Zeny. The higher your Over Charge Skill Level, the more Zeny you'll receive for items sold to NPCs."; next; mes "[Guarnien]"; - mes "Once you do that,"; - mes "we can talk about"; - mes "more advanced stuff."; - mes "Do your best~"; - close; + erasequest 8235; + .@chk_over = getskilllv("MC_OVERCHARGE"); + if(.@chk_over > 3 && .@chk_over < 10){ + mes "Ah, you've already learned Level 4 Over Charge. Perfect! Let me give you a little reward~"; + getexp 126,27; + } else if(.@chk_over == 10){ + mes "Amazing! You've already mastered the Over Charge skill! You must have wanted this reward badly~"; + getexp 142,33; + } else { + mes "Personally, I think you should learn this skill for sure! For your next assignment, learn Over Charge up to Level 4. It shouldn't be too difficult to do."; + tu_merchant = 12; + setquest 8236; + next; + mes "[Guarnien]"; + mes "Once you do that,"; + mes "we can talk about"; + mes "more advanced stuff."; + mes "Do your best~"; + close; + } + setquest 8237; } + else { + mes "So..."; + mes "How is it going"; + mes "with learning that"; + mes "^871F78Over Charge^000000 skill?"; + next; + mes "[Guarnien]"; + if(.@chk_over > 3 && .@chk_over < 10){ + mes "Nice work!"; + mes "I can tell that"; + mes "you've done just"; + mes "as I asked. Please,"; + mes "take this little reward~"; + getexp 126,27; + } else if(.@chk_over == 10){ + mes "Whoa..."; + mes "You actually"; + mes "mastered Over Charge?"; + mes "Most impressive! You deserve a small reward for your work!"; + getexp 142,33; + } else { + mes "Mm? You haven't"; + mes "learned Over Charge"; + mes "up to Skill Level 4 yet?"; + mes "There's no rush, but I won't be able to lecture on anything until you finish this little task."; + close; + } + erasequest 8236; + setquest 8237; + } + tu_merchant = 13; + next; + mes "[Guarnien]"; + mes "Next time, I'll discuss the"; + mes "Push Cart skill. Be ready for this lecture, as Push Cart is one of the more important skills for a Merchant."; + close; case 10: mes "Let me see those"; mes "Red Potions. Now,"; @@ -376,12 +313,12 @@ alberta_in,70,51,5 script Guarnien 98,{ next; mes "[Guarnien]"; mes "Now, why don't you go to Prontera and try to buy 10 Red Potions from an NPC for the cheapest price again?"; - set tu_merchant, rand(6,8); + tu_merchant = rand(6,8); close; case 9: mes "Let me see those"; mes "Red Potions. Ah, it seems you researched the market and bought the cheapest ones! Great work!"; - set tu_merchant, 11; + tu_merchant = 11; changequest 8234,8235; getexp 112,22; next; @@ -419,99 +356,82 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "Prontera's a bit far from here, isn't it? I'll just use this Kafra Warp-- Mahnsoo has a bunch for"; mes "some reason --to send you there right now. Get ready...!"; next; - set tu_merchant, rand(6,8); + tu_merchant = rand(6,8); + changequest 8233,8234; warp "prontera",155,46; end; - case 4: - mes "So, how is it going with learning the Discount skill? Like I always say, if you can't make a bargain, you can't be a Merchant!"; - next; - mes "[Guarnien]"; - set .@chk_disc, getskilllv("MC_DISCOUNT"); - if(.@chk_disc > 3 && .@chk_disc < 10){ - mes "Ah, you've learned"; - mes "how to use the Discount skill"; - mes "well enough. Good, here's a little reward for your hard work~"; - set tu_merchant, 5; - erasequest 8232; - setquest 8233; - getexp 83,11; - next; - mes "[Guarnien]"; - mes "Alright, my next lesson will hopefully offer you a bit more of a challenge. Come back when you think you're ready, alright?"; - close; - } else if(.@chk_disc == 10){ - mes "Incredible!"; - mes "You've actually mastered the Discount skill! You're such a great student. You deserve a bit of a reward!"; - set tu_merchant, 5; - erasequest 8232; - setquest 8233; - getexp 97,18; - next; - mes "[Guarnien]"; - mes "Alright, my next lesson will hopefully offer you a bit more of a challenge. Come back when you think you're ready, alright?"; - close; - } else { - mes "Not yet, huh?"; - mes "Well, you should be able to reach that goal soon. After all, it's one of the basics of being a Merchant!"; - close; - } case 3: - mes "Ah, you're back!"; - mes "Now, I was going"; - mes "to tell you about"; - mes "the Discount skill, right?"; - next; - mes "[Guarnien]"; - mes "The ^871F78Discount^000000 skill allows you to buy items at lower prices from NPC shops. It is a ^871F78Passive Skill^000000 which is always in effect and does not consume SP."; - next; - mes "[Guarnien]"; - mes "The Discount skill is"; - mes "mastered at ^871F78Level 10^000000. The higher the skill level, the less you have to pay for items at NPC shops."; - next; - mes "[Guarnien]"; - set .@chk_disc, getskilllv("MC_DISCOUNT"); - if(.@chk_disc > 3 && .@chk_disc < 10){ - mes "Oooh, good work."; - mes "I see that you've"; - mes "raised your Discount"; - mes "to Level 4 already."; - mes "Here, take this"; - mes "small reward~"; - set tu_merchant, 5; + case 4: + .@chk_disc = getskilllv("MC_DISCOUNT"); + if (tu_merchant == 3) { + mes "Ah, you're back!"; + mes "Now, I was going"; + mes "to tell you about"; + mes "the Discount skill, right?"; + next; + mes "[Guarnien]"; + mes "The ^871F78Discount^000000 skill allows you to buy items at lower prices from NPC shops. It is a ^871F78Passive Skill^000000 which is always in effect and does not consume SP."; + next; + mes "[Guarnien]"; + mes "The Discount skill is"; + mes "mastered at ^871F78Level 10^000000. The higher the skill level, the less you have to pay for items at NPC shops."; + next; + mes "[Guarnien]"; + if(.@chk_disc > 3 && .@chk_disc < 10){ + mes "Oooh, good work."; + mes "I see that you've"; + mes "raised your Discount"; + mes "to Level 4 already."; + mes "Here, take this"; + mes "small reward~"; + getexp 83,11; + } else if(.@chk_disc == 10){ + mes "Incredible!"; + mes "You've actually mastered the Discount skill! You're such a great student. You deserve a bit of a reward!"; + getexp 97,18; + } else { + mes "Alright! Now, in order to become closer towards becoming a true Merchant, I want you to learn the Discount skill up to Level 4."; + next; + mes "[Guarnien]"; + mes "It'd be nicer if you could"; + mes "master it, but you might be more interested in devoting your time to other skills."; + next; + mes "[Guarnien]"; + mes "Still, you can't ignore the fact that bargaining is an essential skill for a Merchant! Come back to me when you're ready~"; + tu_merchant = 4; + erasequest 8231; + setquest 8232; + close; + } erasequest 8231; - setquest 8232; - getexp 83,11; - next; - mes "[Guarnien]"; - mes "Alright, my next lesson will hopefully offer you a bit more of a challenge. Come back when you"; - mes "think you're ready, alright?"; - close; - } else if(.@chk_disc == 10){ - mes "Incredible!"; - mes "You've actually mastered the Discount skill! You're such a great student. You deserve a bit of a reward!"; - set tu_merchant, 5; - erasequest 8231; - setquest 8232; - getexp 97,18; - next; - mes "[Guarnien]"; - mes "Alright, my next lesson will hopefully offer you a bit more of a challenge. Come back when you"; - mes "think you're ready, alright?"; - close; - } else { - mes "Alright! Now, in order to become closer towards becoming a true Merchant, I want you to learn the Discount skill up to Level 4."; - next; - mes "[Guarnien]"; - mes "It'd be nicer if you could"; - mes "master it, but you might be more interested in devoting your time to other skills."; - next; - mes "[Guarnien]"; - mes "Still, you can't ignore the fact that bargaining is an essential skill for a Merchant! Come back to me when you're ready~"; - set tu_merchant, 4; - erasequest 8231; - setquest 8232; - close; + setquest 8233; } + else { + mes "So, how is it going with learning the Discount skill? Like I always say, if you can't make a bargain, you can't be a Merchant!"; + next; + mes "[Guarnien]"; + if(.@chk_disc > 3 && .@chk_disc < 10){ + mes "Ah, you've learned"; + mes "how to use the Discount skill"; + mes "well enough. Good, here's a little reward for your hard work~"; + getexp 83,11; + } else if(.@chk_disc == 10){ + mes "Incredible!"; + mes "You've actually mastered the Discount skill! You're such a great student. You deserve a bit of a reward!"; + getexp 97,18; + } else { + mes "Not yet, huh?"; + mes "Well, you should be able to reach that goal soon. After all, it's one of the basics of being a Merchant!"; + close; + } + erasequest 8232; + setquest 8233; + } + tu_merchant = 5; + next; + mes "[Guarnien]"; + mes "Alright, my next lesson will hopefully offer you a bit more of a challenge. Come back when you think you're ready, alright?"; + close; case 2: mes "Ah, you've come back to learn more. Let's see, what was I going to tell you about... Right, Mammonite!"; next; @@ -525,13 +445,13 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "So if you use this skill too often, you might end up bankrupt! So be really careful. Also, as the Skill Level for Mammonite increases, so does the attack strength and Zeny consumption."; next; mes "[Guarnien]"; - set .@chk_mam, getskilllv("MC_MAMMONITE"); + .@chk_mam = getskilllv("MC_MAMMONITE"); if(.@chk_mam > 3 && .@chk_mam < 10){ mes "Ah, I see that you've already tried this skill. How much money have you wasted using Mammonite? Not too much, I hope."; next; mes "[Guarnien]"; mes "Well, since you're still green, I feel awfully sorry if you've wasted Zeny. Why don't you take this as compensation?"; - set tu_merchant, 3; + tu_merchant = 3; erasequest 8230; setquest 8231; getexp 70,12; @@ -541,7 +461,7 @@ alberta_in,70,51,5 script Guarnien 98,{ close; } else { mes "Okay. Now I think we're ready for me to discuss the ^871F78Discount^000000 skill. Come back when you'd like me to tell you more about it, okay?"; - set tu_merchant, 3; + tu_merchant = 3; erasequest 8230; setquest 8231; close; @@ -554,7 +474,7 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "like I asked?"; next; mes "[Guarnien]"; - set .@chk_soji, getskilllv("MC_INCCARRY"); + .@chk_soji = getskilllv("MC_INCCARRY"); if(.@chk_soji > 3 && .@chk_soji < 10){ mes "Ah. I can tell that you have. Not bad! By now you should be able to learn the ^871F78Discount^000000 skill, but I'll teach you about that later."; next; @@ -570,7 +490,7 @@ alberta_in,70,51,5 script Guarnien 98,{ if(getskilllv("MC_IDENTIFY")){ mes "[Guarnien]"; mes "I see in your eyes that you've already learned to appraise items. Haha, although having that knowledge is reward in itself, let me give you something extra!"; - set tu_merchant, 2; + tu_merchant = 2; erasequest 8229; setquest 8230; getexp 58,11; @@ -581,7 +501,7 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "I'll talk about the Mammonite skill. For now, let me take a little bit of a break from all of this arduous lecture. ^666666*Whew!*^000000"; close; } - } else { + } else { mes "No? That's fine."; mes "But I can't teach you"; mes "much more if you can't grasp these simple basics, so hurry and learn those skills, okay?"; @@ -589,24 +509,19 @@ alberta_in,70,51,5 script Guarnien 98,{ } mes "Alright, next time"; mes "I'll talk about the Mammonite skill. For now, let me take a little bit of a break from all of this arduous lecture. ^666666*Whew!*^000000"; - set tu_merchant, 2; + tu_merchant = 2; erasequest 8229; setquest 8230; close; } - mes "You've just started out as a Merchant, haven't you? How would you like to learn the fundamentals of business from an experienced colleague?"; next; - if(select("Sure!:I'll make it on my own!")==1){ - set tu_merchant, 1; + if (select("Sure!:I'll make it on my own!") == 1){ if(getskilllv("MC_INCCARRY") < 4){ + tu_merchant = 1; setquest 8229; mes "[Guarnien]"; - if(Sex == 1){ - mes "Atta boy~!"; - } else { - mes "Atta girl~!"; - } + mes callfunc("F_Sex","Atta girl~!","Atta boy~!"); mes "But first things first!"; mes "You better learn the"; mes "^871F78Increase Weight Limit^000000 skill!"; @@ -639,7 +554,7 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "[Guarnien]"; if(getskilllv("MC_IDENTIFY")){ mes "I see in your eyes that you've already learned to appraise items. Haha, although having that knowledge is reward in itself, let me give you something extra!"; - set tu_merchant, 2; + tu_merchant = 2; erasequest 8229; setquest 8230; getexp 58,11; @@ -659,7 +574,7 @@ alberta_in,70,51,5 script Guarnien 98,{ mes "more about the Discount"; mes "skill later. I always manage"; mes "to forget about that!"; - set tu_merchant,2; + tu_merchant = 2; erasequest 8229; setquest 8230; close; @@ -678,150 +593,14 @@ alberta_in,70,51,5 script Guarnien 98,{ // Sagle //============================================================ -prontera,66,111,3 script Sagle 82,{ +prontera,66,111,3 script Sagle 4_KID01,{ mes "[Sagle]"; - if(tu_merchant == 8){ - mes "Hello, hello~"; - mes "Why don't you buy"; - mes "some Red Potions?"; - mes "They're essential for travel, and these Red Potions are the best for newer adventurers~"; - next; - mes "[Sagle]"; - mes "I will sell you 10 Red Potions for ^871F78420 zeny^000000. You'd better get them now while they're still here!"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Sagle]"; - mes "Excellent!"; - mes "You certainly have an eye for bargains. Here you go, 10 Red Potions fresh from the... Potioner..."; - if(Zeny < 420){ - next; - mes "[Sagle]"; - mes "Whoa, hold on!"; - mes "You can't afford"; - mes "these potions..."; - mes "Please come back"; - mes "when you have enough"; - mes "Zeny, alright?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Sagle]"; - mes "Whoa, hold on!"; - mes "There's no way you carry all of this! Why don't you put some of your stuff in Kafra Storage before coming back?"; - close; - } else { - set Zeny, Zeny - 420; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Sagle]"; - mes "Alright..."; - mes "But don't"; - mes "complain if"; - mes "these potions"; - mes "are sold out!"; - close; - } - } - if(tu_merchant == 7){ - mes "Hello, hello~"; - mes "Why don't you buy"; - mes "some Red Potions?"; - mes "They're essential for travel, and these Red Potions are the best for newer adventurers~"; - next; - mes "[Sagle]"; - mes "I will sell you 10 Red Potions for ^871F78410 zeny^000000. You'd better get them now while they're still here!"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Sagle]"; - mes "Excellent!"; - mes "You certainly have an eye for bargains. Here you go, 10 Red Potions fresh from the... Potioner..."; - if(Zeny < 410){ - next; - mes "[Sagle]"; - mes "Whoa, hold on!"; - mes "You can't afford"; - mes "these potions..."; - mes "Please come back"; - mes "when you have enough"; - mes "Zeny, alright?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Sagle]"; - mes "Whoa, hold on!"; - mes "There's no way you carry all of this! Why don't you put some of your stuff in Kafra Storage before coming back?"; - close2; - end; - } else { - set Zeny, Zeny - 410; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Sagle]"; - mes "Alright..."; - mes "But don't"; - mes "complain if"; - mes "these potions"; - mes "are sold out!"; - close; - } - } - if(tu_merchant == 6){ - mes "Hello, hello~"; - mes "Why don't you buy"; - mes "some Red Potions?"; - mes "They're essential for travel, and these Red Potions are the best for newer adventurers~"; - next; - mes "[Sagle]"; - mes "I will sell you 10 Red Potions for ^871F78390 zeny^000000. You'd better get them now while they're still here!"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Sagle]"; - mes "Excellent!"; - mes "You certainly have an eye for bargains. Here you go, 10 Red Potions fresh from the... Potioner..."; - if(Zeny < 390){ - next; - mes "[Sagle]"; - mes "Whoa, hold on!"; - mes "You can't afford"; - mes "these potions..."; - mes "Please come back"; - mes "when you have enough"; - mes "Zeny, alright?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Sagle]"; - mes "Whoa, hold on!"; - mes "There's no way you carry all of this! Why don't you put some of your stuff in Kafra Storage before coming back?"; - close; - } else { - set Zeny, Zeny - 390; - set tu_merchant, 9; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Sagle]"; - mes "Alright..."; - mes "But don't"; - mes "complain if"; - mes "these potions"; - mes "are sold out!"; - close; - } - } + if (tu_merchant == 6) + callsub L_Potions, 390,9;// , + else if (tu_merchant == 7) + callsub L_Potions, 410,10; + else if (tu_merchant == 8) + callsub L_Potions, 420,10; mes "It's on the tip"; mes "of my tongue, but"; mes "I can't quite remember..."; @@ -833,129 +612,65 @@ prontera,66,111,3 script Sagle 82,{ mes "It's none of my business, but it's good to know what's going on in"; mes "the world, particularly if it'll affect the markets."; close; + +L_Potions: + .@cost = getarg(0); + mes "Hello, hello~"; + mes "Why don't you buy"; + mes "some Red Potions?"; + mes "They're essential for travel, and these Red Potions are the best for newer adventurers~"; + next; + mes "[Sagle]"; + mes "I will sell you 10 Red Potions for ^871F78"+ .@cost +" zeny^000000. You'd better get them now while they're still here!"; + next; + switch(select("Buy:Cancel")){ + case 1: + mes "[Sagle]"; + mes "Excellent!"; + mes "You certainly have an eye for bargains. Here you go, 10 Red Potions fresh from the... Potioner..."; + if(Zeny < .@cost){ + next; + mes "[Sagle]"; + mes "Whoa, hold on!"; + mes "You can't afford"; + mes "these potions..."; + mes "Please come back"; + mes "when you have enough"; + mes "Zeny, alright?"; + close; + } + if(MaxWeight - Weight < 71){ + next; + mes "[Sagle]"; + mes "Whoa, hold on!"; + mes "There's no way you carry all of this! Why don't you put some of your stuff in Kafra Storage before coming back?"; + } else { + Zeny = Zeny - .@cost; + tu_merchant = getarg(1); + getitem 501,10; //Red_Potion + } + close; + case 2: + mes "[Sagle]"; + mes "Alright..."; + mes "But don't"; + mes "complain if"; + mes "these potions"; + mes "are sold out!"; + close; + } } // Kellion //============================================================ -prontera,93,330,3 script Kellion 97,{ +prontera,93,330,3 script Kellion 4W_M_01,{ mes "[Kellion]"; - if(tu_merchant == 8){ - mes "I'm selling sets of"; - mes "10 Red Potions for 340 Zeny."; - mes "Would you like some?"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Kellion]"; - mes "Good choice~"; - mes "Thank you for"; - mes "using my shop."; - if(Zeny < 340){ - next; - mes "[Kellion]"; - mes "Ooops!"; - mes "I'm sorry, but you don't have enough Zeny. I've got to stay in business somehow, you know?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Kellion]"; - mes "...Huh?"; - mes "You better put some of your stuff in Kafra Storage, you can't carry much else!"; - close; - } else { - set Zeny, Zeny - 340; - set tu_merchant, 10; - getitem 569,10; //Novice_Potion - close; - } - case 2: - mes "[Kellion]"; - mes "Well, I'm sorry"; - mes "to hear that. But"; - mes "I guess I'll see"; - mes "you later."; - close; - } - } - if(tu_merchant == 7){ - mes "I'm selling sets of"; - mes "10 Red Potions for 390 Zeny."; - mes "Would you like some?"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Kellion]"; - mes "Good choice~"; - mes "Thank you for"; - mes "using my shop."; - if(Zeny < 390){ - next; - mes "[Kellion]"; - mes "Ooops!"; - mes "I'm sorry, but you don't have enough Zeny. I've got to stay in business somehow, you know?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Kellion]"; - mes "...Huh?"; - mes "You better put some of your stuff in Kafra Storage, you can't carry much else!"; - close; - } else { - set Zeny, Zeny - 390; - set tu_merchant, 9; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Kellion]"; - mes "Well, I'm sorry"; - mes "to hear that. But"; - mes "I guess I'll see"; - mes "you later."; - close; - } - } - if(tu_merchant == 6){ - mes "I'm selling sets of"; - mes "10 Red Potions for 400 Zeny."; - mes "Would you like some?"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Kellion]"; - mes "Good choice~"; - mes "Thank you for"; - mes "using my shop."; - if(Zeny < 400){ - next; - mes "[Kellion]"; - mes "Ooops!"; - mes "I'm sorry, but you don't have enough Zeny. I've got to stay in business somehow, you know?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Kellion]"; - mes "...Huh?"; - mes "You better put some of your stuff in Kafra Storage, you can't carry much else!"; - close; - } else { - set Zeny, Zeny - 400; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Kellion]"; - mes "Well, I'm sorry"; - mes "to hear that. But"; - mes "I guess I'll see"; - mes "you later."; - close; - } - } + if (tu_merchant == 6) + callsub L_Potions, 400,10;// , + else if (tu_merchant == 7) + callsub L_Potions, 390,9; + else if (tu_merchant == 8) + callsub L_Potions, 340,10; mes "Recently, I hear that something"; mes "has happened to the royal family."; next; @@ -967,297 +682,118 @@ prontera,93,330,3 script Kellion 97,{ mes "Now that's some morbid news!"; mes "Well, hopefully, there's no truth to it whatsoever. None at all..."; close; + +L_Potions: + .@cost = getarg(0); + mes "I'm selling sets of"; + mes "10 Red Potions for "+ .@cost +" Zeny."; + mes "Would you like some?"; + next; + switch(select("Buy:Cancel")){ + case 1: + mes "[Kellion]"; + mes "Good choice~"; + mes "Thank you for"; + mes "using my shop."; + if(Zeny < .@cost){ + next; + mes "[Kellion]"; + mes "Ooops!"; + mes "I'm sorry, but you don't have enough Zeny. I've got to stay in business somehow, you know?"; + close; + } + if(MaxWeight - Weight < 71){ + next; + mes "[Kellion]"; + mes "...Huh?"; + mes "You better put some of your stuff in Kafra Storage, you can't carry much else!"; + } else { + Zeny = Zeny - .@cost; + tu_merchant = getarg(1); + getitem 501,10; //Red_Potion + } + close; + case 2: + mes "[Kellion]"; + mes "Well, I'm sorry"; + mes "to hear that. But"; + mes "I guess I'll see"; + mes "you later."; + close; + } } - + // Aigie //============================================================ -prt_in,169,11,3 script Aigie 92,{ - if(tu_merchant == 8){ - mes "[Aigie]"; - mes "Welcome to my shop."; - mes "I'm just a young girl who's a victim of circumstance, forced to sell potions on the street for dirt cheap prices."; - next; - mes "[Aigie]"; - mes "Would you like"; - mes "to buy 10 Red Potions"; - mes "for 390 Zeny, kind adventurer?"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Aigie]"; - mes "Thank you so much."; - mes "Now I can finally"; - mes "afford food again..."; - if(Zeny < 390){ - next; - mes "[Aigie]"; - mes "Wait, wait!"; - mes "I am sorry, but you don't have enough money. Would you please get some more Zeny before coming back?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Aigie]"; - mes "Wait, wait!"; - mes "You can't possibly carry any more items. Why don't you put your things in Kafra Storage first?"; - close; - } else { - set Zeny, Zeny - 390; - set tu_merchant, 9; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Aigie]"; - mes "I understand."; - mes "But I hope you"; - mes "see that I'm offering"; - mes "you a really good price."; - mes "^666666*Sniff Sniff*^000000"; - close; - } - } - if(tu_merchant == 7){ - mes "[Aigie]"; - mes "Welcome to my shop."; - mes "I'm just a young girl who's a victim of circumstance, forced to sell potions on the street for dirt cheap prices."; - next; - mes "[Aigie]"; - mes "Would you like"; - mes "to buy 10 Red Potions"; - mes "for 420 Zeny, kind adventurer?"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Aigie]"; - mes "Thank you so much."; - mes "Now I can finally"; - mes "afford food again..."; - if(Zeny < 420){ - next; - mes "[Aigie]"; - mes "Wait, wait!"; - mes "I am sorry, but you don't have enough money. Would you please get some more Zeny before coming back?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Aigie]"; - mes "Wait, wait!"; - mes "You can't possibly carry any more items. Why don't you put your things in Kafra Storage first?"; - close; - } else { - set Zeny, Zeny - 420; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Aigie]"; - mes "I understand."; - mes "But I hope you"; - mes "see that I'm offering"; - mes "you a really good price."; - mes "^666666*Sniff Sniff*^000000"; - close; - } - } - if(tu_merchant == 6){ - mes "[Aigie]"; - mes "Welcome to my shop."; - mes "I'm just a young girl who's a victim of circumstance, forced to sell potions on the street for dirt cheap prices."; - next; - mes "[Aigie]"; - mes "Would you like"; - mes "to buy 10 Red Potions"; - mes "for 340 Zeny, kind adventurer?"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Aigie]"; - mes "Thank you so much."; - mes "Now I can finally"; - mes "afford food again..."; - if(Zeny < 340){ - next; - mes "[Aigie]"; - mes "Wait, wait!"; - mes "I am sorry, but you don't have enough money. Would you please get some more Zeny before coming back?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Aigie]"; - mes "Wait, wait!"; - mes "You can't possibly carry any more items. Why don't you put your things in Kafra Storage first?"; - close; - } else { - set Zeny, Zeny - 340; - set tu_merchant, 10; - getitem 569,10; //Novice_Potion - close; - } - case 2: - mes "[Aigie]"; - mes "I understand."; - mes "But I hope you"; - mes "see that I'm offering"; - mes "you a really good price."; - mes "^666666*Sniff Sniff*^000000"; - close; - } - } +prt_in,169,11,3 script Aigie 4_F_03,{ mes "[Aigie]"; + if (tu_merchant == 6) + callsub L_Potions, 340,10;// , + else if (tu_merchant == 7) + callsub L_Potions, 420,10; + else if (tu_merchant == 8) + callsub L_Potions, 390,9; mes "It's true that money isn't everything. I'm sure other things are important to have in order to be happy."; next; mes "[Aigie]"; mes "However, money can be much more dependable than some people I know. You can rely on money more than anything else in this world."; close; + +L_Potions: + .@cost = getarg(0); + mes "Welcome to my shop."; + mes "I'm just a young girl who's a victim of circumstance, forced to sell potions on the street for dirt cheap prices."; + next; + mes "[Aigie]"; + mes "Would you like"; + mes "to buy 10 Red Potions"; + mes "for "+ .@cost +" Zeny, kind adventurer?"; + next; + switch(select("Buy:Cancel")){ + case 1: + mes "[Aigie]"; + mes "Thank you so much."; + mes "Now I can finally"; + mes "afford food again..."; + if(Zeny < .@cost){ + next; + mes "[Aigie]"; + mes "Wait, wait!"; + mes "I am sorry, but you don't have enough money. Would you please get some more Zeny before coming back?"; + close; + } + if(MaxWeight - Weight < 71){ + next; + mes "[Aigie]"; + mes "Wait, wait!"; + mes "You can't possibly carry any more items. Why don't you put your things in Kafra Storage first?"; + } else { + Zeny = Zeny - .@cost; + tu_merchant = getarg(1); + getitem 501,10; //Red_Potion + } + close; + case 2: + mes "[Aigie]"; + mes "I understand."; + mes "But I hope you"; + mes "see that I'm offering"; + mes "you a really good price."; + mes "^666666*Sniff Sniff*^000000"; + close; + } } - + // Jayon //============================================================ -prontera,247,129,3 script Jayon 85,{ - if(tu_merchant == 8){ - mes "[Jayon]"; - mes "If you've checked out the market for Red Potions, you know that my price is the best. I'm offering 10 Red Potions for only 410 Zeny!"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Jayon]"; - mes "Heh heh...!"; - mes "It looks like"; - mes "you know your"; - mes "stuff. You're a"; - mes "Merchant yourself,"; - mes "aren't you?"; - if(Zeny < 410){ - next; - mes "[Jayon]"; - mes "But sorry buddy."; - mes "Rules are rules."; - mes "You gotta meet my price"; - mes "if you want these potions."; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Jayon]"; - mes "But sorry buddy. I can't let you carry more than you can handle."; - mes "You ought to free up some of your inventory space when you get the chance."; - close; - } else { - set Zeny, Zeny - 410; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Jayon]"; - mes "Just looking"; - mes "around, eh?"; - mes "I understand."; - mes "But you better take"; - mes "advantage of a real"; - mes "deal when you see one!"; - close; - } - } - - if(tu_merchant == 7){ - mes "[Jayon]"; - mes "If you've checked out the market for Red Potions, you know that my price is the best. I'm offering 10 Red Potions for only 400 Zeny!"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Jayon]"; - mes "Heh heh...!"; - mes "It looks like"; - mes "you know your"; - mes "stuff. You're a"; - mes "Merchant yourself,"; - mes "aren't you?"; - if(Zeny < 400){ - next; - mes "[Jayon]"; - mes "But sorry buddy."; - mes "Rules are rules."; - mes "You gotta meet my price"; - mes "if you want these potions."; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Jayon]"; - mes "But sorry buddy. I can't let you carry more than you can handle."; - mes "You ought to free up some of your inventory space when you get the chance."; - close; - } else { - set Zeny, Zeny - 400; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Jayon]"; - mes "Just looking"; - mes "around, eh?"; - mes "I understand."; - mes "But you better take"; - mes "advantage of a real"; - mes "deal when you see one!"; - close2; - end; - } - } - - if(tu_merchant == 6){ - mes "[Jayon]"; - mes "If you've checked out the market for Red Potions, you know that my price is the best. I'm offering 10 Red Potions for only 410 Zeny!"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Jayon]"; - mes "Heh heh...!"; - mes "It looks like"; - mes "you know your"; - mes "stuff. You're a"; - mes "Merchant yourself,"; - mes "aren't you?"; - if(Zeny < 410){ - next; - mes "[Jayon]"; - mes "But sorry buddy."; - mes "Rules are rules."; - mes "You gotta meet my price"; - mes "if you want these potions."; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Jayon]"; - mes "But sorry buddy. I can't let you carry more than you can handle."; - mes "You ought to free up some of your inventory space when you get the chance."; - close; - } else { - set Zeny, Zeny - 410; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Jayon]"; - mes "Just looking"; - mes "around, eh?"; - mes "I understand."; - mes "But you better take"; - mes "advantage of a real"; - mes "deal when you see one!"; - close; - } - } - +prontera,247,129,3 script Jayon 4_M_03,{ mes "[Jayon]"; + if (tu_merchant == 6) + callsub L_Potions, 410,10;// , + else if (tu_merchant == 7) + callsub L_Potions, 400,10; + else if (tu_merchant == 8) + callsub L_Potions, 410,10; mes "The Schwaltzvalt Republic..."; mes "It's a really interesting country. There's Juno and a few other places worth looking around. "; next; @@ -1265,118 +801,62 @@ prontera,247,129,3 script Jayon 85,{ mes "They may not be the best places"; mes "for sight seeing, but I'm sure they'll offer something of interest to you adventurers."; close; + +L_Potions: + .@cost = getarg(0); + mes "If you've checked out the market for Red Potions, you know that my price is the best. I'm offering 10 Red Potions for only "+ .@cost +" Zeny!"; + next; + switch(select("Buy:Cancel")){ + case 1: + mes "[Jayon]"; + mes "Heh heh...!"; + mes "It looks like"; + mes "you know your"; + mes "stuff. You're a"; + mes "Merchant yourself,"; + mes "aren't you?"; + if(Zeny < .@cost){ + next; + mes "[Jayon]"; + mes "But sorry buddy."; + mes "Rules are rules."; + mes "You gotta meet my price"; + mes "if you want these potions."; + close; + } + if(MaxWeight - Weight < 71){ + next; + mes "[Jayon]"; + mes "But sorry buddy. I can't let you carry more than you can handle."; + mes "You ought to free up some of your inventory space when you get the chance."; + } else { + Zeny = Zeny - .@cost; + tu_merchant = getarg(1); + getitem 501,10; //Red_Potion + } + close; + case 2: + mes "[Jayon]"; + mes "Just looking"; + mes "around, eh?"; + mes "I understand."; + mes "But you better take"; + mes "advantage of a real"; + mes "deal when you see one!"; + close; + } } // Maos //============================================================ -prt_in,251,129,3 script Maos 709,{ - if(tu_merchant == 8){ - mes "[Maos]"; - mes "Don't say anything."; - mes "I know what you want."; - mes "10 Red Potions, right?"; - mes "I'll sell them to you"; - mes "for the low price of 420 Zeny~"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Maos]"; - mes "Excellent choice!"; - mes "Good products at affordable prices! That's my ethic as a merchant."; - if(Zeny < 420){ - next; - mes "[Maos]"; - mes "Ooh, but you don't even have enough Zeny to purchase these potions. I'm sorry, but I can't sell these just to lose money, you know?"; - close; - } - if(MaxWeight - Weight < 71){ - next; - mes "[Maos]"; - mes "Ooh, but it doesn't look like you've got enough inventory space to carry any more items."; - close; - } else { - set Zeny, Zeny - 420; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Maos]"; - mes "Well, I can't force you to buy these, but I'm telling you that you're passing up a real bargain!"; - close; - } - } - if(tu_merchant == 7){ - mes "[Maos]"; - mes "Don't say anything."; - mes "I know what you want."; - mes "10 Red Potions, right?"; - mes "I'll sell them to you"; - mes "for the low price of 340 Zeny~"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Maos]"; - mes "Excellent choice!"; - mes "Good products at affordable prices! That's my ethic as a merchant."; - if(Zeny < 340){ - next; - mes "[Maos]"; - mes "Ooh, but you don't even have enough Zeny to purchase these potions. I'm sorry, but I can't sell these just to lose money, you know?"; - close; - } - if(MaxWeight - Weight < 71){ - mes "[Maos]"; - mes "Ooh, but it doesn't look like you've got enough inventory space to carry any more items."; - close; - } else { - set Zeny, Zeny - 340; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Maos]"; - mes "Well, I can't force you to buy these, but I'm telling you that you're passing up a real bargain!"; - close; - } - } - if(tu_merchant == 6){ - mes "[Maos]"; - mes "Don't say anything."; - mes "I know what you want."; - mes "10 Red Potions, right?"; - mes "I'll sell them to you"; - mes "for the low price of 400 Zeny~"; - next; - switch(select("Buy:Cancel")){ - case 1: - mes "[Maos]"; - mes "Excellent choice!"; - mes "Good products at affordable prices! That's my ethic as a merchant."; - if(Zeny < 400){ - next; - mes "[Maos]"; - mes "Ooh, but you don't even have enough Zeny to purchase these potions. I'm sorry, but I can't sell these just to lose money, you know?"; - close; - } - if(MaxWeight - Weight < 71){ - mes "[Maos]"; - mes "Ooh, but it doesn't look like you've got enough inventory space to carry any more items."; - close; - } else { - set Zeny, Zeny - 400; - set tu_merchant, 10; - getitem 501,10; //Red_Potion - close; - } - case 2: - mes "[Maos]"; - mes "Well, I can't force you to buy these, but I'm telling you that you're passing up a real bargain!"; - close; - } - } +prt_in,251,129,3 script Maos 4_M_SEAMAN,{ mes "[Maos]"; + if (tu_merchant == 6) + callsub L_Potions, 400,10;// , + else if (tu_merchant == 7) + callsub L_Potions, 340,10; + else if (tu_merchant == 8) + callsub L_Potions, 420,10; mes "I see too many people struggling to scrape every penny and put it all into their savings..."; next; mes "[Maos]"; @@ -1389,4 +869,39 @@ prt_in,251,129,3 script Maos 709,{ mes "when your time's up,"; mes "you know?"; close; + +L_Potions: + .@cost = getarg(0); + mes "Don't say anything."; + mes "I know what you want."; + mes "10 Red Potions, right?"; + mes "I'll sell them to you"; + mes "for the low price of "+ .@cost +" Zeny~"; + next; + switch(select("Buy:Cancel")){ + case 1: + mes "[Maos]"; + mes "Excellent choice!"; + mes "Good products at affordable prices! That's my ethic as a merchant."; + if(Zeny < .@cost){ + next; + mes "[Maos]"; + mes "Ooh, but you don't even have enough Zeny to purchase these potions. I'm sorry, but I can't sell these just to lose money, you know?"; + close; + } + if(MaxWeight - Weight < 71){ + next; + mes "[Maos]"; + mes "Ooh, but it doesn't look like you've got enough inventory space to carry any more items."; + } else { + Zeny = Zeny - .@cost; + tu_merchant = getarg(1); + getitem 501,10; //Red_Potion + } + close; + case 2: + mes "[Maos]"; + mes "Well, I can't force you to buy these, but I'm telling you that you're passing up a real bargain!"; + close; + } } diff --git a/npc/quests/first_class/tu_thief01.txt b/npc/quests/first_class/tu_thief01.txt index 71acf662b2..a0bbd7d7ab 100644 --- a/npc/quests/first_class/tu_thief01.txt +++ b/npc/quests/first_class/tu_thief01.txt @@ -1,26 +1,27 @@ -//===== rAthena Script ======================================= +//===== rAthena Script ======================================= //= Thief Class Tutorial and Job Specific Quest -//===== By: ================================================== +//===== By: ================================================== //= Fix up by Jukka -//===== Current Version: ===================================== -//= 1.5 -//===== Compatible With: ===================================== +//===== Current Version: ===================================== +//= 2.0 +//===== Compatible With: ===================================== //= rAthena Project -//===== Description: ========================================= +//===== Description: ========================================= //= [Official Conversion] //= Thief training quest. -//===== Additional Comments: ================================= +//===== Additional Comments: ================================= //= 1.0 Fully working //= 1.1 optimized [Lupus] //= 1.2 Fixed experience gains to match upcoming rate adjustments. [SinSloth] //= 1.3 Fixed a few minor mistakes [Playtester] //= 1.4 Misc. updates. [L0ne_W0lf] //= 1.5 Added Pre-Renewal support. [Euphy] -//============================================================ +//= 2.0 Fixed a wrong exp value & clean-up. [Capuche] +//============================================================ // Thief Trainer //============================================================ -moc_ruins,66,164,4 script Thief Trainer#T 84,{ +moc_ruins,66,164,4 script Thief Trainer#T 4_M_02,{ mes "[Yierhan]"; if(Class == Job_Novice){ mes "Eh...?"; @@ -34,22 +35,20 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "Listen, if you ever decide to become a Thief--a smart choice"; mes "I might add--come and talk to me. I'll show you the ropes!"; close; - - } else if(Class == Job_Thief || Class == Job_Thief_High || Class == Job_Assassin || Class ==Job_Assassin_Cross || Class == Job_Rogue || Class == Job_Stalker){ - if(Class == Job_Thief_High || Class == Job_Assassin || Class == Job_Assassin_Cross || Class == Job_Rogue || Class == Job_Stalker){ - if(tu_thief01 < 8){ - mes "Whaaaat are you"; - mes "doin' here? There's"; - mes "nothing I can teach you!"; - mes "You're waaay beyond me!"; - next; - mes "[Yierhan]"; - mes "In fact, I think"; - mes "you're qualified"; - mes "to teach me some stuff!"; - mes "Come on! I need new moves!"; - close; - } + } + else if (BaseClass == Job_Thief && Upper != 2) { + if (Class != Job_Thief && tu_thief01 < 8) { + mes "Whaaaat are you"; + mes "doin' here? There's"; + mes "nothing I can teach you!"; + mes "You're waaay beyond me!"; + next; + mes "[Yierhan]"; + mes "In fact, I think"; + mes "you're qualified"; + mes "to teach me some stuff!"; + mes "Come on! I need new moves!"; + close; } if(tu_thief01 == 0){ mes "Heya pal."; @@ -88,10 +87,8 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ next; mes "[Yierhan]"; mes "So if you're feeling like the damage you're making is pretty weak, you might want more stat points in ^2F4F2FSTR^000000. How high your raise your own STR is really up to you."; - set tu_thief01, 1; getexp 200,100; - specialeffect2 EF_HIT5; - close; + break; case 2: mes "[Yierhan]"; mes "Yeah, that's right! If you wanna increase your damage, you need"; @@ -104,10 +101,8 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "[Yierhan]"; mes "Sure, ^23238EDEX^000000 and LUK can"; mes "also increase your attack damage, but they're insignificant compared to STR. I repeat: ^660000insignificant^000000."; - set tu_thief01, 1; getexp 400,200; - specialeffect2 EF_HIT5; - close; + break; case 3: mes "[Yierhan]"; mes "Say whaaat? ^23238EDEX^000000 affects"; @@ -119,129 +114,131 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ next; mes "[Yierhan]"; mes "So if you're feeling like the damage you're making is pretty weak, you might want more stat points in ^2F4F2FSTR^000000. How high your raise your own STR is really up to you."; - set tu_thief01, 1; getexp 200,100; - specialeffect2 EF_HIT5; - close; } - } else if(tu_thief01 == 1){ + tu_thief01 = 1; + specialeffect2 EF_HIT5; + close; + } + else if(tu_thief01 == 1){ mes "Alright, enough about stats."; mes "You know what? I think I'll just talk to you about the skills that we Thieves use."; next; mes "[Yierhan]"; mes "So level up your skills, learn a few new ones if you want, and"; mes "then come back over here."; - set tu_thief01, 2; + tu_thief01 = 2; close; - } else if(tu_thief01 == 2){ + } + else if(tu_thief01 == 2){ mes "Okay, let me see your skills. You know you gotta change your battle strategy depending on what skills you have, right? Skills are just as important as stats!"; next; - set .@chk_th_skill1, getskilllv("TF_DOUBLE"); - set .@chk_th_skill2, getskilllv("TF_MISS"); - set .@chk_th_skill3, getskilllv("TF_STEAL"); - set .@chk_th_skill4, getskilllv("TF_HIDING"); - set .@chk_th_skill5, getskilllv("TF_POISON"); - set .@chk_th_skill6, getskilllv("TF_DETOXIFY"); + .@chk_th_skill1 = getskilllv("TF_DOUBLE"); + .@chk_th_skill2 = getskilllv("TF_MISS"); + .@chk_th_skill3 = getskilllv("TF_STEAL"); + .@chk_th_skill4 = getskilllv("TF_HIDING"); + .@chk_th_skill5 = getskilllv("TF_POISON"); + .@chk_th_skill6 = getskilllv("TF_DETOXIFY"); if(.@chk_th_skill1 == 0 && .@chk_th_skill2 == 0 && .@chk_th_skill3 == 0 && .@chk_th_skill4 == 0 && .@chk_th_skill5 == 0 && .@chk_th_skill6 == 0){ mes "[Yierhan]"; mes "You haven't learned any skills yet? Come on, it's your skills that'll set you apart from Novices and everyone else!"; close; - } else { - if(.@chk_th_skill1 > 0){ - mes "[Yierhan]"; - mes "Ah, so you've learned"; - mes "Level "+.@chk_th_skill1+" Double Attack."; - mes "Nice! This skill gives you the chance to attack twice in one"; - mes "attack. Wicked!"; - next; - mes "[Yierhan]"; - mes "It's a Passive skill, so it's always in effect and won't have to use any SP to use it. The higher your Double Attack skill level, the more double attacks you'll do."; - next; - } - if(.@chk_th_skill2 > 0){ - mes "[Yierhan]"; - mes "Let's see..."; - mes "Level "+.@chk_th_skill2+" Increase Dodge?"; - mes "That increases your Flee Rate, meaning you've got a better chance of dodging attacks from your enemies."; - next; - mes "[Yierhan]"; - mes "Just like the Double Attack skill, Increase Dodge is a Passive skill. It won't use SP and it's always in"; - mes "effect. If you don't like to bruise, this is your skill."; - next; - } - if(.@chk_th_skill3 > 0){ - mes "[Yierhan]"; - mes "Whoa, so you've"; - mes "got Level "+.@chk_th_skill3+" Steal~"; - mes "Now that's the skill which gives our job its name! You can't use"; - mes "it against people, though..."; - next; - mes "[Yierhan]"; - mes "But you can use Steal to take items from monsters. If you're lucky, you can get some good items that way. Oh, and Steal doesn't affect monster drop rates."; - next; - } - if(.@chk_th_skill4 > 0){ - mes "[Yierhan]"; - mes "You've learned"; - mes "Level "+.@chk_th_skill4+" Hiding?"; - mes "Let's see, you can only learn"; - mes "that after learning the Steal skill up to a certain level."; - next; - mes "[Yierhan]"; - mes "Of course, you use "; - mes "the Hiding skill to hide underground in an emergency, like when you're surrounded by tough enemies. Be careful though..."; - next; - mes "[Yierhan]"; - mes "Certain monsters will still be able to find you, no matter how well you hide. There are even a few monsters that can flush you out of hiding!"; - next; - } - if(.@chk_th_skill5 > 0){ - mes "[Yierhan]"; - mes "Alright, I see that you"; - mes "know Level "+.@chk_th_skill5+" Envenom."; - mes "You like being dangerous,"; - mes "don't you?"; - next; - mes "[Yierhan]"; - mes "This attack skill has the chance"; - mes "to poison your enemy for a set amount of time. While poisoned, an enemy will constantly lose its HP and will have decreased defense."; - next; - mes "[Yierhan]"; - mes "Eh, but remember."; - mes "If the monster's too strong for you, you might not be able to poison it. So don't go crazy."; - next; - } - if(.@chk_th_skill6 > 0){ - mes "[Yierhan]"; - mes "Level "+.@chk_th_skill6+" Detoxify."; - mes "If you took the trouble to learn that, you must be the cautious"; - mes "type or something."; - next; - mes "[Yierhan]"; - mes "You can only learn Detoxify"; - mes "after you learn the Envenom skill. Detoxify allows you to counteract the effects of poison on a target."; - next; - } + } + if(.@chk_th_skill1 > 0){ + mes "[Yierhan]"; + mes "Ah, so you've learned"; + mes "Level "+.@chk_th_skill1+" Double Attack."; + mes "Nice! This skill gives you the chance to attack twice in one"; + mes "attack. Wicked!"; + next; + mes "[Yierhan]"; + mes "It's a Passive skill, so it's always in effect and won't have to use any SP to use it. The higher your Double Attack skill level, the more double attacks you'll do."; + next; + } + if(.@chk_th_skill2 > 0){ + mes "[Yierhan]"; + mes "Let's see..."; + mes "Level "+.@chk_th_skill2+" Increase Dodge?"; + mes "That increases your Flee Rate, meaning you've got a better chance of dodging attacks from your enemies."; + next; + mes "[Yierhan]"; + mes "Just like the Double Attack skill, Increase Dodge is a Passive skill. It won't use SP and it's always in"; + mes "effect. If you don't like to bruise, this is your skill."; + next; + } + if(.@chk_th_skill3 > 0){ + mes "[Yierhan]"; + mes "Whoa, so you've"; + mes "got Level "+.@chk_th_skill3+" Steal~"; + mes "Now that's the skill which gives our job its name! You can't use"; + mes "it against people, though..."; + next; + mes "[Yierhan]"; + mes "But you can use Steal to take items from monsters. If you're lucky, you can get some good items that way. Oh, and Steal doesn't affect monster drop rates."; + next; + } + if(.@chk_th_skill4 > 0){ + mes "[Yierhan]"; + mes "You've learned"; + mes "Level "+.@chk_th_skill4+" Hiding?"; + mes "Let's see, you can only learn"; + mes "that after learning the Steal skill up to a certain level."; + next; + mes "[Yierhan]"; + mes "Of course, you use "; + mes "the Hiding skill to hide underground in an emergency, like when you're surrounded by tough enemies. Be careful though..."; + next; + mes "[Yierhan]"; + mes "Certain monsters will still be able to find you, no matter how well you hide. There are even a few monsters that can flush you out of hiding!"; + next; + } + if(.@chk_th_skill5 > 0){ + mes "[Yierhan]"; + mes "Alright, I see that you"; + mes "know Level "+.@chk_th_skill5+" Envenom."; + mes "You like being dangerous,"; + mes "don't you?"; + next; + mes "[Yierhan]"; + mes "This attack skill has the chance"; + mes "to poison your enemy for a set amount of time. While poisoned, an enemy will constantly lose its HP and will have decreased defense."; + next; + mes "[Yierhan]"; + mes "Eh, but remember."; + mes "If the monster's too strong for you, you might not be able to poison it. So don't go crazy."; + next; + } + if(.@chk_th_skill6 > 0){ + mes "[Yierhan]"; + mes "Level "+.@chk_th_skill6+" Detoxify."; + mes "If you took the trouble to learn that, you must be the cautious"; + mes "type or something."; + next; + mes "[Yierhan]"; + mes "You can only learn Detoxify"; + mes "after you learn the Envenom skill. Detoxify allows you to counteract the effects of poison on a target."; + next; } mes "[Yierhan]"; mes "Alright, I guess"; mes "if you want to know"; mes "about any other skills,"; mes "I can explain real quick."; - set tu_thief01, 3; + tu_thief01 = 3; getexp BaseLevel*30,BaseLevel*15; specialeffect2 EF_HIT5; close; - } else if(tu_thief01 == 3){ + } + else if(tu_thief01 == 3){ mes "So..."; mes "Are there any"; mes "skills you want"; mes "explained or is this"; mes "pretty much stuff you"; mes "already know?"; - next; while(1){ + next; switch(select("Double Attack:Increase Dodge:Steal:Hiding:Envenom:Detoxify:I know enough.")) { case 1: mes "[Yierhan]"; @@ -250,8 +247,7 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ next; mes "[Yierhan]"; mes "It's a Passive skill, so it's always in effect and won't have to use any SP to use it. The higher your Double Attack skill level, the more double attacks you'll do."; - set .@read_d, 1; - next; + .@read_d = 1; break; case 2: mes "[Yierhan]"; @@ -265,8 +261,7 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "[Yierhan]"; mes "Just like the Double Attack skill, Increase Dodge is a Passive skill. It won't use SP and it's always in"; mes "effect. If you don't like to bruise, this is your skill."; - set .@read_f, 1; - next; + .@read_f = 1; break; case 3: mes "[Yierhan]"; @@ -276,8 +271,7 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ specialeffect2 EF_STEAL; mes "[Yierhan]"; mes "But you can use Steal to take items from monsters! If you're lucky, you can get some good items that way. Oh, and Steal doesn't affect monster drop rates."; - set .@read_s, 1; - next; + .@read_s = 1; break; case 4: mes "[Yierhan]"; @@ -289,8 +283,7 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ next; mes "[Yierhan]"; mes "Certain monsters will still be able to find you, no matter how well you hide. There are even a few monsters that can flush you out of hiding!"; - set .@read_p, 1; - next; + .@read_p = 1; break; case 5: mes "[Yierhan]"; @@ -300,8 +293,7 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "This attack skill has the chance"; mes "to poison your enemy for a set amount of time. While poisoned, an enemy will constantly lose its HP and will have decreased defense."; mes "Remember that."; - set .@read_h, 1; - next; + .@read_h = 1; break; case 6: mes "[Yierhan]"; @@ -314,10 +306,9 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "[Yierhan]"; mes "You can learn Detoxify"; mes "after you learn the Envenom skill. Detoxify allows you to counteract the effects of poison on a target."; - set .@read_r, 1; + .@read_r = 1; next; specialeffect2 EF_DETOXICATION; - next; break; case 7: mes "[Yierhan]"; @@ -327,18 +318,16 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ next; mes "[Yierhan]"; mes "Now that you're such an expert on skills, I want you to level up your skills and come back, got it?"; - set tu_thief01, 4; + tu_thief01 = 4; specialeffect2 EF_HIT5; - if(.@read_d) getexp 300,100; - if(.@read_f) getexp 300,100; - if(.@read_s) getexp 300,100; - if(.@read_p) getexp 300,100; - if(.@read_h) getexp 300,100; - if(.@read_r) getexp 300,100; + .@total = .@read_d + .@read_f + .@read_s + .@read_p + .@read_h + .@read_r; + if (.@total) + getexp (.@total*300),(.@total*100); close; } } - } else if(tu_thief01 == 4){ + } + else if(tu_thief01 == 4){ mes "Alright, we studied the skills and you've been practicing a little, right? You better have..."; next; mes "[Yierhan]"; @@ -348,7 +337,7 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "Go and get me"; mes "10 ^ff0000Feather of Birds^000000."; mes "You can go ahead and kill Pickies to get those. It really shouldn't be that hard. Oh, and use this Wing thingee to come back."; - set tu_thief01, 5; + tu_thief01 = 5; savepoint "moc_ruins",80,164; getitem 602,1; //Wing_Of_Butterfly getexp 100,50; @@ -356,14 +345,16 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ close2; warp "moc_fild12",158,373; end; - } else if(tu_thief01 == 5 || tu_thief01 == 6){ + } + else if(tu_thief01 == 5 || tu_thief01 == 6){ if(countitem(916) < 10){ mes "'Ey, you don't have the 10 ^ff0000Feather of Birds^000000 I asked you for! You gotta apply what you know, you know."; mes "Now hurry up and do it!"; close2; warp "moc_fild07",203,38; end; - } else { + } + else { mes "Alright...!"; mes "Nice work, pal."; mes "Seeing as you got these feathers, you must be really gung-ho about becoming a good Thief."; @@ -407,7 +398,7 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "not to get too close"; mes "to the poison! That stuff"; mes "is pretty strong!"; - set tu_thief01, 8; + tu_thief01 = 8; getitem 1207,1; //Main_Gauche getexp 1000,500; specialeffect2 EF_HIT5; @@ -417,13 +408,14 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "Good!"; mes "Less work for me!"; mes "Alright, you better get stronger the next time I see you. Oh, and you can have this stuff. You know, since you're so gangster and all."; - set tu_thief01, 7; + tu_thief01 = 7; getitem 1207,1; //Main_Gauche getexp 500,200; specialeffect2 EF_HIT5; close; } - } else { + } + else { switch(select("It was nice to meet you.:Nope.")) { case 1: mes "[Yierhan]"; @@ -436,22 +428,24 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "you so much, kid,"; mes "you can have this."; mes "Take it, it's yours!"; + getexp 500,200; break; case 2: mes "[Yierhan]"; mes "Good!"; mes "Less work for me!"; mes "Alright, you better get stronger the next time I see you. Oh, and you can have this stuff. You know, since you're so gangster and all."; + getexp 50,20; break; } - set tu_thief01, 7; + tu_thief01 = 7; getitem 1207,1; //Main_Gauche - getexp 500,200; specialeffect2 EF_HIT5; close; } } - } else if(tu_thief01 == 7){ + } + else if(tu_thief01 == 7){ mes "[Yierhan]"; mes "You know..."; mes "There was this"; @@ -488,11 +482,12 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "decide to check it"; mes "out, be real careful"; mes "other there, okay?"; - set tu_thief01, 8; + tu_thief01 = 8; getexp 200,100; specialeffect2 EF_HIT5; close; - } else if(tu_thief01 == 8){ + } + else if(tu_thief01 == 8){ mes "Heya pal."; mes "You doin' alright?"; next; @@ -504,7 +499,8 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "It's a good policy to just be really careful on your adventures. Look out for monsters and look"; mes "out for people! Got it?"; close; - } else if(tu_thief01 < 26){ + } + else if(tu_thief01 < 26){ mes "I heard there was"; mes "this one Assassin"; mes "that went on a mission"; @@ -520,7 +516,8 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "Anyway, take"; mes "care of yourself."; close; - } else if(tu_thief01 == 26){ + } + else if(tu_thief01 == 26){ mes "'Ey, did you"; mes "complete your mission?"; mes "I know, I know, the thing you've gotta do is pretty rough."; @@ -570,13 +567,14 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ next; mes "[Yierhan]"; mes "Hey, this stuff is yours. Think of it as a reward for helping us out. Take care of yourself now~"; - set tu_thief01, 27; + tu_thief01 = 27; getitem 2307,1; //Mantle - set Zeny, Zeny + 5000; + Zeny = Zeny + 5000; getexp 8000,3000; close; } - } else { + } + else { mes "[Yierhan]"; mes "Hey..."; mes "You got dreams,"; @@ -589,7 +587,8 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "I just like telling people to follow their dreams. So do it. Life without anything to look forward to is pretty boring, doncha think?"; close; } - } else if(Class == Job_Mage || Class == Job_Mage_High || Class == Job_Wizard || Class == Job_High_Wizard || Class == Job_Sage || Class == Job_Professor){ + } + else if (BaseClass == Job_Mage && Upper != 2){ if(tu_magician01 < 7){ mes "[Yierhan]"; mes "Heya."; @@ -599,31 +598,31 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "I actually got a few magic using friends here and there. That mystic stuff is waaay over my head, but"; mes "I got a lotta respect for it."; close; - } else if(tu_magician01 == 7){ + } + else if(tu_magician01 == 7){ mes "Hm...?"; mes "That's weird, usually only"; mes "Thieves hang around this joint. What's someone like you doing"; mes "here? Unless..."; next; - switch(select("I'm here on behalf of 'Mana.'")) { - case 1: - mes "[Yierhan]"; - mes "Right, you must be the help that Mana sent! You came just at the right time. You see, we found something weird in South Morroc."; - next; - mes "[Yierhan]"; - mes "Basically, we found traces of poison that were used in a fight. We were going to investigate it, but we've been swamped with all this other work."; - next; - mes "[Yierhan]"; - mes "That's why we've been asking"; - mes "for help from the Mage Guild. Fortunately, I'm pals with Mana, so..."; - next; - mes "[Yierhan]"; - mes "Anyway, head over to"; - mes "South Morroc since it seems to be a good place to start investigating. You'll see what we found right outside the South Morroc gate."; - set tu_magician01, 8; - break; - } - } else if(tu_magician01 < 26){ + select("I'm here on behalf of 'Mana.'"); + mes "[Yierhan]"; + mes "Right, you must be the help that Mana sent! You came just at the right time. You see, we found something weird in South Morroc."; + next; + mes "[Yierhan]"; + mes "Basically, we found traces of poison that were used in a fight. We were going to investigate it, but we've been swamped with all this other work."; + next; + mes "[Yierhan]"; + mes "That's why we've been asking"; + mes "for help from the Mage Guild. Fortunately, I'm pals with Mana, so..."; + next; + mes "[Yierhan]"; + mes "Anyway, head over to"; + mes "South Morroc since it seems to be a good place to start investigating. You'll see what we found right outside the South Morroc gate."; + tu_magician01 = 8; + close; + } + else if(tu_magician01 < 26){ mes "I heard there was"; mes "this one Assassin"; mes "that went on a mission"; @@ -641,7 +640,8 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ mes "might be related to"; mes "that mysterious Assassin..."; close; - } else if(tu_magician01 == 26){ + } + else if(tu_magician01 == 26){ mes "So how's the"; mes "investigation"; mes "coming along?"; @@ -694,12 +694,13 @@ moc_ruins,66,164,4 script Thief Trainer#T 84,{ next; mes "[Yierhan]"; mes "Hey, this stuff is yours. Think of it as a reward for helping us out. Right, and I'll let Mana know you did a great job. Take care of yourself now~"; - set tu_magician01, 27; - set Zeny, Zeny + 5000; + tu_magician01 = 27; + Zeny = Zeny + 5000; getexp 5000,2000; close; } - } else { + } + else { mes "Just as I thought,"; mes "more than one group"; mes "was involved in all this.";