//================= Hercules Script ======================================= //= _ _ _ //= | | | | | | //= | |_| | ___ _ __ ___ _ _| | ___ ___ //= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| //= | | | | __/ | | (__| |_| | | __/\__ \ //= \_| |_/\___|_| \___|\__,_|_|\___||___/ //================= License =============================================== //= This file is part of Hercules. //= http://herc.ws - http://github.com/HerculesWS/Hercules //= //= Copyright (C) 2012-2015 Hercules Dev Team //= Copyright (C) massdriller //= Copyright (C) Lupus //= Copyright (C) L0ne_W0lf //= Copyright (C) kobra_k88 //= //= Hercules is free software: you can redistribute it and/or modify //= it under the terms of the GNU General Public License as published by //= the Free Software Foundation, either version 3 of the License, or //= (at your option) any later version. //= //= This program is distributed in the hope that it will be useful, //= but WITHOUT ANY WARRANTY; without even the implied warranty of //= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //= GNU General Public License for more details. //= //= You should have received a copy of the GNU General Public License //= along with this program. If not, see . //========================================================================= //= Archer Job Quest (Pre-Renewal) //================= Description =========================================== //= Job quest for Archer classes //================= Current Version ======================================= //= 1.9 //========================================================================= payon_in02,64,71,4 script Archer Guildsman#archer 4_M_03,{ if (Upper == 1) { 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"; mes "to Valhalla and been reborn."; mes "Wow, that's so impressive!"; next; if (getskilllv("NV_BASIC") < 9) { mes "[Archer Guildsman]"; mes "Err..."; mes "You'd better learn all the Basic Skills first before you can become an Archer."; next; mes "[Archer Guildsman]"; mes "Alright, see you later."; close; } mes "[Archer Guildsman]"; mes "Well then. I don't"; mes "need to say anything else."; mes "I know you'll make a great Archer..."; next; skill 143,0,0; jobchange Job_Archer_High; skill 147,1,0; skill 148,1,0; mes "[Archer Guildsman]"; mes "Although there's no special"; 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 "Good day. How may I help you?"; next; 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) { 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) { job_archer_q = 1; setquest 1004; mes "[Archer Guildsman]"; mes "Okay, sign here. Alright, um, I'll promote you once you meet the requirements."; 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 "[Archer Guildsman]"; mes "Well, alright."; mes "See you next time."; close; } mes "[Archer Guildsman]"; mes "Are you..." + strcharinfo(PC_NAME) + "?"; next; if (getskilllv("NV_BASIC") < 9) { mes "[Archer Guildsman]"; mes "Well, you're not at the right job level. Please check the requirements again."; 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."; close; } if (job_archer_q == 1) { .@archer_item1 = countitem(Tree_Of_Archer_1) * 5; .@archer_item2 = countitem(Tree_Of_Archer_2) * 3; .@archer_item3 = countitem(Tree_Of_Archer_3) * 2; .@archer_item4 = countitem(Wooden_Block); .@total_archer = .@archer_item1 + .@archer_item2 + .@archer_item3 + .@archer_item4; .@total_archer2 = (((.@archer_item2 + .@archer_item3) * 2) + .@archer_item4); mes "[Archer Guildsman]"; 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(Tree_Of_Archer_1) == 0 && countitem(Tree_Of_Archer_2) == 0 && countitem(Tree_Of_Archer_3) == 0 && countitem(Wooden_Block) == 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(Tree_Of_Archer_1) != 0) mes " Grade S : " + countitem(Tree_Of_Archer_1) + " ea, Grade: " + .@archer_item1 + " . "; if (countitem(Tree_Of_Archer_2) != 0) mes " Grade A : " + countitem(Tree_Of_Archer_2) + " ea, Grade : " + .@archer_item2 + " . "; if (countitem(Tree_Of_Archer_3) != 0) mes " Grade B : " + countitem(Tree_Of_Archer_3) + " ea, Grade : " + .@archer_item3 + " . "; if (countitem(Wooden_Block) != 0) mes " Grade C : " + countitem(Wooden_Block) + " 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(Tree_Of_Archer_1) != 0) delitem Tree_Of_Archer_1,countitem(Tree_Of_Archer_1); if (countitem(Tree_Of_Archer_2) != 0) delitem Tree_Of_Archer_2,countitem(Tree_Of_Archer_2); if (countitem(Tree_Of_Archer_3) != 0) delitem Tree_Of_Archer_3,countitem(Tree_Of_Archer_3); if (countitem(Wooden_Block) != 0) delitem Wooden_Block,countitem(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 Bow_,1; getitem Arrow,.@total_archer2; next; mes "[Archer Guildsman]"; mes "Now, off you go. Hunt with pride, knowing you were trained by one of the best!"; 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."; next; mes "[Archer Guildsman]"; mes "An Archer needs extremely high concentration and reflexes, so we do not accept those who have little patience."; 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."; 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: close; } }