summaryrefslogtreecommitdiff
path: root/npc/jobs/Jfunc
diff options
context:
space:
mode:
authorValaris <Valaris@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-01-29 16:10:48 +0000
committerValaris <Valaris@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-01-29 16:10:48 +0000
commit620e60eebce2c1f35c5c9a82f6ca365b316587f5 (patch)
tree38a39e0415f419d9a49ae456ed0e26654c23d559 /npc/jobs/Jfunc
parenta2675f07d7da22a7c6ae11f545bf8f671e785a82 (diff)
downloadhercules-620e60eebce2c1f35c5c9a82f6ca365b316587f5.tar.gz
hercules-620e60eebce2c1f35c5c9a82f6ca365b316587f5.tar.bz2
hercules-620e60eebce2c1f35c5c9a82f6ca365b316587f5.tar.xz
hercules-620e60eebce2c1f35c5c9a82f6ca365b316587f5.zip
AS OF SVN REV. 5901, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. EVERYTHING ELSE GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@5094 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'npc/jobs/Jfunc')
-rw-r--r--npc/jobs/Jfunc/Jfunc1-1.txt248
-rw-r--r--npc/jobs/Jfunc/Jfunc2-1.txt385
-rw-r--r--npc/jobs/Jfunc/Jfunc2-2.txt236
3 files changed, 869 insertions, 0 deletions
diff --git a/npc/jobs/Jfunc/Jfunc1-1.txt b/npc/jobs/Jfunc/Jfunc1-1.txt
new file mode 100644
index 000000000..4628aedd2
--- /dev/null
+++ b/npc/jobs/Jfunc/Jfunc1-1.txt
@@ -0,0 +1,248 @@
+//===== eAthena Script =======================================
+//= Global Job Function
+//===== By: ==================================================
+//= massdriller
+//===== Current Version: =====================================
+//= 0.2
+//===== Compatible With: =====================================
+//= eAthena 1.0 +
+//===== Description: =========================================
+//= Optimised scripts by moving all their checkers here.
+//===== Additional Comments: =================================
+//= For 1-1 Jobs
+//= Simplified Job Checks [Silentdragon]
+//============================================================
+
+//Acolyte Check
+
+function script Aco_check {
+ if(BaseJob == Job_Acolyte) goto JobAco;
+ if(BaseJob != Job_Novice) goto NotNov;
+ if(JobLevel < 10) goto JobLess10;
+ return;
+
+ JobAco:
+ mes "Are you feeling okay?....";
+ emotion 20;
+ next;
+ mes "[Father Mareusis]";
+ mes "...your attire...";
+ next;
+ mes "[Father Mareusis]";
+ mes "You're already are an Acolyte.....";
+ next;
+ mes "[Father Mareusis]";
+ mes "You are not joking with me, are you? Hoho!!..kids these days.";
+ emotion 18;
+ close;
+
+
+ NotNov:
+ mes "I am sorry child. You have already devoted your life to another profession. I am afraid that you will no longer be able to devote it to God.";
+ close;
+
+
+ JobLess10:
+ mes "My child you do not yet possess the necessary skills to serve the lord.";
+ mes "Please come back when your faith in God has become stronger";
+ next;
+ mes "[Father Mareusis]";
+ mes "May God bless you.";
+ close;
+
+}
+
+//Archer Check
+
+function script Arc_check {
+
+ if(BaseJob == Job_Archer) goto sL_Archer;
+ if(BaseJob != Job_Novice) goto sL_Other;
+ mes "You have made an execellent job choice.";
+ mes "Please submit your resume so that I can check your qualifications.";
+ next;
+ mes "(You hand over your resume)";
+ next;
+ mes "[Archer Guildsman]";
+ if(JobLevel < 10) goto sL_LowLvl;
+ set job_archer_q,1;
+ return;
+
+ sL_Archer:
+ mes "Your free spirited nature tells me that you're already an archer....that and the bow and arrow in your hands...Haha";
+ emotion 18;
+ close;
+
+
+ sL_Other:
+ mes "I'm sorry but you cannot leave your current job to become an Archer...though I can understand why you would want to do so.";
+ close;
+
+
+ sL_LowLvl:
+ mes "It seems that you are not qualified to become an Archer yet. Please take a look at the job requirments once more.";
+ close;
+
+
+}
+
+//mage Check
+function script Mag_check {
+
+ if(BaseJob == 2) goto L_JobMage;
+ if(BaseJob != 0) goto L_JobOther;
+ mes "Okays, just fill out this application form pleeassse.";
+ next;
+ mes "(you fill out the form and hand it back to her)";
+ next;
+ mes "[Expert Mage]";
+ if(JobLevel < 10) goto L_JobLvl;
+ mes "Oooh~ You have very nice hand writing ^0000dd"+ strcharinfo(0) +"^000000, and more importantly you have met the necessary prerequisites to become a mage.";
+ next;
+ mes "[Expert Mage]";
+ return;
+
+ L_JobMage:
+ mes "You should really get yourself a mirror. Then you could see that you are ^ff0000already a Mage^000000.";
+ mes "It may even help you fix up your hair do.";
+ emotion 4;
+ close;
+
+
+ L_JobOther:
+ mes "Oh...I'm sorry. I know they say 2 is always better than 1, but when it comes to Jobs, it's a No No.";
+ mes "Try to stay positive. Your current job can't be that bad.";
+ emotion 22;
+ close;
+
+
+ L_JobLvl:
+ mes "Oh...I'm sorry. You need ^ff0000Job level 9^000000 and all of the ^0000ffBasic Skills^000000 before you can become a Mage.";
+ mes "Go out and kill some more Fabres okays.";
+ emotion 22;
+ close;
+
+
+}
+
+//Merchant Check
+function script Mer_check {
+
+ if(BaseJob==5) goto L_JobMer;
+ if(BaseJob !=0) goto L_JobOther;
+ if(JobLevel < 10) goto L_JobLvl;
+ mes "[Chief Mahnsoo]";
+ mes "A Merchant you say? Well...";
+ next;
+ mes "[Chief Mahnsoo]";
+ mes "Alright. First fill out an application form and submit 1000 Zeny for the Memebership Fee.";
+ mes "If you don't have enough money right now, you can pay 500 Zeny first and then pay the rest later after you've passed the Merchant License Test.";
+ next;
+ mes "[Chief Mahnsoo]";
+ mes "How does that sound? Are you still interested?";
+ return;
+
+ L_JobMer:
+ mes "[Chief Mahnsoo]";
+ mes "Huh? What did you say? You noodle head! Take a good look at yourself. Your ALREADY A MERCHANT! Good lord!";
+ emotion 1;
+ emotion 0;
+ close;
+
+
+ L_JobOther:
+ mes "[Chief Mahnsoo]";
+ mes "We Merchants really don't like people who work during the day, and then go out to crazy bars at night. When it comes to money, for them it's 'easy come easy go.";
+ next;
+ mes "[Chief Mahnsoo]";
+ mes "Well.. I talked a little too long, I guess... but since you already have an occupation, we don't need you.";
+ close;
+
+
+ L_JobLvl:
+ mes "[Chief Mahnsoo]";
+ mes "I'm sorry but you have to have a Novice Job level of 9 with all 9 of the basic Skills.";
+ close;
+
+}
+
+//Swordsman Check
+function script Swo_check {
+
+ if(BaseJob == Job_Swordman) goto O_1b;
+ if(BaseJob != Job_Novice) goto O_1c;
+ mes "So you wish to become a Swordsman aye? A very good choice!! Fill out this application form first.";
+ next;
+ mes "..(you fill out the form and hand it to him)..";
+ next;
+ mes "[Master Swordsman]";
+ if(JobLevel < 10) goto O_1d;
+ return;
+
+ O_1b:
+ mes "Muhahaha! You must be kidding me! You're already a swordsman.";
+ emotion 18;
+ close;
+
+ O_1c:
+ mes "Im sorry but you can not hold more than one job at a time and therefore I must refuse your request.";
+ next;
+ mes "[Master Swordsman]";
+ mes "Try picking up a hobby to make use of your spare time. Muhahahahah!!";
+ emotion 18;
+ close;
+
+ O_1d:
+ mes "A hem...., you have yet to learn all of the 'Basic Skills' needed to become a Swordsman. Please check the requirements again.";
+ close;
+
+}
+//Thief Check
+function script Thi_check {
+
+ if(BaseJob == Job_Novice) return;
+ if(BaseJob == Job_Thief) goto L_JobThief;
+ mes "[Thief Guide]";
+ if(BaseClass == Job_Swordman) goto L_Swordman;
+ if(BaseClass == Job_Mage) goto L_Mage;
+ if(BaseClass == Job_Archer) goto L_Archer;
+ if(BaseClass == Job_Acolyte) goto L_Acolyte;
+ if(BaseClass == Job_Merchant) goto L_Merchant;
+
+ mes "You already have a job. Stop bothering me and go help out some newbies or something.";
+ emotion 21;
+ close;
+
+ L_Acolyte:
+ mes "What the heck...? Ohhhhhh~GOD... PORING's worshipper, Acolyte...";
+ mes "So why aren't you in church praying, instead of wandering about here, huh?";
+ close;
+
+ L_Archer:
+ mes "What the heck...? Hahahaha~are you a 'Kill Stealing' Archer...?";
+ emotion 18;
+ close;
+
+ L_Mage:
+ mes "What the heck...? Ehhh??? A Circus Sideshow? Make a fire without a Matchstick, will ya?";
+ emotion 19;
+ close;
+
+ L_Merchant:
+ mes "What the heck...? Eeeeeek~Merchant Scammer here...!!!! I am gonna report you to the GM!!!";
+ emotion 0;
+ close;
+
+ L_Swordman:
+ mes "What the heck...? Meh!~Here's another 'Bash' head. Do me a favor... why don't you go 'BASH', yourself in the head. Ha!";
+ emotion 29;
+ close;
+
+L_JobThief:
+ mes "[Thief Guide]";
+ mes "You're already a thief..... What do you want from me... go away!";
+ emotion 4;
+ close;
+
+}
+
diff --git a/npc/jobs/Jfunc/Jfunc2-1.txt b/npc/jobs/Jfunc/Jfunc2-1.txt
new file mode 100644
index 000000000..1b62d6494
--- /dev/null
+++ b/npc/jobs/Jfunc/Jfunc2-1.txt
@@ -0,0 +1,385 @@
+//===== eAthena Script =======================================
+//= Global Job Function
+//===== By: ==================================================
+//= massdriller
+//===== Current Version: =====================================
+//= 0.2
+//===== Compatible With: =====================================
+//= eAthena 1.0 +
+//===== Description: =========================================
+//= Optimised scripts by moving all their checkers here.
+//===== Additional Comments: =================================
+//= For 2-1 Jobs
+//= 0.2 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
+//============================================================
+
+//Assasin Check
+function script Ass_check {
+
+ if(BaseJob==Job_Assassin) goto L_JobSin;
+ mes "[Angry looking man]";
+ if(baseClass == Job_Swordman) goto L_JobSwo;
+ if(baseClass == Job_Mage) goto L_JobMag;
+ if(baseClass == Job_Archer) goto L_JobArch;
+ if(baseClass == Job_Acolyte) goto L_JobAco;
+ if(baseClass == Job_Merchant) goto L_JobMerc;
+ if(baseClass == Job_Thief) goto L_JobOther;
+
+L_JobNov:
+ mes "....HEY Novice!!! GET out of here now!! I won't be held responsible if anything bad happens to you.......";
+ emotion 0;
+ close;
+L_JobSwo:
+ mes "....What are you doing here???";
+ emotion 1;
+ next;
+ mes "[Angry looking man]";
+ mes "Doing what you're ordered to do eh?........ You guys are nothing more than dogs that listen to their owners.............";
+ emotion 32;
+ close;
+L_JobMag:
+ mes "...What's a mage like you doing here? You should be paying more attention to your training.....";
+ emotion 20;
+ close;
+L_JobArch:
+ mes "Uh.... you're one of those people with bows right? Sorry but there are no cute pets here for u to kill..........";
+ emotion 4;
+ next;
+ mes "[Angry looking man]";
+ mes "Wait...... You're not here to create trouble eh!!? ....LEAVE AT ONCE!!";
+ emotion 0;
+ close;
+L_JobAco:
+ mes "...Oh God's little helper..... What are you doing down in a dreadful place like this?";
+ mes "Trust me, you're not going to find any salvation here........ why don't you just run along ok?........";
+ emotion 20;
+ close;
+L_JobMerc:
+ mes ".... What the??? Do you have any idea where you are??...... GREEDY SCAMMERS like you are not welcome here!!";
+ emotion 29;
+ close;
+L_JobOther:
+ mes ".... Hmm.... although you're not an Assassin or Thief... I have to say I like your sense of style.";
+ close;
+L_JobSin:
+ mes "[Assassin Huey]";
+ mes "Oohh, its you. You're...." + strcharinfo(0) + " right?";
+ next;
+ mes "[Assassin Huey]";
+ mes "Too bad there's nothing to do right now. You should go train more. Bye.";
+ close;
+
+}
+
+//Blacksmith Check
+function script Bla_check {
+
+ if (BaseJob == 0) goto L_Nov;
+ if (baseClass == Job_Swordman) goto L_Sword;
+ if (baseClass == Job_Acolyte) goto L_Aco;
+ if (baseClass == Job_Thief) goto L_Thief;
+ if (baseClass == Job_Mage) goto L_Wiz;
+ if (baseClass == Job_Archer) goto L_Arc;
+ if (BaseJob == 10) goto L_Black;
+ mes "Only Merchants can become Blacksmiths.";
+ close;
+
+L_Nov:
+ if(sex==0) mes "...Hello little lady! If you wish to be a blacksmith, you have to be a merchant first!";
+ if(sex==1) mes "Hmmm, you look like you wish to be a blacksmith! Sorry, but only merchants can be blacksmiths!.";
+ close;
+L_Sword:
+ mes "Hello! Come here to order a sword? Sorry, but I have some paperwork to do, so I can't forge anything now.";
+ close;
+L_Arc:
+ mes "Hmmm, sorry, but we're not hiring anyone that isn't a merchent.";
+ close;
+L_Wiz:
+ mes "Interested in training? Our guild cannot assist magic users is such matters.";
+ close;
+L_Aco:
+ mes "Oh! A Holy one...! Do me a favor and bless the sword I'm crafting!";
+ close;
+L_Thief:
+ mes "Sorry, but this is more of a office, so there's nothing worth money. We CAN do knife forges though.";
+ close;
+L_Black:
+ mes "Hey! Been a while, running a errand for Christopher? I feel like my hammer is getting rusty after all this office work.";
+ close;
+
+}
+
+//Hunter Check
+function script Hun_check {
+
+ if(BaseJob==Job_Hunter) goto L_Hunt;
+ if(baseClass == Job_Archer) goto L_Other;
+ if(baseClass == Job_Swordman) goto L_Swo;
+ if(baseClass == Job_Mage) goto L_Mage;
+ if(baseClass == Job_Thief) goto L_Thf;
+ if(baseClass == Job_Acolyte) goto L_Aco;
+ if(baseClass == Job_Merchant) goto L_Merc;
+
+L_Nov:
+ mes "[Hunter Sharon]";
+ mes "What's a novice like you doing here? Leave, we have nothing for you.";
+ emotion 1;
+ close;
+L_Swo:
+ mes "[Hunter Sharon]";
+ mes "A follower of the way of the blade! We have nothing for you here so please leave.";
+ close;
+L_Mage:
+ mes "[Hunter Sharon]";
+ mes "Hello mage type person. If you have no business here, please leave,";
+ close;
+L_Aco:
+ mes "[Hunter Sharon]";
+ mes "Good day, religious zealot! It's nice to meet you and all, but you have no buisiness here.";
+ close;
+L_Merc:
+ mes "[Hunter Sharon]";
+ mes "Hey, how's buisiness? Perhaps if you want to sell something, go back to town.";
+ close;
+L_Thf:
+ mes "[Hunter Sharon]";
+ mes "Eeep! There's nothing to steal here!! Leave us alone..... go rob an old lady or something......";
+ emotion 23;
+ close;
+L_Hunt:
+ mes "[Hunter Sharon]";
+ mes "What up! "+strcharinfo(0)+" Why did you come back? Falcon run away or something? Te hehe.";
+ emotion 18;
+ next;
+ mes "[Hunter Sharon]";
+ mes "I hope you didn't think you could get free stuff from us just because your part of our guild now......";
+ close;
+L_Other:
+ mes "[Hunter Sharon]";
+ mes "What are YOU doing here? Did you come to do a little song and dance... ke.. keke....kekekeHahahahhaha!!!";
+ emotion 18;
+ close;
+
+}
+
+//Knight Check
+
+function script Kni_check {
+
+ if(BaseJob != Job_Swordman) goto L_NotSwo;
+ mes "Well then, first fill out this application form....";
+ next;
+ mes "...(you fill out the form and hand it back)...";
+ next;
+ mes "[Chivalry Captain Herman]";
+ if(JobLevel < 40) goto L_NotLvl;
+ mes "Impressive. You have the job qualifications to become a knight..., however you will need much more than that to actually become one.";
+ next;
+ return;
+
+ L_NotLvl:
+ mes "Hmm...it looks like you have not reached Job Level 40 yet. Please come back when you do. I shall be waiting here.";
+ close;
+ L_NotSwo:
+ if(BaseJob == Job_Knight) goto sL_JobKni;
+ if(BaseJob == Job_Novice) goto sL_JobNov;
+
+ sL_JobOther:
+ mes "I'm sorry but only Swordsmen can become Knights.";
+ close;
+
+ sL_JobKni:
+ mes "...(sighs)...what are you doing here WASTING my time?? GO FORTH!!, and continue protecting Rune Midgard my young Knight.";
+ emotion 32;
+ close;
+
+ sL_JobNov:
+ mes "Hahahaha!! You have no job experience what so ever and yet you stumble in here asking to be a knight. Hahahaha!!";
+ emotion 18;
+ next;
+ mes "[Chivalry Captain Herman]";
+ mes "You must first become a Swordsman before even thinking about becoming a Knight. Now scurry along little novice. Hahahahaha!!!";
+ close;
+
+
+}
+
+//Priest Check
+
+function script Pri_check {
+
+ if (BaseJob == Job_Novice) goto L_Novice;
+ if (BaseJob == Job_Priest) goto L_Priest;
+ mes "May God bless you my child.";
+ next;
+ mes "[Father Thomas]";
+ mes "Please feel free to rest, the church is the safest place in this world.";
+ next;
+ mes "[Father Thomas]";
+ mes "I hope God will bless you.";
+ return;
+
+L_Novice:
+ mes "May God bless you, child. This is the Prontera Church. What are you here for?";
+ next;
+ menu "I want to become an Acolyte.",M_0a, "I want to become a ^5533FFPriest^000000.",M_0b, "I'm just walking around.",M_0End;
+
+ M_0a:
+ mes "[Father Thomas]";
+ mes "Haha.. so you want to become an Acolyte eh? To apply to become an Acolyte, please go to the room opposite of here.";
+ close;
+ M_0b:
+ mes "[Father Thomas]";
+ mes "Haha...in order to become a priest you must first become an Acolyte. To become an Acolyte, go to the room opposite of here.";
+ close;
+ M_0End:
+ mes "[Father Thomas]";
+ mes "Please feel free to rest here. The church is a sanctuary for all those, who seek to escape the outside world.";
+ next;
+ mes "[Father Thomas]";
+ mes "May God be with you in your thoughts and prayers.";
+ close;
+
+L_Priest:
+ mes "God bless you, child. You are here again because you listened to God's orders.";
+ next;
+ mes "[Father Thomas]";
+ mes "I don't know if God's sons and daughters are going on the path of light or the path of darkness... I can only pray for the best.";
+ next;
+ mes "[Father Thomas]";
+ mes "So why are you here today?";
+ next;
+ menu "I just wanted to see how you were.",M_1a, "I'm here to help the Acolytes.",M_1b, "Life is really hard... I was wondering if you could help.",M_1End;
+
+ M_1a:
+ mes "[Father Thomas]";
+ mes "Oh, well I'm fine thank you. Please send my regards to all of the other Priests, and Priestess.";
+ next;
+ mes "[Father Thomas]";
+ mes "We, the ones who follow the devine path, are here for one reason.... to obey Gods orders.";
+ mes "If you come across anyone who needs help, please remember to assist them in any way you can...";
+ close;
+
+ M_1b:
+ mes "[Father Thomas]";
+ mes "Oh...thats a great idea! Since you're a priest, you can't forget that you have to help the Acolytes when they need it.";
+ emotion 5;
+ next;
+ mes "[Father Thomas]";
+ mes "Even so, you must be carefull not to do everyting for them. It is important that they gain their own experiences through training ";
+ next;
+ mes "[Father Thomas]";
+ mes "In order to go in and help you'll need a ^5533FFROSARY^000000.";
+ mes "There will be 3 trials for the Acolyte to face, but in only 2 of them will your assistance be needed.";
+ next;
+ mes "[Father Thomas]";
+ mes "Are you prepared to help?";
+ next;
+ menu "Yes, i will help them with all my might.",sM_1a, "I will come back later.",sM_1End;
+
+ sM_1a:
+ if (countitem(2608) < 1) goto sL_NoRosary;
+ mes "[Father Thomas]";
+ mes "Very well then. I will send you to an Acolyte in just a moment.";
+ next;
+ mes "[Father Thomas]";
+ mes "I hope you will also take this opportunity to teach them what it means to be a good Priest.";
+ next;
+ if((getareausers("job_prist.gat", 8, 34, 39,109)) == 1) warp "job_prist.gat", 24, 44;
+ if((getareausers("job_prist.gat", 160, 14, 175, 178)) == 1) warp "job_prist.gat", 98, 40;
+ if((getareausers("job_prist.gat", 90, 34, 105,105)) == 1) warp "job_prist.gat", 168, 17;
+ mes "[Father Thomas]";
+ mes "Hmm........ wait a minute..... let me check my list.... Either no one is taking the test right now, or another Priest is already helping out.";
+ mes "In any case please check with me again later.";
+ close;
+
+ sL_NoRosary:
+ mes "[Father Thomas]";
+ mes "Hmm... it doesn't look like you have a ^5533FFROSARY^000000 with you.";
+ next;
+ mes "[Father Thomas]";
+ mes "If you want to help the Acolytes, you must first get a ^5533FFROSARY^000000.";
+ mes "Please come back when you have one.";
+ close;
+ sM_1End:
+ mes "[Father Thomas]";
+ mes "Oh, alright. Just remember to bring a ^5533FFFROSARY^000000 when you come back.";
+ close;
+
+ M_1End:
+ mes "[Father Thomas]";
+ mes "Keep up the good work. I will ask God to ease your pain.";
+ next;
+ mes "[Father Thomas]";
+ mes "God, one of your children is suffering. Please use your powers, to heal the wounds on this battered body.....";
+ next;
+ mes "[Father Thomas]";
+ mes "Please look after us, so that under any condition we will be able to think clearly and maintain our faith";
+ percentheal 100,100;
+ next;
+ mes "[Father Thomas]";
+ mes "You should be feeling better now. Please stay on the path to rightousness and may God bless you.";
+ close;
+
+}
+
+//Wizard Checker 1
+
+function script Wiz1_check {
+
+ if(baseClass == Job_Mage) goto L_Magic;
+ if(baseClass == Job_Acolyte) goto L_Holy;
+L_Other:
+ mes "[Dog]";
+ mes "Sheesh....... Why would someone who can't even cast a single spell come all the way up here???";
+ next;
+ mes "[Dog]";
+ mes "If you're that bored, do the world a favor and climb to the top of this building from the outside, then do some acrobatics....";
+ emotion 32;
+ next;
+ mes "[Dog]";
+ mes "~WOOF~ Get lost! I don't have time for people like you!!";
+ emotion 27;
+ close;
+L_Holy:
+ mes "[Dog]";
+ mes "Eeek! What's a holy type person doing up here? I thought you people didn't like magic....";
+ mes "You religious types are always calling it the 'dark arts'......... ooooh scary!!!...... ~grrr!~WOOF!~";
+ close;
+L_Magic:
+ mes "[Dog]";
+ mes "Ah! High level magic users, welcome. It's always nice to see experienced magic users around here.";
+ mes "Actually it's nice to see them anywhere! ~Woof!~";
+ close;
+
+}
+
+function script Wiz2_check {
+
+ if(BaseJob == Job_Wizard) goto L_Wizard;
+ if(BaseJob == Job_Novice) goto L_Novice;
+
+L_Other:
+ mes "Hmm? What brings you all the way up here? If you have nothing to do here, please leave.";
+ mes "This place is for wizards only. =P";
+ next;
+ mes "[Catherine Medichi]";
+ mes "Try not to fall as you go back down....";
+ close;
+L_Novice:
+ mes "Awwww, a little novice! How cute! This place is for Wizards only though.";
+ emotion 14;
+ next;
+ mes "[Catherine Medichi]";
+ mes "If you're interested in magic, the ^0000FFMagician's Guild^000000 is the place for you.";
+ close;
+L_Wizard:
+ mes "What do you need fellow Wizard? If it's nothing, please leave...";
+ next;
+ mes "[Catherine Medichi]";
+ if(sex==1) mes "... Of course, if your here to ask me out... (*giggles*)....";
+ if(sex==0) mes "If you get yourself a boyfriend, feel free to drop by and show him off. XD";
+ emotion 3;
+ close;
+
+}
diff --git a/npc/jobs/Jfunc/Jfunc2-2.txt b/npc/jobs/Jfunc/Jfunc2-2.txt
new file mode 100644
index 000000000..64a2483be
--- /dev/null
+++ b/npc/jobs/Jfunc/Jfunc2-2.txt
@@ -0,0 +1,236 @@
+//===== eAthena Script =======================================
+//= Global Job Function
+//===== By: ==================================================
+//= massdriller
+//===== Current Version: =====================================
+//= 0.1
+//===== Compatible With: =====================================
+//= eAthena 1.0 +
+//===== Description: =========================================
+//= Optimised scripts by moving all their checkers here.
+//===== Additional Comments: =================================
+//= For 2-2 Job Quests
+//============================================================
+
+//Alchemist Check
+function script Alc_check {
+
+ if(BaseJob == Job_Alchem) goto L_Alch;
+ if(BaseJob == Job_Alchem || BaseJob == Job_Alchem) goto L_Other;
+ return;
+
+L_Other:
+ mes "Welcome to the Alchemist Union. Ah, I apologize but I'm busy right now.";
+ close;
+L_Alch:
+ mes "Hey there fellow Alchemist. How's the business going? Good I hope, well good luck to you.";
+ close;
+}
+
+//Rogue Questions
+function script RogQ_check {
+ savepoint "in_rogue.gat",366,114;
+ set @score, 0;
+ set ROGUE_Q, 1;
+ set @temp, rand(2);
+ if(@temp == 1) goto L_QSet2;
+
+ L_QSet1:
+ mes "[Markie]";
+ mes "1) What is the added flee rate that a Thief recieves when the ^5533FFImprove Dodge^000000 skill is ^5533FFmastered^000000?";
+ next;
+ menu "20",sM1_1, "30",-, "40",sM1_1, "160",sM1_1;
+
+ set @score, @score + 10;
+
+ sM1_1:
+
+ mes "[Markie]";
+ mes "2) Choose a monster that cannot detect a hidden or cloaked character?";
+ next;
+ menu "Mummy",sM1_2, "Worm Tail",-, "Argos",sM1_2, "Soldier Skeleton",sM1_2;
+
+ set @score, @score + 10;
+
+ sM1_2:
+
+ mes "[Markie]";
+ mes "3) Where is the Rogue guild located?";
+ next;
+ menu "Comodo",sM1_3, "Kokomo Beach",sM1_3, "Pharos Lightouse",-, "Morroc",sM1_3;
+
+ set @score, @score + 10;
+
+ sM1_3:
+
+ mes "[Markie]";
+ mes "4) In which of the following towns, can you become a Thief?";
+ next;
+ menu "Comodo",sM1_4, "Lutie",sM1_4, "Alberta",sM1_4, "Morroc",-;
+
+ set @score, @score + 10;
+
+ sM1_4:
+
+ mes "[Markie]";
+ mes "5) Choose the card that does ^FF3355not^000000 have an effect on a players ^5533FFDEX stat^000000...";
+ next;
+ menu "Rocker Card",sM1_5, "Mummy Card",-, "Zerom Card",sM1_5, "Drops",sM1_5;
+
+ set @score, @score + 10;
+
+ sM1_5:
+
+ mes "[Markie]";
+ mes "6) What do you think is cool about being a Rogue?";
+ next;
+ menu "Being a bad ass",sM1_6, "Being a hypocrite",sM1_6, "Being shameless",sM1_6, "Having excellent attack strength",-;
+
+ set @score, @score + 10;
+
+ sM1_6:
+
+ mes "[Markie]";
+ mes "7) At what job level can you change from a Thief to a Rogue?";
+ next;
+ menu "At job lvl 30",sM1_7, "At job lvl 35",sM1_7, "At job lvl 40",-, "At job lvl 50",-;
+
+ set @score, @score + 10;
+
+ sM1_7:
+
+ mes "[Markie]";
+ mes "8) If you wanted to dye your hair a different color, where would you have to go to do that?";
+ next;
+ menu "Building in SouthWestern part of Morroc",sM1_8, "Building in SouthWestern part of Prontera",-,
+ "Building in SouthEastern part of Morroc",sM1_8, "Building in NorthEastern part of Prontera",sM1_8;
+
+ set @score, @score + 10;
+
+ sM1_8:
+
+ mes "[Markie]";
+ mes "9) What mushrooms do you need to steal in order to become a Thief?";
+ next;
+ menu "Orange Gooey Mushrooms",-, "Red Hairy Mushrooms",sM1_9, "Orange Net Mushrooms",-, "Orange Sticky Mushrooms",sM1_9;
+
+ set @score, @score + 10;
+
+ sM1_9:
+
+ mes "[Markie]";
+ mes "10) Which of these cards is ^FF3355useless^000000 to a Rogue?";
+ next;
+ menu "Whisper Card",sM1_10, "Elder Willow Card",-, "Zerom Card",sM1_10, "Matyr Card",sM1_10;
+
+ set @score, @score + 10;
+
+ sM1_10:
+ goto L_Score;
+
+
+ L_QSet2:
+ mes "[Markie]";
+ mes "1) What skill do you need to learn before you can learn ^5533FFTunnel Drive^000000?";
+ next;
+ menu "Hiding",-, "Steal",sM2_1, "Improve Dodge",sM2_1, "Bash",sM2_1;
+
+ set @score, @score + 10;
+
+ sM2_1:
+
+ mes "[Markie]";
+ mes "2) How much more of a discount can a Rogue get with the ^5533FFHaggel^000000 skill than a merchant can with the ^5533FFDiscount^000000 skill?";
+ next;
+ menu "3%",sM2_2, "2%",sM2_2, "1%",-, "0%",sM2_2;
+
+ set @score, @score + 10;
+
+ sM2_2:
+
+ mes "[Markie]";
+ mes "3) What is the correct description for the skill ^5533FFMug^000000?";
+ next;
+ menu "Steal Items from players",sM2_3, "Steal Items from monsters",sM2_3, "Steal Zeny from monsters",-, "Steal Zeny from players",sM2_3;
+
+ set @score, @score + 10;
+
+ sM2_3:
+
+ mes "[Markie]";
+ mes "4) How many Rogues are required to activate the skill ^5533FFGangster's Paradise^000000?";
+ next;
+ menu "1 Rogue + 2 Assassins",sM2_4, "2 Rogues + 1 Thief",sM2_4, "4 Thieves",sM2_4, "2 or more Rogues",-;
+
+ set @score, @score + 10;
+
+ sM2_4:
+
+ mes "[Markie]";
+ mes "5) After increasing ^5533FFDivest Helm^000000 to level 5, what other skill becomes available for you learn?";
+ next;
+ menu "Envenom",sM2_5, "Strip Tease",sM2_5, "Venom Splasher",sM2_5, "Divest Shield",-;
+
+ set @score, @score + 10;
+
+ sM2_5:
+
+ mes "[Markie]";
+ mes "6) Choose a skill that allows its user to move while being hidden?";
+ next;
+ menu "Hiding",sM2_6, "Back Slide",sM2_6, "Tunnel Drive",-, "Sand Attack",sM2_6;
+
+ set @score, @score + 10;
+
+ sM2_6:
+
+ mes "[Markie]";
+ mes "7) Choose the card that increases the ^5533FFaccuracy rate^000000 of its owner?";
+ next;
+ menu "Andre",sM2_7, "Familiar",sM2_7, "Mummy",-, "Marina",sM2_7;
+
+ set @score, @score + 10;
+
+ sM2_7:
+
+ mes "[Markie]";
+ mes "8) Choose the monster that receives more damage when attacked by a weapon with a Vadon card attached to it?";
+ mes "(Vadon card inflicts 20% more damage to fire property monsters)";
+ next;
+ menu "Vadon",sM2_8, "Deviruchi",sM2_8, "Elder Willow",-, "Baphomet",sM2_8;
+
+ set @score, @score + 10;
+
+ sM2_8:
+
+ mes "[Markie]";
+ mes "9) How much SP does the ^5533FFDouble Attack^000000 skill require when used with a dagger?";
+ next;
+ menu "15 SP",sM2_9, "No SP needed",-, "10 SP",sM2_9, "54 SP",sM2_9;
+
+ set @score, @score + 10;
+
+ sM2_9:
+
+ mes "[Markie]";
+ mes "10) Choose an effective dagger to use in the Byalan Dungeon?";
+ next;
+ menu "Wind Main-Gauche",-, "Ice Main-Gauche",sM2_10, "Earth Main-Gauche",sM2_10, "Fire Main-Gauche",sM2_10;
+
+ set @score, @score + 10;
+
+ sM2_10:
+
+
+ L_Score:
+ mes "[Markie]";
+ mes "Okay, those are all of the questions I have. Now that wasn't so bad was it sweetie?";
+ mes "I hope you don't mind, but I've been grading your answers.";
+ next;
+ mes "[Markie]";
+ mes "I like to give people scores on their interviews so that they can know how well they did.";
+ mes "It looks like you got a ^FF3355" + @score +"^000000/100............";
+ next;
+ mes "[Markie]";
+ return;
+}