From b7a88442cefed36b81f80139310061fed10527e1 Mon Sep 17 00:00:00 2001 From: masao87 Date: Sat, 4 Aug 2012 21:45:50 +0000 Subject: - Here comes the big Job folder Update. * Updated all 1-1, 2-1, 2-2 and the expanded files to the latest available official files and also added support for baby job change. * There might be some optimizations still needed at some places and there maybe occur some errors as well or the job change isn't fully working anymore since I didn't test all the jobs through the end (Me = Lazy), if so then please fill out a bug report in our bug tracker: http://rathena.org/board/tracker/project-4-scripts/ * Ninja, Gunslinger and the other files will follow within the next days. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16579 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/pre-re/jobs/1-1/archer.txt | 245 ++++++++++++----------------------------- 1 file changed, 70 insertions(+), 175 deletions(-) (limited to 'npc/pre-re/jobs/1-1/archer.txt') diff --git a/npc/pre-re/jobs/1-1/archer.txt b/npc/pre-re/jobs/1-1/archer.txt index 754d874cf..c51a080bd 100644 --- a/npc/pre-re/jobs/1-1/archer.txt +++ b/npc/pre-re/jobs/1-1/archer.txt @@ -1,36 +1,22 @@ //===== rAthena Script ======================================= -//= Archer Job Quest +//= Renewal Archer Job Change //===== By: ================================================== -//= kobra_k88; L0ne_W0lf +//= Kisuka //===== Current Version: ===================================== -//= 1.9 +//= 1.1 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= -//= [Aegis Conversion] -//= Job quest for Archer classes +//= Job Change to Archer Class //===== Additional Comments: ================================= -//= Fully working -//= v1.1 Added instant job change for High Novice [Lupus] -//= v1.3 Added Baby Class support [Lupus] -//= v1.4 Optimised and moved first checker to Jfunc1-1 [massdriller] -//= 1.5 Now saves/restores all quest skills [Lupus] -//= 1.6 Merged back JFunc [Lupus] -//= 1.7 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf] -//= Arrow reward is now equal to the type sof trunks brought. -//= No longer uses function "F_ToHigh" -//= 1.7a Fixed minor dialogue bug at Grade==25 [Lupus] -//= 1.8 Fixed mistake in condition check. [L0ne_W0lf] -//= 1.9 Added Quest Log commands. [L0ne_W0lf] +//= 1.0 First Version. [Kisuka] +//= 1.1 Added Baby job change support. [Masao] //============================================================ - -payon_in02,64,71,4 script Archer Guildsman#archer 85,{ +payon_in02,64,71,4 script Archer Guildsman 85,{ if (Upper == 1) { - if (Class == Job_Novice_High && (ADVJOB == Job_Sniper || ADVJOB == Job_Clown || ADVJOB == Job_Gypsy)) { + if ((Class == Job_Novice_High) && (FJOB == Job_Ranger || FJOB == Job_Minstrel || FJOB == Job_Wanderer)) { mes "[Archer Guildsman]"; mes "Hey, I know you."; - mes "You took this test"; - mes "before, didn't you?"; next; mes "[Archer Guildsman]"; mes "Ah, you must have been"; @@ -51,7 +37,7 @@ payon_in02,64,71,4 script Archer Guildsman#archer 85,{ mes "need to say anything else."; mes "I know you'll make a great Archer..."; next; - skill 143,0,0; + skill 143,0,1; jobchange Job_Archer_high; skill 147,1,0; skill 148,1,0; @@ -60,187 +46,96 @@ payon_in02,64,71,4 script Archer Guildsman#archer 85,{ mes "reward for you this time, I hope you understand. Take care of yourself."; close; } - else { - mes "[Archer Guildsman]"; - mes "Oh...?"; - mes "Hey, what are"; - mes "you doing here...?"; - next; - mes "[Archer Guildsman]"; - mes "I can tell that you're not cut out to be an Archer. It sort of feels like you're meant to do"; - mes "something else..."; - close; - } + mes "[Archer Guildsman]"; + mes "Oh...?"; + mes "Hey, what are"; + mes "you doing here...?"; + next; + mes "[Archer Guildsman]"; + mes "I can tell that you're not cut out to be an Archer. It sort of feels like you're meant to do"; + mes "something else..."; + close; } mes "[Archer Guildsman]"; - mes "Good day. How may I help you?"; + mes "Nice to meet you. How may I help you?"; next; - switch(select("I want to be an Archer.:I need the requirements, please.:Nothing, thanks.")) { + switch (select("I want to be an Archer.:I need the requirements, please.:Nothing, thanks.")) { case 1: - if (BaseJob == Job_Archer) { - mes "[Archer Guildsman]"; - mes "You've already become an Archer..."; - close; - } - else if (BaseJob != Job_Archer && BaseJob != Job_Novice) { - mes "[Archer Guildsman]"; - mes "Hmm..."; - mes "You don't look much like a Novice at all..."; - next; - mes "[Archer Guildsman]"; - mes "Anyway, whatever you are, you can't choose a job as an Archer because you have a job already."; - close; - } - if (job_archer_q == 0) { + if (Class == Job_Baby || Class == Job_Novice) { mes "[Archer Guildsman]"; - mes "Do you want to be an Archer?"; - mes "If so, you need to fill out this application form."; + mes "You are..." + strcharinfo(0) + " right?"; next; - if (select("Apply.:Cancel") == 1) { - set job_archer_q,1; - setquest 1004; + if (getskilllv("NV_BASIC") < 9) { mes "[Archer Guildsman]"; - mes "Okay, sign here. Alright, um, I'll promote you once you meet the requirements."; + mes "Well, you don't have the right skill level. "; + mes "Your job level must be at least ^4d4dff10^000000"; + mes "and your Basic Skill level should reach ^4d4dfflevel 9^000000"; next; mes "[Archer Guildsman]"; - mes "If you think you've met them already, we can check that now."; - mes "Are you ready?"; - next; - if (select("Yes, I am.:No, not yet.") == 1) { - mes "[Archer Guildsman]"; - mes "Alright, let me check."; - next; - } - else { - mes "[Archer Guildsman]"; - mes "I understand. Be my guest if you want to look at the requirements."; - close; - } + mes "Because an Archer needs"; + mes "extremely high concentration,"; + mes "so we do not accept "; + mes "those who have little patience."; + close2; } mes "[Archer Guildsman]"; - mes "Well, alright."; - mes "See you next time."; - close; - } - mes "[Archer Guildsman]"; - mes "Are you..." + strcharinfo(0) + "?"; - next; - if (getskilllv("NV_BASIC") < 9) { + mes "You seem to have learned the basic skills.."; + mes "....Hm~~ you are now ready to become an Archer. I will take the step right away."; + next; + skill 143,0,1; + if(Class == Job_Baby){ + jobchange Job_Baby_Archer; + } else { + jobchange Job_Archer; + } mes "[Archer Guildsman]"; - mes "Well, you're not at the right job level. Please check the requirements again."; + mes "Congratulations! You are now an Archer! Also, we hope that you actively participate in many programs for the revival of the Archer Guild."; + mes "Ah, items have arrived from the Production Department. Here, take these! These are all yours!"; + getitem 1742,1; //N_Composite_Bow + getitem 12004,1; //Arrow_Container + getitem 12009,1; //Silver_Arrow_Container + getitem 12008,1; //Fire_Arrow_Container next; mes "[Archer Guildsman]"; - mes "Your job level must be at least 10, and don't forget you should learn all of the Basic Skills. Once you've done that, come back."; + mes "Having a bow and arrows, now you've become a real Archer."; + mes "If you open the arrow quiver, there will be arrows in it that you can equip."; + mes "Well, I expect to hear good news from you. It's time to say goodbye. Bye."; close; } - if (job_archer_q == 1) { - set .@archer_item1,countitem(1066) * 5; - set .@archer_item2,countitem(1067) * 3; - set .@archer_item3,countitem(1068) * 2; - set .@archer_item4,countitem(1019); - set .@total_archer,.@archer_item1 + .@archer_item2 + .@archer_item3 + .@archer_item4; - set .@total_archer2,(((.@archer_item2 + .@archer_item3) * 2) + .@archer_item4); - mes "[Archer Guildsman]"; - mes "Excellent!"; - mes "Now then,"; - mes "let's see..."; - next; + if (Class == Job_Baby_Archer || Class == Job_Archer || Class == Job_Archer_High) { mes "[Archer Guildsman]"; - mes "I will appraise the value of the various types of Trunks, needed to produce a Bow, that you've brought."; - next; - if (countitem(1066) == 0 && countitem(1067) == 0 && countitem(1068) == 0 && countitem(1019) == 0) { - mes "[Archer Guildsman]"; - mes "Um..."; - mes "Unfortunately you didn't bring any of the required items. There's nothing for me to appraise."; - close; - } - mes "[Archer Guildsman]"; - if (countitem(1066) != 0) mes " Grade S : " + countitem(1066) + " ea, Grade: " + .@archer_item1 + " . "; - if (countitem(1067) != 0) mes " Grade A : " + countitem(1067) + " ea, Grade : " + .@archer_item2 + " . "; - if (countitem(1068) != 0) mes " Grade B : " + countitem(1068) + " ea, Grade : " + .@archer_item3 + " . "; - if (countitem(1019) != 0) mes " Grade C : " + countitem(1019) + " ea, Grade : " + .@archer_item4 + " . "; - if (.@total_archer < 25) { - mes "Total Grades: ^FF0000" + .@total_archer + "^000000 / 40"; - next; - mes "[Archer Guildsman]"; - mes "Less than 25!? You have to get a grade of at least 25! Come on, try harder!"; - close; - } - else { - mes "Total Grades: ^0000FF" + .@total_archer + "^000000 / 40"; - next; - mes "[Archer Guildsman]"; - if (.@total_archer > 40) { - mes "Wow! More than 40!"; - mes "Excellent! Congratulations!"; - } - else if (.@total_archer > 30) { - mes "More than 30! Nice job!"; - mes "Congratulations!"; - } - else { - mes "*Sigh* Well, you just barely passed... Anyway, well done."; - } - } - next; - mes "[Archer Guildsman]"; - mes "I'll transfer these Trunks to our Bow Production Department. Now that you've met the requirements, let me promote you right away!"; - if (countitem(1066) != 0) delitem 1066,countitem(1066); //Tree_Of_Archer_1 - if (countitem(1067) != 0) delitem 1067,countitem(1067); //Tree_Of_Archer_2 - if (countitem(1068) != 0) delitem 1068,countitem(1068); //Tree_Of_Archer_3 - if (countitem(1019) != 0) delitem 1019,countitem(1019); //Wooden_Block + mes "Haha, you are kidding me.."; + close; } - next; - callfunc "Job_Change",Job_Archer; - callfunc "F_ClearJobVar"; - completequest 1004; - mes "[Archer Guildsman]"; - mes "Congratulations!"; - mes "You are now an Archer!"; - next; mes "[Archer Guildsman]"; - mes "Of course, we expect that you will help contribute towards the future of the Archer Guild with your efforts."; - next; - mes "[Archer Guildsman]"; - mes "Ah, your bow has arrived from the Bow Production Department. Here, take it! It's yours~"; - getitem 1702,1; //Bow_ - getitem 1750,.@total_archer2; //Arrow - next; - mes "[Archer Guildsman]"; - mes "Now, off you go. Hunt with pride, knowing you were trained by one of the best!"; + mes "Wait a second. You've chosen a different job already. You don't need to know this~"; close; case 2: mes "[Archer Guildsman]"; - mes "I will explain the requirements for being an Archer."; - if (BaseJob != Job_Novice) { - if (BaseJob == Job_Archer) { - next; - mes "[Archer Guildsman]"; - mes "But..."; - mes "You're already an Archer. You should know these already..."; - } - else { - next; - mes "[Archer Guildsman]"; - mes "Wait a second. You've chosen a different job already. You don't need to know this~"; - } - mes "So...Yeah...no real reason to tell you the requirements..."; - } - next; - mes "[Archer Guildsman]"; - mes "First of all, you have to the Job Level 9 as a Novice, and know all of the Basic Skills."; + mes "An Archer has skills using a bow and has various talents."; + mes "The greatest ability of an Archer is attacking enemies from a long distance."; next; mes "[Archer Guildsman]"; - mes "An Archer needs extremely high concentration and reflexes, so we do not accept those who have little patience."; + mes "Although an Archer has weaker HP,"; + mes "he or she can shoot enemies"; + mes "at a long range,"; + mes "so an Archer is safer in a real battle."; next; mes "[Archer Guildsman]"; - mes "You also have to gather ^FF0000Trunks^000000. There are 4 different types of Trunks, each of differing quality. You'll be given different grades for your Trunks, depending on their quality."; + mes "Although an Archer in Ragnarok has lower HP,"; + mes "he or she has high accuracy and attack rate"; + mes "so that the archer can kill monsters"; + mes "before they get close to an Archer."; next; mes "[Archer Guildsman]"; - mes "In order to become an Archer, you must receive a grade of at least ^0000FF25^000000 points out of 40. You can get Trunks from 'Willow,' the tree. Be careful, though. They can be tough monsters."; + mes "^8E2323An Archer can change"; + mes "^8E2323jobs to a Hunter."; + mes "^8E2323Other than Hunter, if you are a man, you can change your job to Bard"; + mes "^8E2323and if you are a woman, you can change your job to Dancer.^000000"; close; case 3: + mes "[Archer Guildsman]"; + mes "If you have any questions, feel free to come and ask me."; close; } -} - +} \ No newline at end of file -- cgit v1.2.3-70-g09d2