diff options
author | euphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-08-10 18:45:05 +0000 |
---|---|---|
committer | euphyy <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-08-10 18:45:05 +0000 |
commit | ba0a75439b5373c038f5712f57d46cd2f7de794d (patch) | |
tree | 8d60bd2a0ebaf74d243c8106974c45650fe72175 /npc/pre-re/jobs/1-1/archer.txt | |
parent | 28f1659e6cfaf6fbb04147f88d23f63dfce28867 (diff) | |
download | hercules-ba0a75439b5373c038f5712f57d46cd2f7de794d.tar.gz hercules-ba0a75439b5373c038f5712f57d46cd2f7de794d.tar.bz2 hercules-ba0a75439b5373c038f5712f57d46cd2f7de794d.tar.xz hercules-ba0a75439b5373c038f5712f57d46cd2f7de794d.zip |
* Raw revert of all job files back to r16578, prior to the rewrite in r16579. The updates will be re-applied after more testing is done.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16621 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'npc/pre-re/jobs/1-1/archer.txt')
-rw-r--r-- | npc/pre-re/jobs/1-1/archer.txt | 245 |
1 files changed, 175 insertions, 70 deletions
diff --git a/npc/pre-re/jobs/1-1/archer.txt b/npc/pre-re/jobs/1-1/archer.txt index 985b6c0f8..754d874cf 100644 --- a/npc/pre-re/jobs/1-1/archer.txt +++ b/npc/pre-re/jobs/1-1/archer.txt @@ -1,22 +1,36 @@ //===== rAthena Script ======================================= -//= Renewal Archer Job Change +//= Archer Job Quest //===== By: ================================================== -//= Kisuka +//= kobra_k88; L0ne_W0lf //===== Current Version: ===================================== -//= 1.1 +//= 1.9 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= -//= Job Change to Archer Class +//= [Aegis Conversion] +//= Job quest for Archer classes //===== Additional Comments: ================================= -//= 1.0 First Version. [Kisuka] -//= 1.1 Added Baby job change support. [Masao] +//= 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] //============================================================ -payon_in02,64,71,4 script Archer Guildsman 85,{ + +payon_in02,64,71,4 script Archer Guildsman#archer 85,{ if (Upper == 1) { - if ((Class == Job_Novice_High) && (ADVJOB == Job_Sniper || ADVJOB == Job_Clown || ADVJOB == Job_Gypsy)) { + if (Class == Job_Novice_High && (ADVJOB == Job_Sniper || ADVJOB == Job_Clown || ADVJOB == Job_Gypsy)) { 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"; @@ -37,7 +51,7 @@ payon_in02,64,71,4 script Archer Guildsman 85,{ mes "need to say anything else."; mes "I know you'll make a great Archer..."; next; - skill 143,0,1; + skill 143,0,0; jobchange Job_Archer_high; skill 147,1,0; skill 148,1,0; @@ -46,96 +60,187 @@ payon_in02,64,71,4 script Archer Guildsman 85,{ mes "reward for you this time, I hope you understand. Take care of yourself."; 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; + 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 "Nice to meet you. How may I help you?"; + mes "Good day. 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 (Class == Job_Baby || Class == Job_Novice) { + 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 "You are..." + strcharinfo(0) + " right?"; + mes "Hmm..."; + mes "You don't look much like a Novice at all..."; next; - if (getskilllv("NV_BASIC") < 9) { + 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) { + mes "[Archer Guildsman]"; + mes "Do you want to be an Archer?"; + mes "If so, you need to fill out this application form."; + next; + if (select("Apply.:Cancel") == 1) { + set job_archer_q,1; + setquest 1004; mes "[Archer Guildsman]"; - 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"; + mes "Okay, sign here. Alright, um, I'll promote you once you meet the requirements."; next; mes "[Archer Guildsman]"; - mes "Because an Archer needs"; - mes "extremely high concentration,"; - mes "so we do not accept "; - mes "those who have little patience."; - close; + 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 "[Archer Guildsman]"; - 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 "Well, alright."; + mes "See you next time."; + close; + } + mes "[Archer Guildsman]"; + mes "Are you..." + strcharinfo(0) + "?"; + next; + if (getskilllv("NV_BASIC") < 9) { mes "[Archer Guildsman]"; - 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 + mes "Well, you're not at the right job level. Please check the requirements again."; next; mes "[Archer Guildsman]"; - 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."; + 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."; close; } - if (Class == Job_Baby_Archer || Class == Job_Archer || Class == Job_Archer_High) { + 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 "Haha, you are kidding me.."; - close; + mes "Excellent!"; + mes "Now then,"; + mes "let's see..."; + next; + 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 } + 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 "Wait a second. You've chosen a different job already. You don't need to know this~"; + mes "Now, off you go. Hunt with pride, knowing you were trained by one of the best!"; close; case 2: mes "[Archer Guildsman]"; - 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."; + 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 "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."; + mes "First of all, you have to the Job Level 9 as a Novice, and know all of the Basic Skills."; next; mes "[Archer Guildsman]"; - 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."; + mes "An Archer needs extremely high concentration and reflexes, so we do not accept those who have little patience."; next; mes "[Archer Guildsman]"; - 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"; + 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."; + 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."; 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 +} + |