summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKisuka <Kisuka@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-09-11 04:52:10 +0000
committerKisuka <Kisuka@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-09-11 04:52:10 +0000
commita55285b3c3ff19cbd2b933e60a6e2b4440937236 (patch)
tree8a008f5e6861353898f391f8925c80fc432af89e
parentcb109f91b0b953413b9245a1bee305cf0ada841f (diff)
downloadhercules-a55285b3c3ff19cbd2b933e60a6e2b4440937236.tar.gz
hercules-a55285b3c3ff19cbd2b933e60a6e2b4440937236.tar.bz2
hercules-a55285b3c3ff19cbd2b933e60a6e2b4440937236.tar.xz
hercules-a55285b3c3ff19cbd2b933e60a6e2b4440937236.zip
- Added quest log commands to all job quests.
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14054 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r--npc/jobs/1-1/acolyte.txt4
-rw-r--r--npc/jobs/1-1/mage.txt6
-rw-r--r--npc/jobs/1-1/merchant.txt6
-rw-r--r--npc/jobs/1-1e/gunslinger.txt761
-rw-r--r--npc/jobs/1-1e/ninja.txt1182
-rw-r--r--npc/jobs/1-1e/taekwon.txt55
-rw-r--r--npc/jobs/2-1/assassin.txt23
-rw-r--r--npc/jobs/2-1/blacksmith.txt58
-rw-r--r--npc/jobs/2-1/hunter.txt48
-rw-r--r--npc/jobs/2-1/knight.txt37
-rw-r--r--npc/jobs/2-1/priest.txt20
-rw-r--r--npc/jobs/2-1/wizard.txt18
-rw-r--r--npc/jobs/2-1e/StarGladiator.txt10
-rw-r--r--npc/jobs/2-2/alchemist.txt35
-rw-r--r--npc/jobs/2-2/bard.txt12
-rw-r--r--npc/jobs/2-2/crusader.txt33
-rw-r--r--npc/jobs/2-2/dancer.txt19
-rw-r--r--npc/jobs/2-2/monk.txt39
-rw-r--r--npc/jobs/2-2/rogue.txt48
-rw-r--r--npc/jobs/2-2/sage.txt88
-rw-r--r--npc/jobs/2-2e/SoulLinker.txt16
-rw-r--r--npc/jobs/novice/supernovice.txt5
-rw-r--r--npc/jobs/valkyrie.txt4
23 files changed, 1429 insertions, 1098 deletions
diff --git a/npc/jobs/1-1/acolyte.txt b/npc/jobs/1-1/acolyte.txt
index f62b8404e..a5342a2d3 100644
--- a/npc/jobs/1-1/acolyte.txt
+++ b/npc/jobs/1-1/acolyte.txt
@@ -184,10 +184,10 @@ prt_church,184,41,4 script Cleric#aco 60,{
skill 143,0,0;
callfunc "Job_Change",Job_Acolyte;
callfunc "F_ClearJobVar";
- if(checkquest(1001) != "-1") {
+ if(checkquest(1001) != -1) {
completequest 1001;
}
- else if(checkquest(1002) != "-1") {
+ else if(checkquest(1002) != -1) {
completequest 1002;
}
else {
diff --git a/npc/jobs/1-1/mage.txt b/npc/jobs/1-1/mage.txt
index c382358a2..ff4624e99 100644
--- a/npc/jobs/1-1/mage.txt
+++ b/npc/jobs/1-1/mage.txt
@@ -209,13 +209,13 @@ geffen_in,164,124,4 script Mage Guildsman 123,{
callfunc "Job_Change",Job_Mage;
callfunc "F_ClearJobVar";
set Zeny,Zeny+50;
- if(checkquest(1005) != "-1") {
+ if(checkquest(1005) != -1) {
completequest 1005;
}
- else if(checkquest(1006) != "-1") {
+ else if(checkquest(1006) != -1) {
completequest 1006;
}
- else if(checkquest(1007) != "-1") {
+ else if(checkquest(1007) != -1) {
completequest 1007;
}
else {
diff --git a/npc/jobs/1-1/merchant.txt b/npc/jobs/1-1/merchant.txt
index 4d0e9fd11..d1294fde1 100644
--- a/npc/jobs/1-1/merchant.txt
+++ b/npc/jobs/1-1/merchant.txt
@@ -153,13 +153,13 @@ alberta_in,53,43,6 script Merchant#mer 86,{
mes "Congratulations!";
callfunc "Job_Change",Job_Merchant;
callfunc "F_ClearJobVar";
- if(checkquest(1009) != "-1") {
+ if(checkquest(1009) != -1) {
completequest 1009;
}
- else if(checkquest(1010) != "-1") {
+ else if(checkquest(1010) != -1) {
completequest 1010;
}
- else if(checkquest(1011) != "-1") {
+ else if(checkquest(1011) != -1) {
completequest 1011;
}
else {
diff --git a/npc/jobs/1-1e/gunslinger.txt b/npc/jobs/1-1e/gunslinger.txt
index 7d6b0a070..9132827b2 100644
--- a/npc/jobs/1-1e/gunslinger.txt
+++ b/npc/jobs/1-1e/gunslinger.txt
@@ -1,13 +1,9 @@
//===== eAthena Script =======================================
//= Gunslinger Job Quest
//===== By: ==================================================
-//= erKURITA & RockmanEXE
-//= Direct credits quote from RockmanExe:
-//= "info provided by RockmanEXE cause he pwnz0rz yer arse"
-//= DON'T REMOVE THIS! (by request of him, he provided all
-//= the info regarding the quests and shops.)
+//= erKURITA, RockmanEXE, Kisuka
//===== Current Version: =====================================
-//= 2.1c
+//= 2.2
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -29,408 +25,399 @@
//= 2.1a Corrected a Typo error ";;". [Samuray22]
//= 2.1b Corrected some typos errors. (bugreport:1549) [Samuray22]
//= 2.1c Fixed some missing/messed up item checks. (bugreport:2693) [Kisuka]
+//= 2.2 Updated to match AEGIS script and Added Quest Log commands. [Kisuka]
//============================================================
que_ng,152,167,3 script Master Miller 901,{
-
- mes "[Master Miller]";
- if(Class == Job_Novice && JobLevel > 9)
- {
- switch(GUNS_Q)
- {
- case 0:
- mes "I'm a Security Chief and also";
- mes "a Gunslinger Instructor, you may call me";
- mes "Master Miller.";
- next;
- mes "[Master Miller]";
- mes "I can't be distracted from my duty";
- mes "at this moment.";
- mes "What is it that you want?";
- next;
- switch( select( "Nothing much.","I want to become a Gunslinger.") )
- {
- case 1:
- mes "[Master Miller]";
- mes "Wasting my time is like,";
- mes "wasting gold.";
- mes "Get out of my sight immediatly.";
- close;
-
- case 2:
- mes "[Master Miller]";
- mes "Hmm.";
- mes "You still look young";
- mes "but the look in your eyes...";
- mes "I can sense a powerful force.";
- next;
- mes "[Master Miller]";
- mes "Hmm...Okay.";
- mes "First, if you have the will to become a Gunslinger";
- mes "you will need to go through some tests";
- mes "and also interview and Training Sessions.";
- next;
- mes "[Master Miller]";
- mes "Do you wish to proceed?";
- next;
- switch (select ("No, I need time to think.","Sure.") )
- {
- case 1:
- mes "[Master Miller]";
- mes "Hmm..Is that so.";
- mes "Well, it is important...";
- mes "Think carefully and if you have the spirit,";
- mes "please, come back later.";
- close;
-
- case 2:
- mes "[Master Miller]";
- mes "Hmm. Okay.";
- mes "First";
- mes "deliver this letter I am giving to you";
- mes "to Payon's Alchemist,";
- mes "'The Wise Bull Horn'";
- mes "and hand the letter to him.";
- next;
- mes "[Master Miller]";
- mes "He will judge you and";
- mes "will report back to us if ";
- mes "you are up to our standards.";
- next;
- mes "["+ strcharinfo(0) +"]";
- mes "Allright, I'll do that.";
- set GUNS_Q,1;
- close;
- }
- }
-
- case 1:
- mes "Hurry up and get moving.";
- mes "'The Wise Bull Horn' is";
- mes "currently in Payon.";
- close;
-
- case 2:
- mes "I guess he gave you";
- mes "some errands to run.";
- next;
- mes "[Master Miller]";
- mes "I think he saw potential in you.";
- mes "Good luck.";
- close;
-
- case 3:
- mes "That's a lot of errands";
- mes "I already told you, the";
- mes "old man is pretty serious.";
- mes "Perform your task well.";
- close;
-
- case 4:
- mes "Mm~ I'll be waiting for your news.";
- mes "I hope you'll become one of us.";
- mes "We'll be practically family..";
- close;
-
- case 5:
- if (skillpoint > 0) {
- mes "Learn all your Basic Skills first!!";
- close;
- }
- mes "Ohh, I see you got something from the old man";
- mes "This is rare.";
- mes "Under normal circumstances...";
- mes "this would not be allowed...";
- mes "Nice, nice.";
- next;
- mes "[Master Miller]";
- mes "Mm..Okay.";
- mes "The old man gave his";
- mes "blessings, so I do not have any";
- mes "reason to reject your application.";
- next;
- mes "[Master Miller]";
- mes "Okay, from now on you'll be a Gunslinger.";
- mes "After this, for every moment that you live,";
- mes "remember can never leave your side";
- mes "is your gun. We must remember the gun";
- mes "and even every one of its bullets";
- mes "has its own product number,";
- mes "and can be checked up by us.";
- next;
- mes "[Master Miller]";
- mes "For purchasing guns and ammo";
- mes "the only place you can buy them";
- mes "is from our special gunslinger";
- mes "guild stores in various places.";
- next;
- mes "[Master Miller]";
- mes "Of course, this is tedious.";
- mes "But this is all to...";
- mes "not let these guns";
- mes "fall in the wrong hands, so";
- mes "please forgive us for any inconvenience.";
- next;
- mes "[Master Miller]";
- mes "There are also";
- mes "other reasons.";
- mes "You'll no doubt find some of them";
- mes "later.";
- mes "These are all the instructions";
- mes "from Lady Celena, our";
- mes "guild leader.";
- next;
- mes "[Master Miller]";
- mes "After a bit of time";
- mes "we will give you missions.";
- mes "You will understand more";
- mes "later.";
- next;
- mes "[Master Miller]";
- mes "I'm sure we'll see each other again.";
- mes "So here's to a nice time";
- mes "working together.";
- nude;
- callfunc "Job_Change",Job_Gunslinger;
- callfunc "F_ClearJobVar";
- set GUNS_Q,6;
- set @gun_ex,rand(1,2);
- if(@gun_ex == 1) getitem 13100,1; else getitem 13150,1;
- close;
- }
- } else if(Class == Job_Novice && JobLevel < 10) {
- mes "Hmm, I think you";
- mes "have the potential";
- mes "but you're not yet strong enough.";
- mes "Keep getting stronger and";
- mes "come back later.";
- close;
- } else if(Class == Job_Gunslinger) {
- mes "Oh~ It's been a long time~";
- mes "So, how have your travels been?";
- mes "Remember, always take care";
- mes "of your gun.";
- close;
- } else if(Class == Job_Baby) {
- mes "Ouch~";
- mes "How did a baby come here~";
- mes "Peekaboo~";
- next;
+ if (Upper == 2) {
mes "[Master Miller]";
- mes "Where's your mommy~";
- mes "Haha~";
- mes "It's a dangerous place here.";
- mes "Go play somewhere else.";
- close;
- } else {
- mes "Don't get distracted with me.";
- mes "Get on with your traveling.";
+ mes "Well, aren't you an";
+ mes "adorable little child~";
+ mes "Where's your mommy?";
+ mes "This place is dangerous, so";
+ mes "please go home soon, okay?";
close;
}
-}
-
-payon,184,65,3 script The Wise Bull Horn 866,{
-
- switch(GUNS_Q)
- {
- case 0:
- mes "[The Wise Bull Horn]";
- mes "Zzz...Zzz";
+ if (Class == Job_Novice) {
+ if (JobLevel < 10 || getskilllv("NV_BASIC") < 9) {
+ mes "[Master Miller]";
+ mes "Interested in becoming";
+ mes "a Gunslinger, eh? You've";
+ mes "got potential, but you're";
+ mes "not yet experienced enough.";
+ mes "Just train yourself a bit more,";
+ mes "and then come back, you hear?";
close;
-
- case 1:
- mes "[The Wise Bull Horn]";
- mes "...Hmm... Young one";
- mes "What is it that you want.";
- next;
- mes "["+ strcharinfo(0) +"]";
- mes "Mr. Miller sent me here.";
- next;
- mes "[The Wise Bull Horn]";
- mes "Miller...";
- mes "Mm...Hmm. So Dark Fox";
- mes "sent you here...";
- next;
- mes "[The Wise Bull Horn]";
- mes "He is wise and cunning...";
- mes "that is willing to sacrifice himself for his teammates.";
- mes "mm...If he sent you..";
- mes "Then you should be rather capable...";
- next;
- mes "[The Wise Bull Horn]";
- mes "Wait...come closer...";
- next;
- mes "["+ strcharinfo(0) +"]";
- mes "....";
- next;
- mes "[The Wise Bull Horn]";
- mes "mmm...";
- mes "mmmmm....";
- next;
- mes "[The Wise Bull Horn]";
- mes "mmm...Bright eyes and...";
- mes "a serious face...also...";
- mes "a very good attitude...a good sense of...";
- mes "responsibility...";
- mes "But still not enough.";
- next;
- mes "[The Wise Bull Horn]";
- mes "Lack of experience...";
- mes "And you still don't have the blessing of the land...";
- mes "You'll get injured at this rate...";
- next;
- mes "[The Wise Bull Horn]";
- mes "Very well, I shall craft you a gift...";
- mes "If you wish to follow this path...";
- mes "Gather 3 Rainbow Shells,";
- mes "10 Shells, 3 Feathers,";
- mes "1 Trunk, 3 Zargons, and 3 Green Herbs,";
- mes "then bring them to me.";
+ }
+ if (GUNS_Q == 0) {
+ mes "[Master Miller]";
+ mes "I'm Miller, a full time";
+ mes "Gunslinger drillmaster, and";
+ mes "full time guardian for Lady";
+ mes "Selena. Now, what do you";
+ mes "need? If it's not important, then I can't make the time for you.";
next;
- mes "[The Wise Bull Horn]";
- mes "If you show the gift that you just received";
- mes "to Dark Fox. Then he will definitely...";
- mes "accept you.";
+ if(select("Nothing.:I want to become a Gunslinger.") == 1) {
+ mes "[Master Miller]";
+ mes "Don't waste my time.";
+ mes "If you do want to become";
+ mes "a Gunslinger, then come";
+ mes "back and talk to me.";
+ close;
+ }
+ mes "[Master Miller]";
+ mes "Hm. You're pretty young, but";
+ mes "your eyes tell me that you're";
+ mes "pretty ambitious. You'll need to pass our interview and educational";
+ mes "course to become a Gunslinger. Do you want to apply for the job?";
next;
- mes "["+ strcharinfo(0) +"]";
- mes "-I'll need-";
- mes "-3 Rainbow Shells-";
- mes "-10 Shells, 3 Feathers-";
- mes "-1 Trunk, 3 Zargons,-";
- mes "-and 3 Green Herbs.-";
- set GUNS_Q,2;
- close;
-
- case 2:
- if ((countitem(1013) < 3) || (countitem(935) < 10) || (countitem(949) < 3) || (countitem(1019) < 1) || (countitem(912) < 3) || (countitem(511) < 3))
- {
- mes "["+ strcharinfo(0) +"]";
- mes "-I'll need-";
- mes "-3 Rainbow Shells-";
- mes "-10 Shells, 3 Feathers-";
- mes "-1 Trunk, 3 Zargons,-";
- mes "-and 3 Green Herbs.-";
+ if(select("Give me some time to think.:Sure!") == 1) {
+ mes "[Master Miller]";
+ mes "Understandable.";
+ mes "If you do decide that";
+ mes "you want to become";
+ mes "a Gunslinger, then let";
+ mes "me know right away.";
+ mes "I'll get you started.";
close;
}
- mes "[The Wise Bull Horn]";
- mes "Oh...give them to me.";
- mes "There is time to be consumed to";
- mes "make the gift, wait for a while.";
- delitem 935,10;
- delitem 949,3;
- delitem 1019,1;
- delitem 912,3;
- delitem 511,3;
- delitem 1013,3;
- set GUNS_Q,3;
+ mes "[Master Miller]";
+ mes "Great, great. Alright then,";
+ mes "let's get you started. Take";
+ mes "this letter to Mr. Wise Bull";
+ mes "Horn in Payon. He's a shaman";
+ mes "that will judge whether or not";
+ mes "you qualify to be a Gunslinger.";
+ set GUNS_Q,1;
+ setquest 6020;
close;
-
- case 3:
- mes "[The Wise Bull Horn]";
- mes "Mm...You came right on time.";
- mes "The preparation finished just now.";
- mes "It is a rather simple gift.";
- mes "But that's because I haven't worked in so long.";
- mes "Ahh...I feel tired now...";
- next;
- mes "[The Wise Bull Horn]";
- mes "The last time I crafted this...";
- mes "Was well over ten years ago.";
- mes "I also followed this path once...";
- mes "and I once battled...";
- mes "with such an item.";
- next;
- mes "[The Wise Bull Horn]";
- mes "Meeting Celena's father";
- mes "feels just like yesterday,";
- mes "time really flies.";
- mes "Like the smooth western wind.";
- next;
- mes "[The Wise Bull Horn]";
- mes "Though there would always be painful";
- mes "memories...but my followers...";
- mes "especially people like...";
- mes "Celena and Dark Fox.";
- mes "Ahh, young people, and my followers...";
- mes "I thank you...";
- next;
- mes "[The Wise Bull Horn]";
- mes "Though now, I am already old...";
- mes "In a short while...";
- mes "I will return...to the land";
- next;
- mes "[The Wise Bull Horn]";
- mes "I feel so tired...";
- mes "I'm so sorry...but if you could...";
- mes "Promise me something...";
- mes "Promise to do...something for me.";
- next;
- mes "[The Wise Bull Horn]";
- mes "I suddenly feel like...";
- mes "drinking a glass of milk.";
- next;
- mes "[The Wise Bull Horn]";
- mes "Take it as a request...from an old man.";
- next;
- mes "["+ strcharinfo(0) +"]";
- mes "-Let's get a glass of Milk-";
- mes "For 'The Wise Bull Horn'.-";
- set GUNS_Q, 4;
+ }
+ else if(GUNS_Q == 1) {
+ mes "[Master Miller]";
+ mes "Take that letter of";
+ mes "introduction I've written";
+ mes "for you to Mr. Wise Bull";
+ mes "Horn in Payon. He'll test";
+ mes "you to see if you're really";
+ mes "Gunslinger material.";
close;
-
- case 4:
- if (countitem(519) < 1)
- {
- mes "["+ strcharinfo(0) +"]";
- mes "-Let's get a glass of Milk-";
- mes "-for 'The Wise Bull Horn'.-";
+ }
+ else if(GUNS_Q == 2) {
+ mes "[Master Miller]";
+ mes "Hmm... Wise Bull Horn";
+ mes "asked you to collect the";
+ mes "items you need to make the";
+ mes "voucher? Hm. I guess that's";
+ mes "part of his qualification test.";
+ close;
+ }
+ else if(GUNS_Q == 3) {
+ mes "[Master Miller]";
+ mes "Wise Bull Horn asked";
+ mes "you to bring him some";
+ mes "Milk? He must really like";
+ mes "you if he's already asking";
+ mes "for favors. Good luck, friend.";
+ close;
+ }
+ else if(GUNS_Q == 4) {
+ mes "[Master Miller]";
+ mes "I expect to hear good";
+ mes "news from you soon. You";
+ mes "know, I have no doubt that";
+ mes "you'll become a Gunslinger.";
+ close;
+ }
+ else if(GUNS_Q == 5) {
+ if (Skillpoint != 0) {
+ mes "[Master Miller]";
+ mes "Hey, you have leftover";
+ mes "Skill Points. You better";
+ mes "use them all up before you";
+ mes "come and talk to me again.";
close;
}
- mes "[The Wise Bull Horn]";
- mes "Thank you.";
- mes "You are truly a kind young man.";
- mes "Now get on the road.";
- delitem 519,1;
- set GUNS_Q,5;
+ mes "[Master Miller]";
+ mes "Oh, you've brought a";
+ mes "voucher from Wise Bull Horn?";
+ mes "It's been a while since he's";
+ mes "given one to anybody, so";
+ mes "I'm really proud of you!";
next;
- mes "[The Wise Bull Horn]";
- mes "Take this Gift made by me";
- mes "and show it to Dark Fox.";
- mes "You have my blessings";
- mes "to become a Gunslinger.";
+ mes "[Master Miller]";
+ mes "If Wise Bull Horn approves,";
+ mes "then I have no reason to";
+ mes "reject you. Alright then, I'll";
+ mes "promote you to a Gunslinger.";
+ mes "But first, let me explain";
+ mes "our job in more detail.";
next;
- mes "[The Wise Bull Horn]";
- mes "Ee~~Ye~Ee~~ Hooma~ Raa~~Nae~Eee~~";
- mes "Ee~~Ye~Ee~~ Hooma~ Raa~~Nae~Eee~~";
+ mes "[Master Miller]";
+ mes "As a Gunslinger, you must";
+ mes "keep your gun with you at";
+ mes "all times. The Gunslinger";
+ mes "Guild keeps track of every Gun";
+ mes "and Bullet, so you can only get";
+ mes "them from our guild members.";
next;
- mes "["+ strcharinfo(0) +"]";
- mes "-Singing a weird-";
- mes "-song-";
- mes "-'The Wise Bull Horn'. I feel strange.-";
- mes "-Let's take the Gift-";
- mes "-to Mr.Miller now.-";
- close;
-
- case 5:
- mes "[The Wise Bull Horn]";
- mes "Ee~~Ye~Ee~~ Hooma~ Raa~~Nae~Eee~~";
- mes "Ee~~Ye~Ee~~ Hooma~ Raa~~Nae~Eee~~";
+ mes "[Master Miller]";
+ mes "Don't worry, Gunslinger";
+ mes "Guildsmen can be found almost";
+ mes "anywhere these days. Anyway,";
+ mes "it has to be this way by order of our guild leader, Lady Selena.";
next;
- mes "["+ strcharinfo(0) +"]";
- mes "-Singing a weird-";
- mes "-song-";
- mes "-'The Wise Bull Horn'.-";
+ mes "[Master Miller]";
+ mes "You might get the chance to";
+ mes "meet her one of these days.";
+ mes "Anyway, just now that we have";
+ mes "to regulate Gun and Bullet sales to keep them away from evil";
+ mes "or irresponsible folk.";
next;
- mes "["+ strcharinfo(0) +"]";
- mes "-I feel strange.-";
- mes "-Let's take the Gift-";
- mes "-to Mr.Miller now.-";
+ mes "[Master Miller]";
+ mes "In any case, it's always";
+ mes "a pleasure for me to talk";
+ mes "to another Gunslinger, so";
+ mes "let's keep in touch. May the";
+ mes "power of the earth protect";
+ mes "you in all of your adventures~";
+ callfunc "Job_Change",Job_Gunslinger;
+ set GUNS_Q,6;
+ completequest 6024;
+ if (rand(1,2) == 1) {
+ getitem 13100,1; // Six_Shooter
+ }else{
+ getitem 13150,1; // Branch
+ }
+ close;
+ }
+ }else{
+ if (Class == Job_Gunslinger) {
+ mes "[Master Miller]";
+ mes "Oh! Long time, no see,";
+ mes "friend. How have you been?";
+ mes "I hope you've been keeping";
+ mes "you Gun well maintained.";
+ mes "Take care of it, and it'll take";
+ mes "care of you. Remember it.";
close;
-
- case 6:
- mes "[The Wise Bull Horn]";
- mes "Mm...It's been a while.";
- mes "Hopefully you'll become a strong Gunslinger.";
+ }else{
+ mes "[Master Miller]";
+ mes "If you don't have";
+ mes "any business with me,";
+ mes "then please go on your way.";
close;
+ }
}
}
+
+payon,184,65,3 script Wise Bull Horn 866,{
+ if (GUNS_Q == 1) {
+ mes "[Wise Bull Horn]";
+ mes "Hello, young wolf.";
+ mes "What business has";
+ mes "brought you before me?";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "Mr. Miller sent me to";
+ mes "deliver this letter to you.";
+ mes "Actually, I'm interested in";
+ mes "becoming a Gunslinger...";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "Miller, you said?";
+ mes "Hm, the Black Fox doesn't";
+ mes "give introductions for anyone";
+ mes "he doesn't believe will make";
+ mes "a good Gunslinger. Yes, I think";
+ mes "I know why he sent you to me.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "I can see it in your eyes:";
+ mes "you've got a warm heart and a";
+ mes "strong sense of responsibility.";
+ mes "All you need is the blessing";
+ mes "of the Earth to protect you";
+ mes "as a Gunslinger.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "I can make a voucher that";
+ mes "will demonstrate your desire";
+ mes "to become a warrior of the";
+ mes "earth for you to present to";
+ mes "Gunslinger drillmasters.";
+ mes "I shall need these items...";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "^3355FF1 Trunk^000000,";
+ mes "^3355FF3 Fluffs^000000,";
+ mes "^3355FF3 Zargons^000000,";
+ mes "^3355FF10 Shells^000000,";
+ mes "^3355FF3 Green Herbs^000000, and";
+ mes "^3355FF3 Rainbow Shells^000000.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "After I complete the";
+ mes "voucher, you may bring";
+ mes "it to Black Fox, and he";
+ mes "will help you achieve";
+ mes "your goal of becoming";
+ mes "a Gunslinger.";
+ set GUNS_Q,2;
+ changequest 6020,6021;
+ close;
+ }
+ else if(GUNS_Q == 2) {
+ if (countitem(912) < 3 || countitem(914) < 3 || countitem(1019) < 1 || countitem(935) < 10 || countitem(511) < 3 || countitem(1013) < 3) {
+ mes "[Wise Bull Horn]";
+ mes "I can make a voucher that";
+ mes "will demonstrate your desire";
+ mes "to become a warrior of the";
+ mes "earth for you to present to";
+ mes "Gunslinger drillmasters.";
+ mes "I shall need these items...";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "^3355FF1 Trunk^000000,";
+ mes "^3355FF3 Fluffs^000000,";
+ mes "^3355FF3 Zargons^000000,";
+ mes "^3355FF10 Shells^000000,";
+ mes "^3355FF3 Green Herbs^000000, and";
+ mes "^3355FF3 Rainbow Shells^000000.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "After I complete the";
+ mes "voucher, you may bring";
+ mes "it to Black Fox, and he";
+ mes "will help you achieve";
+ mes "your goal of becoming";
+ mes "a Gunslinger.";
+ close;
+ }
+ delitem 912,3; // Zargon
+ delitem 914,3; // Fluff
+ delitem 1019,1; // Wooden_Block
+ delitem 935,10; // Shell
+ delitem 511,3; // Green_Herb
+ delitem 1013,3; // Colorful_Shell
+ set GUNS_Q,3;
+ changequest 6021,6022;
+ mes "[Wise Bull Horn]";
+ mes "Ah, you've returned";
+ mes "with everything I need.";
+ mes "Please give me some time";
+ mes "to make the voucher. If you";
+ mes "come back in a little while,";
+ mes "I should be finished with it.";
+ close;
+ }
+ else if(GUNS_Q == 3) {
+ mes "[Wise Bull Horn]";
+ mes "Oh, you've arrived just";
+ mes "in time. It's been a while";
+ mes "since I've made one of these vouchers, so I might be a little";
+ mes "rusty. Still, this really takes me back to the days of my youth.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "I've been serving in this";
+ mes "position of choosing worthy";
+ mes "recipients of Gunslinger";
+ mes "vouchers for a few decades";
+ mes "now. But before that, I was a";
+ mes "young adventurer just like you.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "It feels like it was only";
+ mes "yesterday when I held my own";
+ mes "little voucher as a Gunslinger,";
+ mes "a warrior of the earth. That's";
+ mes "when I met Selena's father...";
+ mes "How can time pass so quickly?";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "Ah... I reallly appreciate";
+ mes "Selena and Black Fox for all";
+ mes "of their help in recruiting";
+ mes "young Gunslingers. I'm very";
+ mes "old now, and can't do everything by myself. *Sigh...* Such is life.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "Before you leave, may";
+ mes "I ask you for a small favor?";
+ mes "I'm thirsty, and would like";
+ mes "a cold glass of Milk. Would";
+ mes "you please bring me some?";
+ set GUNS_Q,4;
+ changequest 6022,6023;
+ close;
+ }
+ else if(GUNS_Q == 4) {
+ if (countitem(519) < 1) {
+ mes "[Wise Bull Horn]";
+ mes "I'm an old man that will";
+ mes "soon be reunited with mother";
+ mes "earth. Would you do this old";
+ mes "Gunslinger a favor a bring me";
+ mes "a cold glass of Milk, please?";
+ close;
+ }
+ delitem 519,1; // Milk
+ set GUNS_Q,5;
+ changequest 6023,6024;
+ mes "[Wise Bull Horn]";
+ mes "Oh, thank you for your!";
+ mes "generosity--I see that";
+ mes "you've brought me some";
+ mes "Milk. Ahhhh, delicious~";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "I admire the patience,";
+ mes "gentleness, and kindness";
+ mes "that you've proven by bringing";
+ mes "this to me. Yes, those are traits we all want Gunslingers to have.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "Now, please take this voucher";
+ mes "to Miller, the Black Fox, with";
+ mes "my whole hearted approval.";
+ mes "I hope that you will use your";
+ mes "gun to uphold justice as a";
+ mes "noble warrior of the earth.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "Eeh~Yeah~Eeh~Hooom";
+ mes "Eeh~Yeah~Eeh~Hooom";
+ mes "Maaaaarrraaa Neeey~";
+ mes "Yippee Yippee Yai Yocaiyay~";
+ close;
+ }
+ else if(GUNS_Q == 5) {
+ mes "[Wise Bull Horn]";
+ mes "Please take this voucher";
+ mes "to Miller, the Black Fox, with";
+ mes "my whole hearted approval.";
+ mes "I hope that you will use your";
+ mes "gun to uphold justice as a";
+ mes "noble warrior of the earth.";
+ next;
+ mes "[Wise Bull Horn]";
+ mes "Eeh~Yeah~Eeh~Hooom";
+ mes "Eeh~Yeah~Eeh~Hooom";
+ mes "Maaaaarrraaa Neeey~";
+ mes "Yippee Yippee Yai Yocaiyay~";
+ close;
+ }
+ else if(GUNS_Q == 6) {
+ mes "[Wise Bull Horn]";
+ mes "AAh, long time no see.";
+ mes "I hope that you become";
+ mes "a smart beast, and use";
+ mes "your powers as a Gunslinger to protect what is good and just.";
+ close;
+ }
+ else {
+ mes "[Wise Bull Horn]";
+ mes "Zzzzzz~";
+ mes "^333333*Phew*^000000";
+ close;
+ }
+} \ No newline at end of file
diff --git a/npc/jobs/1-1e/ninja.txt b/npc/jobs/1-1e/ninja.txt
index ff4ed9c37..436e7580e 100644
--- a/npc/jobs/1-1e/ninja.txt
+++ b/npc/jobs/1-1e/ninja.txt
@@ -1,11 +1,11 @@
//===== eAthena Script =======================================
//= Ninja Job Quest
//===== By: ==================================================
-//= Legionaire
+//= Legionaire, Kisuka
//===== Current Version: =====================================
-//= 1.4
+//= 1.5
//===== Compatible With: =====================================
-//= eAthena SVN that supports Ninjas
+//= eAthena SVN
//===== Description: =========================================
//= Ninja Job Change Quest
//===== Additional Comments: =================================
@@ -13,675 +13,573 @@
//= 1.2 Added Akagi [Playtester]
//= 1.3 Updated dialogs to official ones and optimized [SinSloth]
//= 1.4 Fixed a minor bug [SinSloth]
+//= 1.5 Updated to match AEGIS script and Added Quest Log commands. [Kisuka]
//============================================================
-alberta,30,65,3 script Akagi#nq 730,{
-
- if(Class == Job_Novice)
- {
- if(JobLevel > 9)
- {
+alberta,30,65,3 script Akagi 730,{
+ if (Class == Job_Novice) {
+ if (JobLevel == 10) {
mes "[Akagi]";
- mes "Hmm...";
- mes "Some force must have lead your feet to this dark alley because you are needed here.";
- mes "Would you like to walk the path of Patience?";
- next;
- if(select("No, I don't want to go.:Yep, I'll walk the path.") == 1)
- {
+ mes "Hmmm...";
+ mes "You must have come,";
+ mes "sensing that someone";
+ mes "is waiting for you here.";
+ mes "Tell me, do you seek";
+ mes "the path of patience?";
+ next;
+ if(select("No:Yes") == 1) {
mes "[Akagi]";
- mes "Ok.";
- mes ".....";
- mes "Then farewell.";
+ mes "I see.";
+ mes "To each his own,";
+ mes "I suppose. Take";
+ mes "care of yourself.";
close;
}
- else
- {
- mes "[Akagi]";
- mes "Very well, I'll send you over right away.";
- close2;
- switch (rand(3)) {
- case 1: warp "amatsu", 170, 229; break;
- case 2: warp "amatsu", 216, 188; break;
- default: warp "amatsu", 178, 176; break;
- }
- end;
+ mes "[Akagi]";
+ mes "Very well.";
+ mes "Then, let me";
+ mes "set you on that";
+ mes "path right away...";
+ close2;
+ switch(rand(3)) {
+ case 1:
+ warp "amatsu",170,229;
+ end;
+ case 2:
+ warp "amatsu",216,188;
+ end;
+ default:
+ warp "amatsu",178,167;
+ end;
}
- }
- else
- {
+ }else{
mes "[Akagi]";
- mes "This isn't where you should be.";
- mes "Come back after you've become stronger.";
+ mes "Hm? I cannot be";
+ mes "of any service to";
+ mes "you until you grow";
+ mes "a little stronger...";
close;
}
- }
- else
- {
+ }else{
mes "[Akagi]";
- mes "I have nothing to say to you.";
- mes "Go back to where you came from.";
- close;
- }
-}
-
-que_ng,30,65,3 script Cougar Gai 730,{
-
- if(Class == Job_Novice && JobLevel > 9)
- {
- switch(NINJ_Q)
- {
- case 0:
- mes "["+strcharinfo(0)+"]";
- mes "Excuse me.";
- next;
- mes "[Cougar Gai]";
- mes "Hmm...?";
- mes "What the~!!";
- mes "You can see me!";
- next;
- mes "[Cougar Gai]";
- mes "Toriyaaa~!";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "-He throws a bundle of wooden chopsticks at you-";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "-Dart dart dart!-";
- mes "Oww~!";
- mes "Jeez~! What do you think you're doing!";
- next;
- mes "[Cougar Gai]";
- mes "Hmm...?";
- mes "I see you're not a hitman sent to kill me.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Oh jeez... What did I get myself into.";
- mes "This guy is nuts.";
- mes "Hasn't even seen me and is throwing stuff around...";
- next;
- mes "[Cougar Gai]";
- mes "Urrgh~! Anger, anger~~";
- mes "My forever rival and enemy...";
- mes "Field Cat Joe!";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "........";
- next;
- mes "[Cougar Gai]";
- mes "Gahhhhh~~~!!!";
- mes "Urrgh~Urrgh~";
- mes "Pft! Pft! Pft~";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "-What the.. He's not listening to me at all-";
- next;
- mes "[Cougar Gai]";
- mes "Hmm...";
- mes "What the! Who are you?!";
- mes "And how did you get so close to me out of nowhere?";
- mes "Take this!";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Agh~";
- mes "Ugh, please, can you quit that?";
- mes "What you've done so far, anyway...";
- next;
- mes "[Cougar Gai]";
- mes "Oho";
- mes "What incredible skill~";
- mes "You've evaded all my techniques.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "- What techniques is he talking about? -";
- mes "- And he's still not listening to me... -";
- next;
- mes "[Cougar Gai]";
- mes "Hmm~ Yes~";
- mes "Do you have some business with me?";
- next;
- mes "["+strcharinfo(0)+"]";
- mes ".........";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Ah...umm...";
- mes "Yes.";
- mes "I came to see you because I want to be a Ninja.";
- next;
- mes "[Cougar Gai]";
- mes "Oho~ You've come to the right person.";
- mes "But!";
- next;
- mes "["+strcharinfo(0)+"]";
- mes ".....";
- next;
- mes "[Cougar Gai]";
- mes "It might be a little tough.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Huh~ Why~";
- next;
- mes "[Cougar Gai]";
- mes "First off, I don't know if I can really trust you, and in my opinion..";
- mes "It seems you don't have enough experience.";
- next;
- mes "[Cougar Gai]";
- mes "So that's why i'm going to say..";
- mes "Go!!! Get Lost~!";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "...........";
- next;
- mes "[Cougar Gai]";
- mes "Hmm yes...";
- mes "That's my final word.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "...........";
- next;
- mes "[Cougar Gai]";
- mes "Well, get going if you understood.";
- mes "As you can see, I'm a very busy person...";
- next;
- mes "[Cougar Gai]";
- mes "I have a lot of enemies around me, so I can't let my guard down for a single moment.";
- next;
- mes "[Cougar Gai]";
- mes "I'm better leave to train for my next duel.";
- mes "Yioooop~!";
- next;
- mes "[Cougar Gai]";
- mes "Next time I will win for sure!";
- mes "Just you wait!";
- mes "Field Cat Joe!";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Field Cat Joe ?";
- mes "Why are you fighting with a cat?";
- next;
- mes "[Cougar Gai]";
- mes "Huh? Oh oops! Hahaha~ Hehe~";
- mes "Field Cat is that guy nickname.";
- next;
- mes "[Cougar Gai]";
- mes "He's a very mischievous fellow.";
- mes "Ther's not a method he won't use to win.";
- next;
- mes "[Cougar Gai]";
- mes "And not only that -- The skills he uses are very brilliant and very strong.";
- next;
- mes "[Cougar Gai]";
- mes "It just so happens him and I have run out of Shuriken and Scrolls, so we're in a truce. Haha.";
- next;
- mes "[Cougar Gai]";
- mes "Well, if you really want to become a Ninja, how about you do me a favor?";
- mes "If you fulfill this favor well, then although I can't make you a ninja, I can teach you a few techniques. You never know!";
- next;
- switch( select( "Accept to do the favor","Refuse to do the favor" ) )
- {
-
- case 1:
- mes "["+strcharinfo(0)+"]";
- mes "Hmm... Ok.";
- next;
- mes "[Cougar Gai]";
- mes "Ok.. Very well.";
- mes "Then deliver this letter to Field Cat Joe.";
- next;
- mes "[Cougar Gai]";
- mes "It just says in there that until we're prepared, we should consider a truce.";
- mes "Absolutely make sure to bring back his reply.";
- next;
- mes "[Cougar Gai]";
- mes "By the way, my sources told me Field Cat Joe has gone to Einbroch.";
- mes "Not sure why he went there though...";
- next;
- mes "[Cougar Gai]";
- mes "He's pretty good in changing his appearance,";
- mes "so it might be very difficult to find him.";
- next;
- mes "[Cougar Gai]";
- mes "You'll have to look with your eyes peeled and search. He likes high places.";
- mes "Look around well.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Ok~";
- mes "I'll do it.";
- set NINJ_Q,1;
- close;
-
- case 2:
- mes "["+strcharinfo(0)+"]";
- mes "I don't wish to simply learn a few techniques.";
- mes "I'm sorry.";
- mes "I'll go find someone else.";
- mes "Find somebody else.";
- next;
- mes "[Cougar Gai]";
- mes "Hmm... I see...";
- mes "I understand.";
- mes "I guess I wasted my breath.";
- mes "Well, off with you now.";
- close;
- }
-
- case 1:
- mes "[Cougar Gai]";
- mes "Hmm... It's nothing I need immediately, but do hurry.";
- mes "Field Cat Joe is at Einbroch.";
- close;
-
- case 2:
- mes "[Cougar Gai]";
- mes "Don't forget to bring me back his reply.";
- mes "I have to make sure he doesn't claim otherwise later.";
- close;
-
- case 3:
- mes "[Cougar Gai]";
- mes "Did you bring me back his reply?";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Yes, here it is.";
- next;
- mes "[Cougar Gai]";
- mes "Ohh. I see you've met him and brought me his reply.";
- mes "Well... Let's See.";
- mes "- Rip rip... -";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "- He carefully reads the letter you brought to him -";
- next;
- mes "[Cougar Gai]";
- mes "Ugh~!!! How can this be!";
- mes "He refused my request for a short truce!!!";
- mes "Did he remake his Kunai?";
- mes "What now...";
- next;
- mes "[Cougar Gai]";
- mes "I'm sorry, but I'd appreciate it if you can do me a favor.";
- mes "I need to create weapons to fight against that Bastard Joe but I don't have enough ingredients.";
- next;
- mes "[Cougar Gai]";
- mes "If you can get me these ingredients, then i'll acknowledge your abilities and make you a ninja.";
- mes "What I need is...";
- mes "1 Phracon and 5 Cyfar.";
- mes "Time is of the essence, so please hurry.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Wait!!";
- mes "Those are...";
- next;
- mes "[Cougar Gai]";
- mes "What's the matter? Is there a problem?";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "I just got these ingredients for Joe...";
- mes "Uggghhhh...";
- next;
- mes "[Cougar Gai]";
- mes "What did you say?!!!";
- mes "Then by sending you to him, I've ended up helping him...!";
- mes "Ugh...";
- mes "Aaahhh...";
- mes "Why, why~ What a fool I am! An Idiot! A moron!!";
- next;
- mes "[Cougar Gai]";
- mes "Ah.. Ah.. I'll calm down.";
- mes "Hugh.. Hugh..";
- next;
- mes "[Cougar Gai]";
- mes "You must help me, for now.";
- mes "Since things have become like this, there's no time to explain now.";
- mes "Hurry and get me what I need.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Uhh...Sure..";
- next;
- mes "[Cougar Gai]";
- mes "Hurrrry~~!!";
- mes "Sob~";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "- Let's bring Mr. Gai 1 Phracon -";
- mes "- And 5 Cyfars -";
- set NINJ_Q,4;
- close;
-
- case 4:
- mes "[Cougar Gai]";
- if(countitem(7053) < 5 || countitem(1010) < 1)
- {
- mes "Get me 1 Phracon and 5 Cyfars.";
- mes "What you have isn't what I said I need before.";
- mes "It's urgent, so please hurry.";
- close;
- }
- if(skillpoint >0)
- {
- mes "Please come back after you've learned all the basic skills.";
- close;
- }
- mes "Oh, Did you bring me the things I need?";
- mes "Let's see...";
- mes "Hmm~ I see you've brought me what I need.";
- next;
- mes "[Cougar Gai]";
- mes "Whew~ You've made it in time.";
- mes "You work better than I thought.";
- next;
- mes "[Cougar Gai]";
- mes "Very well.";
- mes "As promised, I'll officially turn you into a Ninja.";
- next;
- mes "[Cougar Gai]";
- mes "Let me properly introduce myself.";
- mes "I am an Upper Rank Ninja from the Doga Ninja Clan of the East.";
- mes "I'm operating as a Search Captain to find Kazuma-san, the leader of the village I'm from.";
- next;
- mes "[Cougar Gai]";
- mes "Tell you the truth, there's a lot of complication going on internally in the Ninja Clan lately, which was why I was hesitant to allow you to become a Ninja.";
- next;
- mes "[Cougar Gai]";
- mes "But seeing how Joe has complimented you highly and have completed my request well, I've changed my mind.";
- next;
- mes "[Cougar Gai]";
- mes "Being a Ninja is a lonely job.";
- mes "You must value your jobs but also never forget your humanity.";
- next;
- mes "[Cougar Gai]";
- mes "You're in for a lot of struggle from here on.";
- mes "Although we keep our identity secret, we operate in every single town.";
- next;
- mes "[Cougar Gai]";
- mes "The creation and usage of the basic equiptment of Ninjas is kept secret.";
- mes "The purchase and sale of Ninja gear is strictly regulated, so try to be careful.";
- next;
- mes "[Cougar Gai]";
- mes "Well, I hereby recognize you as a member of the Doga Ninja Clan.";
- next;
- mes "[Cougar Gai]";
- mes "Be quick as a Hawk from the Wind of the East.";
- mes "And light as a Leaf wavering in the Wind of the West!!";
- next;
- mes "[Cougar Gai]";
- mes "Haaa!!!!";
- next;
- nude;
- callfunc "Job_Change",Job_Ninja;
- callfunc "F_ClearJobVar";
- getitem 13010,1;
- close;
-
- }
- }
- else if(Class == Job_Novice && JobLevel < 10)
- {
- mes "[Cougar Gai]";
- mes "It looks like you need to train more.";
- mes "Come back after you gained more muscle.";
- close;
- }
- else if(Class == Job_Ninja)
- {
- mes "[Cougar Gai]";
- mes "Hmm, how have you been?";
- mes "You don't know when and where you may be asked to go on a mission, so don't put off your training for a single day.";
- close;
- }
- else if(Class == Job_Baby)
- {
- mes "[Cougar Gai]";
- mes "What the...! A super baby!";
- mes "Has this location been so exposed that even babies know where it is?";
- mes "Oh no~ Ah no~";
- close;
- }
- else
- {
- mes "[Cougar Gai]";
- mes "What the.. What's that stench?!";
- mes "I was wondering what was causing that stench -- it was you.";
- mes "Why, you're so young, there's still a milk mustache on your lips from drinking from your mother's bosoms.";
- mes "Get lost, squirt.";
+ mes "Hmm...";
+ mes "You and I...";
+ mes "We are fairly equal in";
+ mes "terms of combat ability.";
+ mes "Perhaps we can spar";
+ mes "together sometime.";
close;
}
}
-einbroch,184,194,3 script Suspicious Guy#nin 881,{
-
- if(Class == Job_Ninja)
- {
- mes "[Crimson Panther Joe]";
- mes "Oh, I see you've become a Ninja";
- mes "There will be many hardships in the future, so don't slack off in training.";
- close;
- }
- else if(!NINJ_Q)
- {
- mes "[Suspicious Guy]";
- mes "Hyaa~ This sure is a high spot.";
- mes "I've been to many different lands, but this is the highest place I've found so far.";
- mes "My only regret is that I can't spend more time looking around this spectacular view...";
+que_ng,30,65,3 script Cougar#nq 730,{
+ if (Upper == 2) {
+ mes "[Cougar]";
+ mes "I... I've never";
+ mes "seen a baby as";
+ mes "powerful as you!";
+ mes "G-get away, you";
+ mes "freak of nature!";
close;
}
- switch(NINJ_Q)
- {
- case 1:
- mes "[Suspicious Guy]";
- mes "Hiyaa~ This sure is a high place, right?";
- mes "I've traveled to many countries, but this is the first time I've seen such a tall building.";
- next;
- mes "[Suspicious Guy]";
- mes "The air is clean, the town is quiet, and all the houses are short and cozy where I come from.";
- next;
+ if (Class == Job_Novice) {
+ if (JobLevel < 10) {
+ mes "[Cougar]";
+ mes "Hm? Have you come to";
+ mes "learn how to be a Ninja?";
+ mes "You're not quite experienced";
+ mes "enough yet, so come back";
+ mes "after you're more familiar";
+ mes "with fighting monsters.";
+ close;
+ }
+ if (NINJ_Q == 0) {
mes "["+strcharinfo(0)+"]";
- mes "Ah! No way!";
- mes "Amatsu?!!!";
+ mes "Excuse me.";
+ mes "H-hello?";
next;
- mes "[Suspicious Guy]";
- mes "Nope.";
- mes "....";
+ mes "[Cougar]";
+ mes "...............................";
+ mes "How did you do that?";
next;
mes "["+strcharinfo(0)+"]";
- mes "Hmm~";
- mes "Not Amatsu...";
- mes "Then are you from Izlude?";
- next;
- mes "[Suspicious Guy]";
- mes "Yes, that's correct.";
- mes "I'm from Izlude.";
+ mes "Do what? I didn't";
+ mes "do anything, I don't think...";
next;
- mes "[Suspicious Guy]";
- mes "Due to personal reasons, I'm temporarily visiting this resource-rich country.";
+ mes "[Cougar]";
+ mes "H-How are you able to";
+ mes "see me? I'm supposed to";
+ mes "be invisible to the naked eye.";
+ mes "Ah, now I get it. Wildcat Joe";
+ mes "must have sent you to kill me! I won't fall for your tricks! Die!";
next;
mes "["+strcharinfo(0)+"]";
- mes "I see...";
- mes "Oh, do you happen to know a person named Field Cat Joe?";
- mes "He's a Ninja from Amatsu";
- mes "I need to find him.";
- next;
- mes "[Suspicious Guy]";
- mes "I don't know. I've never heard of such a name.";
- mes "I guess you must have some important reason why you must meet that person.";
+ mes "W-wait! I-I don't even";
+ mes "know who Wildcat Joe is!";
+ mes "Calm down, there's no";
+ mes "need to get violent!";
+ next;
+ mes "[Cougar]";
+ mes "What...?";
+ mes "How did you dodge";
+ mes "all of my attacks?";
+ mes "You've got some talent,";
+ mes "I'll give you that.";
next;
mes "["+strcharinfo(0)+"]";
- mes "Yes. I have to deliver this letter to him so that I may become a Ninja too.";
- next;
- mes "[Suspicious Guy]";
- mes "Hmm... Judging by your clothes, I see you're a traveler too.";
- next;
- mes "[Suspicious Guy]";
- mes "Come to think of it, you may be able to find the person you are looking for.";
- next;
- mes "[Suspicious Guy]";
- mes "I think I may have met him once in this village.";
- next;
- mes "[Suspicious Guy]";
- mes "I'd like to help you find him together, but I still have some things to do first...";
- next;
- mes "[Suspicious Guy]";
- mes "If you help me out with what I'm doing, then I will search for Crimson Panther Joe with you.";
- next;
- switch( select( "I'll just search for him alone.","Ok, I'll help you." ) )
- {
- case 1:
- mes "[Suspicious Guy]";
- mes "Ah, I understand.";
- mes "Good luck looking for him. If you need help later, come and talk to me before I leave...";
- close;
-
- case 2:
- mes "[Suspicious Guy]";
- mes "Hmm.. Let's see.";
- mes "I've come here to gather some raw materials so that I may create something I need.";
- next;
- mes "[Suspicious Guy]";
- mes "I will be seeking the materials I need too, but I'm always running short in raw materials.";
- mes "I'd be grateful if you could find me 1 Phracon and 5 Cyfar.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "- Let's go find 1 Phracon and 5 Cyfar.-";
- set NINJ_Q,2;
- close;
- }
-
- case 2:
- if(countitem(1010) < 1 || countitem(7053) < 5){
- mes "[Suspicious Guy]";
- mes "I asked for 1 Phracon and 5 Cyfar.";
- mes "It looks like you didn't gather the amount I've requested.";
- mes "I don't need it immediately, but I'd appreciate it if you could get those items for me.";
- close;
+ mes "...............................";
+ mes "I came here hoping";
+ mes "to change my job";
+ mes "to a Ninja.";
+ next;
+ mes "[Cougar]";
+ mes "...Oh. Is that all?";
+ mes "Hmm, you've got great";
+ mes "potential, but I can't help";
+ mes "you now. I've got too many";
+ mes "enemies, and I can't let my";
+ mes "guard down for even a second.";
+ next;
+ mes "[Cougar]";
+ mes "That Wildcat Joe is";
+ mes "completely ruthless...!";
+ mes "He could strike at any time!";
+ mes "He'll do anything to achieve";
+ mes "victory over his enemies!";
+ next;
+ mes "[Cougar]";
+ mes "Wait, wait, I just";
+ mes "thought of something.";
+ mes "Maybe you can help me out.";
+ mes "Do what I ask, and I'll teach";
+ mes "you a few of my skills if you";
+ mes "really want to be a Ninja.";
+ next;
+ if(select("Sure.:No, thanks.") == 2) {
+ mes "[Cougar]";
+ mes "Hm? Well, alright.";
+ mes "Still, I don't see";
+ mes "why we can't help";
+ mes "each other in this";
+ mes "little predicament...";
+ close;
}
- mes "[Suspicious Guy]";
- mes "I see you've accurately brought back what I need.";
- mes "Hmm... Very well.";
- mes "You've brought me the things I need, so I will not help you. Hmm...";
- next;
- mes "[Suspicious Guy]";
- mes "Let's see that letter.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "?????!!";
- next;
- mes "[Suspicious Guy]";
- mes "Hmm? Are you perhaps here because Gai sent you here?";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Gasp... Then you're Field Cat...";
- next;
- mes "[Suspicious Guy]";
- mes "Nope.";
- mes "I'm not Field Cat Joe, but Crimson Panther Joe.";
- mes "The only person who teases me as 'Field Cat' is Gai. Haha.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Sigh... Is that how it is?";
- next;
- mes "[Crimson Panther Joe]";
- mes "If you want to become a Ninja, you can't just trust your eyes.";
- next;
- mes "[Crimson Panther Joe]";
- mes "Very few Ninjas, if any, where the stereotypical outfits depicted in picture books. And even if they did, you'd be lucky to spot one.";
- next;
- mes "[Crimson Panther Joe]";
- mes "Don't forget that as soon as you reveal your identity as a Ninja, your life is at stake.";
- next;
- mes "[Crimson Panther Joe]";
- mes "Even who I've said I am or anything I've said so far could be false.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Ok...";
- mes "...........";
- next;
- mes "[Crimson Panther Joe]";
- mes "Well, Let's see it -- that letter.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "Ah, Yes.";
- mes "Here.";
- mes "-Rustle, rustle -";
- next;
- mes "[Crimson Panther Joe]";
- mes "Hmm~~ Let's see...";
- mes "I was thinking it might be another one of Gai's childish challenge letters, but I see it's a letter requesting truce.";
- next;
- mes "[Crimson Panther Joe]";
- mes "But there's no need for a truce for me...";
- mes "Thanks to you, I've already acquired all the raw materials needed to create a Kunai. Haha~";
- next;
- mes "[Crimson Panther Joe]";
- mes "I'll write you a reply, regardless. Seeing how you've acquired my raw materials so quickly, with a bit of a sharper eye, I believe you could become an excellent Ninja.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes ".....";
- next;
- mes "[Crimson Panther Joe]";
- mes "Wait a moment.";
- mes "I'll write you a response to Gai's letter right now.";
- mes "Hmm Hmm...";
- mes "...Scribble... Scribble...";
- next;
- mes "[Crimson Panther Joe]";
- mes "Here. Here it is.";
- mes "You'll know what's written inside as soon as you show *him* the letter.";
- next;
- mes "["+strcharinfo(0)+"]";
- mes "- You recieve the letter that Joe-";
- mes "- has just now scribbled down -";
- mes "- on paper.-";
- next;
- mes "[Crimson Panther Joe]";
- mes "Well, you better get a move on.";
- mes "If you want to become a Ninja.";
- next;
- mes "[Crimson Panther Joe]";
- mes "And if you do become a Ninja, we may end up meet each other frequently.";
- mes "I'll be looking forward to it.";
+ mes "[Cougar]";
+ mes "Great! Now, I wanted to";
+ mes "ask Wildcat Joe if he'd";
+ mes "agree to a temporary truce.";
+ mes "I'm aware that both of us";
+ mes "are out of weapons, so we";
+ mes "should get well equipped first.";
+ next;
+ mes "[Cougar]";
+ mes "Please take this letter,";
+ mes "and deliver it to Wildcat";
+ mes "Joe in Einbroch. He's a master";
+ mes "of disguise, so keep a careful";
+ mes "eye out for him. Ah, and look";
+ mes "for him in a high place.";
+ next;
+ mes "[Cougar]";
+ mes "Yeah, Wildcat Joe";
+ mes "always did have a thing";
+ mes "for hiding in high places.";
+ mes "Anyway, after you give him";
+ mes "the letter, come back and";
+ mes "let me know his answer.";
+ set NINJ_Q,1;
+ setquest 6015;
+ close;
+ }
+ else if(NINJ_Q == 1) {
+ mes "[Cougar]";
+ mes "Even if this task";
+ mes "isn't that urgent,";
+ mes "please hurry over to";
+ mes "Einbroch and deliver";
+ mes "my letter to Wildcat Joe.";
+ close;
+ }
+ else if(NINJ_Q == 2) {
+ mes "[Cougar]";
+ mes "Did you deliver that";
+ mes "letter to Wildcat Joe?";
+ mes "I still need to know his";
+ mes "response to my proposal";
+ mes "for a truce. Anyway, see";
+ mes "if you can needle him for it.";
+ close;
+ }
+ else if(NINJ_Q == 3) {
+ mes "[Cougar]";
+ mes "Ah, you've returned.";
+ mes "So did Wildcat Joe send";
+ mes "you back here with his";
+ mes "response? Great, great,";
+ mes "please let me read it.";
+ next;
+ mes "[Cougar]";
+ mes "What...?! How could he";
+ mes "reject my proposal for";
+ mes "a truce?! This can only";
+ mes "mean that he's made another";
+ mes "Kunai. Nuts! I have to catch";
+ mes "up to him, or I'm a goner!";
+ next;
+ mes "[Cougar]";
+ mes "Listen, you've got to help";
+ mes "me out again! I need you to";
+ mes "gather some materials so that";
+ mes "I can craft my own Kunai to fight Wildcat Joe. Then, I'll go ahead";
+ mes "and change your job to a Ninja.";
+ next;
+ mes "[Cougar]";
+ mes "All you need";
+ mes "to bring me is";
+ mes "^3355FF5 Cyfars^000000 and";
+ mes "^3355FF1 Phracon^000000.";
+ mes "Please get those";
+ mes "as quickly as you can!";
next;
mes "["+strcharinfo(0)+"]";
- mes "Yes... Well, I better get going...";
- next;
- mes "[Crimson Panther Joe]";
- mes "Ah, It would probably take you a considerably long time to reach Amatsu.";
- mes "Allow me to send you, "+strcharinfo(0)+" to Amatsu.";
- mes "We'll meet again..";
- delitem 1010,1;
- delitem 7053,5;
- set NINJ_Q,3;
- close2;
- warp "amatsu",113,127;
- end;
-
- case 3:
- mes "[Crimson Panther Joe]";
- mes "Hmm, I don't know what happened, but it seems you've returned to me without reaching Gai first.";
- next;
- mes "[Crimson Panther Joe]";
- mes "If you would like, I can send you to amatsu again.";
- mes "I'll take you back to Amatsu.";
- next;
- switch( select( "No thanks.","Yes, please send me to Amatsu." ) )
- {
- case 1 :
- mes "[Crimson Panther Joe]";
- mes "Hmm, very well.";
- mes "Decisions are best when decided yourself.";
- close;
-
- case 2:
- mes "[Crimson Panther Joe]";
- mes "Very well.";
- mes "I will now send you to Amatsu.";
- close2;
- warp "amatsu",113,127;
- end;
+ mes "Huh? That's funny,";
+ mes "Wildcat Joe actually";
+ mes "asked me to gather";
+ mes "those same materials.";
+ next;
+ mes "[Cougar]";
+ mes "Curses! Then that means...";
+ mes "You actually helped Joe";
+ mes "in crafting his Kunai! No!";
+ mes "I should have thought about";
+ mes "that earlier! Well, it's too";
+ mes "late now. Just h-hurry it up!";
+ set NINJ_Q,4;
+ changequest 6017,6018;
+ close;
+ }
+ else if(NINJ_Q == 4) {
+ if (countitem(7053) < 5 || countitem(1010) < 1) {
+ mes "[Cougar]";
+ mes "Hurry and bring";
+ mes "^3355FF5 Cyfars^000000 and";
+ mes "^3355FF1 Phracon^000000 to me,";
+ mes "so that I can craft";
+ mes "my own Kunai to use";
+ mes "against Wildcat Joe!";
+ close;
}
-
- case 4:
- mes "[Crimson Panther Joe]";
- mes "Is Gai bothering you with a lot of bothersome tasks?";
- mes "Don't give up -- it'll all come in handy during your training.";
+ if (Skillpoint != 0) {
+ mes "[Cougar]";
+ mes "Whoa, whoa...";
+ mes "You still have some";
+ mes "leftover Skill Points.";
+ mes "You'd better spend all";
+ mes "of them before you";
+ mes "change jobs, right?";
+ close;
+ }
+ mes "[Cougar]";
+ mes "Ah, you're back with";
+ mes "everything that I need.";
+ mes "You've come earlier than";
+ mes "I expected, eh? Great,";
+ mes "as promised, I'll turn";
+ mes "you into a Ninja.";
+ next;
+ mes "[Cougar]";
+ mes "Let me formally introduce";
+ mes "myself. I am High Ninja Cougar";
+ mes "in the Touga Ninja Corps, and";
+ mes "I'm in charge of the search";
+ mes "party to find Sir Kazma.";
+ next;
+ mes "[Cougar]";
+ mes "Sir Kazma is the chief";
+ mes "of my village, but he's";
+ mes "run away. This has resulted";
+ mes "in an internal conflict within";
+ mes "the Ninja Corps. Things are";
+ mes "pretty unstable right now...";
+ next;
+ mes "[Cougar]";
+ mes "I initially didn't want to";
+ mes "accept you as a Ninja because";
+ mes "of this complicated situation.";
+ mes "However, you've proven that";
+ mes "you're truly worthy of joining";
+ mes "the Ninja ranks.";
+ next;
+ mes "[Cougar]";
+ mes "According to his letter, even";
+ mes "Joe thinks highly of you. Just";
+ mes "remember that, as a Ninja, your";
+ mes "mission is your highest priority. But don't let mission objectives";
+ mes "supercede your conscience.";
+ next;
+ mes "[Cougar]";
+ mes "''Secrecy above all else.''";
+ mes "To keep our secrets in the";
+ mes "shadows, you can only buy";
+ mes "or sell Ninja weapons with";
+ mes "authorized dealers. Please";
+ mes "keep that in mind.";
+ next;
+ mes "[Cougar]";
+ mes "As of today, you are";
+ mes "now a proud member of the";
+ mes "Touga Ninja Corps. Be as";
+ mes "agile as the wind, and as";
+ mes "quiet as the falling shadows.";
+ callfunc "Job_Change",Job_Ninja;
+ set NINJ_Q,5;
+ getitem 13010,1; // Asura
+ completequest 6018;
+ close;
+ }
+ else {
+ mes "[Cougar]";
+ mes "How have you been?";
+ mes "Train hard: you want";
+ mes "to be able to vanish";
+ mes "without a trace. If you";
+ mes "can do that, you'll get";
+ mes "the respect of any Ninja~";
close;
+ }
+ }else{
+ if (Class == Job_Ninja) {
+ mes "[Cougar]";
+ mes "How have you been?";
+ mes "Train hard: you want";
+ mes "to be able to vanish";
+ mes "without a trace. If you";
+ mes "can do that, you'll get";
+ mes "the respect of any Ninja~";
+ close;
+ }else{
+ mes "[Cougar]";
+ mes "What...?";
+ mes "How were you able";
+ mes "to find me hidden";
+ mes "in the shadows?!";
+ mes "You must be more than";
+ mes "a common adventurer, eh?";
+ close;
+ }
}
}
+
+einbroch,184,194,3 script Suspicious Man#nq 881,{
+ if (NINJ_Q == 1) {
+ mes "[Suspicious Man]";
+ mes "I've traveled to many";
+ mes "countries, but I've never";
+ mes "been on a building as high";
+ mes "as Einbroch Tower. All the";
+ mes "buildings in my hometown";
+ mes "are tiny in comparison...";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "Oh, are you from";
+ mes "Amatsu? I'm looking";
+ mes "for someone named";
+ mes "Wildcat Joe from there.";
+ next;
+ mes "[Suspicious Man]";
+ mes "...No. No, I'm actually";
+ mes "from Izlude, and I'm only";
+ mes "here in Einbroch for some";
+ mes "minerals. Tell me, why are";
+ mes "you looking for this Wildcat Joe?";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "Well, I need to deliver";
+ mes "this letter to him and";
+ mes "get his response so that";
+ mes "I can become a Ninja.";
+ next;
+ mes "[Suspicious Man]";
+ mes "Really? Now that I think";
+ mes "about it, I do think that I've";
+ mes "run once or twice into him";
+ mes "in this town. Though, he prefers to be called ''Red Leopard Joe,''";
+ mes "instead of ''Wildcat Joe.''";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "I really want to help you";
+ mes "find him, but first I need";
+ mes "to find the minerals that";
+ mes "I'm looking for. If you don't";
+ mes "mind, would you help me?";
+ mes "Then I can help you find Joe.";
+ next;
+ if(select("Don't worry, I'll find him alone.:Sure, I'll help you.") == 1) {
+ mes "[Suspicious Man]";
+ mes "You sure about that...?";
+ mes "Red Leopard Joe is a true";
+ mes "master of disguise. You'll";
+ mes "need all the help you can";
+ mes "get to find him...";
+ close;
+ }
+ mes "[Suspicious Man]";
+ mes "Great, I'm glad to";
+ mes "hear that. Please";
+ mes "help me find";
+ mes "^3355FF5 Cyfars^000000 and";
+ mes "^3355FF1 Phracon^000000.";
+ set NINJ_Q,2;
+ changequest 6015,6016;
+ close;
+ }
+ else if(NINJ_Q == 2) {
+ if (countitem(7053) < 5 || countitem(1010) < 1) {
+ mes "[Suspicious Man]";
+ mes "Please bring";
+ mes "^3355FF5 Cyfars^000000 and";
+ mes "^3355FF1 Phracon^000000 to me as";
+ mes "soon as you can. Then,";
+ mes "I can help you find";
+ mes "Red Leopard Joe.";
+ close;
+ }
+ mes "[Suspicious Man]";
+ mes "Good, good. You've";
+ mes "brought the minerals...";
+ mes "Now, it's my turn to";
+ mes "help you now. Here,";
+ mes "let me see that letter.";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "?????!!";
+ next;
+ mes "[Suspicious Man]";
+ mes "Why? Didn't you bring Cougar's letter for me?";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "Are you...";
+ mes "Are you Wildcat Joe?";
+ next;
+ mes "[Suspicious Man]";
+ mes "...Yes, but I prefer to";
+ mes "be called Red Leopard Joe.";
+ mes "Cougar sent you to me, right?";
+ mes "He's the only one who calls";
+ mes "me that. So you want to be";
+ mes "a Ninja, eh? Hmm, alright.";
+ next;
+ mes "[Red Leopard Joe]";
+ mes "If you want to be a Ninja,";
+ mes "you should always be careful";
+ mes "of what you see and what you trust. Don't forget that if your";
+ mes "secrets are ever discovered, then you're finished as a Ninja.";
+ next;
+ mes "[Red Leopard Joe]";
+ mes "Remember to move";
+ mes "quickly, and to always";
+ mes "vanish without a trace.";
+ mes "To remain hidden in the";
+ mes "shadows is really our";
+ mes "ultimate power.";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "I see...";
+ mes "...........";
+ next;
+ mes "[Red Leopard Joe]";
+ mes "For now, let me read";
+ mes "this letter. Let's see...";
+ mes "Hm. I thought that Cougar";
+ mes "would want to challenge me";
+ mes "again, but he actually wants";
+ mes "a temporary truce? Hah!";
+ next;
+ mes "[Red Leopard Joe]";
+ mes "Thanks to your help,";
+ mes "I now have the minerals";
+ mes "I need to construct a Kunai!";
+ mes "Hahaha! I won't agree to a truce when I have the advantage!";
+ next;
+ mes "[Red Leopard Joe]";
+ mes "Anyway, let me write my";
+ mes "response to him. I'll also";
+ mes "give you my recommendation...";
+ mes "I think you'll make a very fine";
+ mes "Ninja, even if I did trick you";
+ mes "just earlier. Heh heh heh!";
+ next;
+ mes "["+strcharinfo(0)+"]";
+ mes "......";
+ mes ".........";
+ mes "............";
+ next;
+ mes "[Red Leopard Joe]";
+ mes "Here you go.";
+ mes "Please bring this";
+ mes "letter to Cougar.";
+ mes "It'll take a while to";
+ mes "return to Amatsu, so let";
+ mes "me send you there directly...";
+ delitem 1010,1; // Phracon
+ delitem 7053,5; // Cyfar
+ set NINJ_Q,3;
+ changequest 6016,6017;
+ close2;
+ warp "amatsu",113,127;
+ end;
+ }
+ else if(NINJ_Q == 3) {
+ mes "[Red Leopard Joe]";
+ mes "Eh? I'm not sure what";
+ mes "happened, but it seems";
+ mes "that you haven't delivered";
+ mes "my response to Cougar yet.";
+ mes "Shall I directly send you";
+ mes "to Amatsu right now?";
+ next;
+ if(select("No, thanks.:Yes, please.") == 1) {
+ mes "[Red Leopard Joe]";
+ mes "Alright. Well, I was";
+ mes "just trying to save";
+ mes "you some time.";
+ close;
+ }
+ mes "[Red Leopard Joe]";
+ mes "Okay, then.";
+ mes "Goodbye for now.";
+ close2;
+ warp "amatsu",113,127;
+ end;
+ }
+ else if(NINJ_Q == 4) {
+ mes "[Red Leopard Joe]";
+ mes "Cougar asked you to";
+ mes "gather some materials";
+ mes "too? Oh well, I suppose";
+ mes "that I can't blame him.";
+ mes "Besides, I should be able";
+ mes "to beat him in a fair fight~";
+ close;
+ }
+ else if(NINJ_Q == 5 && Class == Job_Ninja) {
+ mes "[Red Leopard Joe]";
+ mes "Oh, you're a Ninja~";
+ mes "I hope you continue to";
+ mes "train yourself and master";
+ mes "all the Ninja skills that";
+ mes "you can. Always remember";
+ mes "to blend into the shadows.";
+ close;
+ }
+ else {
+ mes "[Tourist]";
+ mes "I've traveled to many";
+ mes "countries, but I've never";
+ mes "been on a building as high";
+ mes "as Einbroch Tower. All the";
+ mes "buildings in my hometown";
+ mes "are tiny in comparison...";
+ close;
+ }
+} \ No newline at end of file
diff --git a/npc/jobs/1-1e/taekwon.txt b/npc/jobs/1-1e/taekwon.txt
index 3c9064193..1a099ef2c 100644
--- a/npc/jobs/1-1e/taekwon.txt
+++ b/npc/jobs/1-1e/taekwon.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= Tsuyuki & Samuray22
//===== Current Version: =====================================
-//= 1.2
+//= 1.3
//===== Compatible With: =====================================
//= eAthena/Freya
//===== Description: =========================================
@@ -12,6 +12,7 @@
//= 1.0 Replaced previous TK Job Quest with this one [Tsuyuki]
//= 1.1 Rewrote to the Aegis Standars. [Samuray22]
//= 1.2 Fixed position the npc is facing. [Kisuka]
+//= 1.3 Added Quest Log commands. [Kisuka]
//============================================================
@@ -106,6 +107,7 @@ L_change:
mes "spiritual training. Take a deep";
mes "breath, speak to me when ready.";
set TK_Q, 2;
+ setquest 6001;
close;
}
mes "[Phoenix]";
@@ -116,6 +118,7 @@ L_change:
next;
set TAEK_Q, BaseLevel;
set TK_Q, 1;
+ setquest 6000;
mes "[Phoenix]";
mes "I understand this is not an";
mes "easy task for Novices, but you";
@@ -138,6 +141,7 @@ L_change:
case 1:
if(BaseLevel > TAEK_Q) {
set TK_Q, 2;
+ changequest 6000,6001;
mes "[Phoenix]";
mes "Good. I sense that you";
mes "are more in tune with your";
@@ -176,6 +180,30 @@ L_change:
mes "you generally respond?";
next;
switch(select( "I face it head on.:Avoid it somehow.:Regroup and analyze the problem.")) {
+ case 1:
+ mes "[Phoenix]";
+ mes "Yes, that is the answer";
+ mes "I wanted. Even if you cannot";
+ mes "handle a problem at first, we";
+ mes "can only benefit from such";
+ mes "strong determination. Don't";
+ mes "let any obstacle stop you.";
+ next;
+ mes "[Phoenix]";
+ mes "Even if you fail, you";
+ mes "can only learn from the";
+ mes "experience when you give";
+ mes "your all. Half-hearted";
+ mes "attempts rarely yield";
+ mes "fruitful results.";
+ next;
+ mes "[Phoenix]";
+ mes "Seeing as you already";
+ mes "understand the importance";
+ mes "of one's will, we'll proceed";
+ mes "to the next question.";
+ next;
+ break;
case 2:
mes "[Phoenix]";
mes "Fool! How do you expect";
@@ -210,29 +238,6 @@ L_change:
mes "as well as what you define as";
mes "failure. Then, return to me.";
close;
- case 1:
- mes "[Phoenix]";
- mes "Yes, that is the answer";
- mes "I wanted. Even if you cannot";
- mes "handle a problem at first, we";
- mes "can only benefit from such";
- mes "strong determination. Don't";
- mes "let any obstacle stop you.";
- next;
- mes "[Phoenix]";
- mes "Even if you fail, you";
- mes "can only learn from the";
- mes "experience when you give";
- mes "your all. Half-hearted";
- mes "attempts rarely yield";
- mes "fruitful results.";
- next;
- mes "[Phoenix]";
- mes "Seeing as you already";
- mes "understand the importance";
- mes "of one's will, we'll proceed";
- mes "to the next question.";
- next;
}
mes "[Phoenix]";
mes "On your travels, you will";
@@ -331,6 +336,7 @@ L_change:
mes "while. When your mind is calm,";
mes "come and speak to me.";
set TK_Q, 3;
+ changequest 6001,6002;
close;
case 3:
mes "[Phoenix]";
@@ -369,6 +375,7 @@ L_change:
mes "shirk your training, or bring";
mes "shame to Taekwon Do.";
next;
+ completequest 6002;
callfunc "Job_Change",Job_Taekwon;
callfunc "F_ClearJobVar";
getitem 2101,1; // Guard[0]
diff --git a/npc/jobs/2-1/assassin.txt b/npc/jobs/2-1/assassin.txt
index ff9e9bf14..f22c12dfa 100644
--- a/npc/jobs/2-1/assassin.txt
+++ b/npc/jobs/2-1/assassin.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 3.2
+//= 3.3
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -45,6 +45,7 @@
//= 3.1a Follow up fix. Forgot to replace a label. [L0ne_W0lf]
//= 3.1b Fixed waiting room not enabled in some situations [Zephyrus]
//= 3.2 Fixed a question having all correct answers. [brianluau]
+//= 3.3 Added Quest Log commands. [Kisuka]
//============================================================
in_moc_16,19,33,1 script Guildsman#asn 55,{
@@ -123,10 +124,12 @@ in_moc_16,19,33,1 script Guildsman#asn 55,{
mes "......";
next;
delitem 1008,1; //Frozen_Heart
+ changequest 8007,8008;
mes "[Assassin Expert 'Huey']";
mes "Alright!";
mes "You've been approved!";
next;
+ completequest 8008;
callfunc "Job_Change",Job_Assassin;
callfunc "F_ClearJobVar"; // clears all job variables for the current player
mes "[Assassin Expert 'Huey']";
@@ -250,6 +253,11 @@ in_moc_16,19,33,1 script Guildsman#asn 55,{
mes "you to the office.";
close2;
set ASSIN_Q,0;
+ if(checkquest(8000) != -1) {
+ changequest 8000,8001;
+ }else{
+ setquest 8001;
+ }
warp "in_moc_16",19,76;
end;
case 2:
@@ -542,6 +550,7 @@ OnTouch:
close2;
set ASSIN_Q3,1;
set ASSIN_Q,1;
+ changequest 8001,8002;
warp "in_moc_16",19,144;
end;
}
@@ -564,6 +573,7 @@ OnTouch:
close2;
set ASSIN_Q3,2;
set ASSIN_Q,1;
+ changequest 8001,8002;
warp "in_moc_16",19,144;
end;
}
@@ -590,6 +600,7 @@ OnTouch:
set ASSIN_Q,0;
set ASSIN_Q3,0;
set ASSIN_Q2,0;
+ erasequest 8001;
warp "moc_fild16",206,229;
end;
}
@@ -616,6 +627,7 @@ OnTouch:
next;
set ASSIN_Q3,1;
set ASSIN_Q,1;
+ changequest 8001,8002;
warp "in_moc_16",19,144;
end;
}
@@ -629,6 +641,7 @@ OnTouch:
next;
set ASSIN_Q3,2;
set ASSIN_Q,1;
+ changequest 8001,8002;
warp "in_moc_16",19,144;
end;
}
@@ -976,6 +989,7 @@ L_AskQuestions:
mes "" + .@assassin_t + " percent...";
if (.@assassin_t > 80) {
set ASSIN_Q2,5;
+ changequest 8002,8003;
mes "Well done.";
mes "You pass.";
next;
@@ -1012,6 +1026,7 @@ L_AskQuestions:
mes "" + .@assassin_t + " points...";
if (.@assassin_t > 80) {
set ASSIN_Q2,5;
+ changequest 8002,8003;
next;
mes "[The Anonymous One]";
mes "You didn't fail this time! But you're not done just yet. You have another test ahead of you. Once you proceed, you will be informed about your next trial.";
@@ -1173,6 +1188,7 @@ OnTouch:
set ASSIN_Q,0;
set ASSIN_Q3,0;
set ASSIN_Q2,0;
+ changequest 8003,8000;
warp "in_moc_16",19,13;
end;
}
@@ -1246,6 +1262,7 @@ OnMyMobDead:
if (.MyMobs < 1) {
mapannounce "in_moc_16","You seem to be doing quite well. Keep it up!",bc_map;
set ASSIN_Q,3;
+ changequest 8003,8004;
donpcevent "timestopper#1::OnEnable";
donpcevent "Keeper of the Door#ASN::OnEnable";
donpcevent "Beholder#ASNTEST::OnResetmob";
@@ -1502,6 +1519,7 @@ OnTouch:
set ASSIN_Q,0;
set ASSIN_Q2,0;
set ASSIN_Q3,0;
+ changequest 8004,8000;
savepoint "in_moc_16",18,14;
warp "in_moc_16",18,14;
donpcevent "Standby Room#ASNTEST::OnStart";
@@ -1569,6 +1587,7 @@ OnTouch:
mes "You may now proceed to our Guildmaster's room. Good luck!!";
close2;
set ASSIN_Q,5;
+ changequest 8004,8005;
warp "in_moc_16",181,183;
end;
}
@@ -1578,6 +1597,7 @@ OnTouch:
if (ASSIN_Q == 5 || ASSIN_Q == 6) {
warp "in_moc_16",181,183;
set ASSIN_Q,ASSIN_Q+1;
+ changequest 8005,8006;
}
else {
mapannounce "in_moc_16",strcharinfo(0)+" has entered 'Guildmaster's room.'",bc_map;
@@ -2100,6 +2120,7 @@ OnTouch:
mes "You, " + strcharinfo(0) + ", have chosen to live as an Assassin. May you learn our ways and be an honorable example to others.";
savepoint "morocc",100,100;
getitem 1008,1; //Frozen_Heart
+ changequest 8006,8007;
next;
mes "[Guildmaster]";
mes "Okay, all of you may go back to your positions. I will send you to the entrance as well. Let's move...";
diff --git a/npc/jobs/2-1/blacksmith.txt b/npc/jobs/2-1/blacksmith.txt
index fad707f21..d09cb3a80 100644
--- a/npc/jobs/2-1/blacksmith.txt
+++ b/npc/jobs/2-1/blacksmith.txt
@@ -7,7 +7,7 @@
//= Optimized and further edited by kobra_k88.
//= Further bugfixed and tested by Lupus
//===== Current Version: =====================================
-//= 2.6
+//= 2.7
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -38,6 +38,7 @@
//= 2.5 Krongast is in Lighthalzen. (DarkValmir) [L0ne_W0lf]
//= 2.6 Fixed 4 bugs [Lupus]
//= 2.6a Typo fix [Yommy]
+//= 2.7 Added Quest Log commands. [Kisuka]
//==============================================================
ein_in01,18,28,4 script Guildsman#BLS 731,{
@@ -163,6 +164,7 @@ ein_in01,18,28,4 script Guildsman#BLS 731,{
mes "One of our Blacksmiths in Einbech, ^8E6B23Geschupenschte^000000 has sent us word that he's short on help. Your first test of character will be to help him out.";
next;
set BSMITH_Q,1;
+ setquest 2000;
mes "[Altiregen]";
mes "Be careful";
mes "and good luck!";
@@ -217,6 +219,7 @@ ein_in01,18,28,4 script Guildsman#BLS 731,{
next;
if (select("I want to change my job quickly! But...oh well.:Grrr! Enough is enough!") == 1) {
set BSMITH_Q,16;
+ changequest 2013,2014;
mes "[Altiregen]";
mes "I'm sorry, but I'm sure you understand, right? We can't just casually accept anybody into";
mes "our guild!";
@@ -246,6 +249,9 @@ ein_in01,18,28,4 script Guildsman#BLS 731,{
else if (BSMITH_Q == 17 && countitem(1005) > 0 && JobLevel > 39) {
mes "[Altiregen]";
mes "Excellent, I can tell by the twinkle in your eye that you were successful. I can now bestow upon you the gift of the smithing, the art of the Blacksmith.";
+ if(checkquest(2015) != -1) {
+ changequest 2015,2016;
+ }
next;
set .@joblvl,JobLevel;
callfunc "Job_Change",Job_Blacksmith;
@@ -255,6 +261,7 @@ ein_in01,18,28,4 script Guildsman#BLS 731,{
mes "and greed.";
next;
delitem 1005,1; //Hammer_Of_Blacksmith
+ completequest 2016;
mes "[Altiregen]";
mes "Here is a little";
mes "gift to mark the";
@@ -458,6 +465,11 @@ L_AskQuestions:
mes "Let's see...your score is..." + .@black_q + " points.";
if (.@black_q == 100) {
set BSMITH_Q,3;
+ if(checkquest(2001) != -1) {
+ changequest 2001,2002;
+ }else{
+ changequest 2000,2002;
+ }
mes "Oh ho ho~";
mes "You'll have";
mes "no problem";
@@ -470,6 +482,9 @@ L_AskQuestions:
close;
}
set BSMITH_Q,2;
+ if(checkquest(2001) == -1) {
+ changequest 2000,2001;
+ }
mes ".............";
next;
mes "[Geschupenschte]";
@@ -531,15 +546,15 @@ L_AskQuestions:
next;
switch(rand(1,5)) {
//Steel, Rotten_Bandage, Blue_Gemstone, Arc_Wand
- case 1: setarray .@items[0], 999,1, 930,1, 717,2, 1610,1, 4; break;
+ case 1: setarray .@items[0], 999,1, 930,1, 717,2, 1610,1, 4; changequest 2002,2003; break;
//Sparkling_Dust, Skel_Bone, Zargon, Gladius
- case 2: setarray .@items[0], 1001,2, 932,1, 912,1, 1219,1, 5; break;
+ case 2: setarray .@items[0], 1001,2, 932,1, 912,1, 1219,1, 5; changequest 2002,2004; break;
//Coal, Shell, Boody_Red, Tsurugi
- case 3: setarray .@items[0], 1003,1, 935,2, 990,2, 1119,1, 6; break;
+ case 3: setarray .@items[0], 1003,1, 935,2, 990,2, 1119,1, 6; changequest 2002,2005; break;
//Iron_Ore, Eye_Bandage, Blue_Gemstone, Arbalest
- case 4: setarray .@items[0], 1002,1, 2212,1, 717,2, 1713,1, 7; break;
+ case 4: setarray .@items[0], 1002,1, 2212,1, 717,2, 1713,1, 7; changequest 2002,2006; break;
//Iron, Green_Herb, Animal's_Skin, Ring_Pommel_Saber
- default: setarray .@items[0], 998,1, 511,1, 919,2, 1122,1, 8; break;
+ default: setarray .@items[0], 998,1, 511,1, 919,2, 1122,1, 8; changequest 2002,2007; break;
}
set BSMITH_Q,.@items[8];
mes "[Geschupenschte]";
@@ -618,6 +633,9 @@ L_AskQuestions:
case 9:
mes "Okay, now take this to ^8E6B23Baisulist^000000 in Geffen of Rune-Midgarts Kingdom. Simply deliver it and bring me the receipt.";
getitem 1610,1; //Arc_Wand
+ if(checkquest(2003) != -1) {
+ changequest 2003,2008;
+ }
next;
mes "[Geschupenschte]";
mes "Hmm...?";
@@ -640,6 +658,9 @@ L_AskQuestions:
case 10:
mes "Okay, now take this to ^8E6B23Wickebine^000000 in Morroc of Rune-Midgarts Kingdom. Simply deliver it and bring me the receipt.";
getitem 1219,1; //Gladius
+ if(checkquest(2004) != -1) {
+ changequest 2004,2009;
+ }
next;
mes "[Geschupenschte]";
mes "Hmm...?";
@@ -662,6 +683,9 @@ L_AskQuestions:
Case 11:
mes "Okay, now take this to ^8E6B23Krongast^000000 in Lighthalzen. Simply deliver it and bring me the receipt.";
getitem 1119,1; //Tsurugi
+ if(checkquest(2005) != -1) {
+ changequest 2005,2010;
+ }
next;
mes "[Geschupenschte]";
mes "Hmm...?";
@@ -685,6 +709,9 @@ L_AskQuestions:
case 12:
mes "Okay, now take this to ^8E6B23Talpiz^000000 in Payon of Rune-Midgarts Kingdom. Simply deliver this and bring me the receipt.";
getitem 1713,1; //Arbalest
+ if(checkquest(2006) != -1) {
+ changequest 2006,2011;
+ }
next;
mes "[Geschupenschte]";
mes "Hmm...?";
@@ -706,6 +733,9 @@ L_AskQuestions:
case 13:
mes "Okay, now take this to ^8E6B23Bismarc^000000 in Hugel. Simply deliver this and bring back the receipt.";
getitem 1122,1; //Ring_Pommel_Saber
+ if(checkquest(2007) != -1) {
+ changequest 2007,2012;
+ }
next;
mes "[Geschupenschte]";
mes "Hmm...?";
@@ -800,6 +830,21 @@ L_AskQuestions:
if (countitem(1073) > 0) {
set BSMITH_Q,15;
delitem 1073,1; //Merchant_Voucher_1
+ if(checkquest(2008) != -1) {
+ changequest 2008,2013;
+ }
+ else if(checkquest(2009) != -1) {
+ changequest 2009,2013;
+ }
+ else if(checkquest(2010) != -1) {
+ changequest 2010,2013;
+ }
+ else if(checkquest(2011) != -1) {
+ changequest 2011,2013;
+ }
+ else {
+ changequest 2012,2013;
+ }
mes "[Geschupenschte]";
mes "Oh ho ho~";
mes "Great!";
@@ -1460,6 +1505,7 @@ ein_in01,24,41,5 script Blacksmith Guildsman#moc 726,{
mes "However, don't let your early success make you overconfident. A Blacksmith's life isn't a picnic. As proof that you have passed the test, I give you this Hammer of Blacksmith.";
set BSMITH_Q,17;
getitem 1005,1; //Hammer_Of_Blacksmith
+ changequest 2014,2015;
next;
mes "[Mitehmaeeuh]";
mes "Take this Hammer";
diff --git a/npc/jobs/2-1/hunter.txt b/npc/jobs/2-1/hunter.txt
index b28599000..e643c81bf 100644
--- a/npc/jobs/2-1/hunter.txt
+++ b/npc/jobs/2-1/hunter.txt
@@ -5,7 +5,7 @@
//= Converted by kobra_k88
//= Further bugfixed and tested by Lupus
//===== Current Version: =====================================
-//= 3.4
+//= 3.5
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -50,6 +50,7 @@
//= 3.3 Added missing next. [L0ne_W0lf]
//= 3.4 Corrected some Issues with the Waiting Room. (bugreport:1890) [Samuray22]
//= -Deleted a Unnecesary Next; on Hunter Guildsman#hnt. (bugreports:1665,2239,2179)
+//= 3.5 Added Quest Log commands. [Kisuka]
//============================================================
// Notices in the old Hunter Guild.
@@ -180,6 +181,7 @@ hu_in01,386,373,4 script Hunter Guildsman#hnt 727,{
mes "Tada~ Congratulations!";
mes "You look great as a Hunter!!";
set .@joblvl,joblevel;
+ completequest 4013;
callfunc "Job_Change",Job_Hunter;
callfunc "F_ClearJobVar"; // clears all job variables for the current player
next;
@@ -220,6 +222,9 @@ hu_in01,386,373,4 script Hunter Guildsman#hnt 727,{
mes "shall we begin?";
next;
if (select("Yes~ Let's start now.:No, I'll be back later.") == 1) {
+ if(checkquest(4000) == -1) {
+ setquest 4000;
+ }
mes "[Hunter Sherin]";
mes "Listen carefully to the scenarios I describe. When I ask a question, you choose an answer. Pretty simple, don't you think?";
next;
@@ -346,6 +351,7 @@ L_AskQuestions:
next;
if (.@hunter_t == 100) {
set HNTR_Q,2;
+ changequest 4000,4001;
mes "[Hunter Sherin]";
mes "Well done! Your answers show you've got the right outlook on life. You definitely have the right qualities to become a Hunter~";
next;
@@ -355,6 +361,7 @@ L_AskQuestions:
}
else if (.@hunter_t == 90) {
set HNTR_Q,2;
+ changequest 4000,4001;
mes "[Hunter Sherin]";
mes "Well, I'm looking at your answers and your score isn't perfect. But I'll let you pass anyway. I don't know what our Guildmaster will think, though.";
next;
@@ -464,19 +471,19 @@ L_GiveQuestItems:
next;
switch(rand(1,7)) {
//Claw_Of_Desert_Wolf, Wooden_Block, White_Herb
- case 1: setarray .@items[0], 7030,5, 1019,5, 509,3, 3; break;
+ case 1: setarray .@items[0], 7030,5, 1019,5, 509,3, 3; changequest 4001,4002; break;
//Bill_Of_Birds, Skel_Bonem Green_Herb
- case 2: setarray .@items[0], 925,3, 932,5, 511,3, 4; break;
+ case 2: setarray .@items[0], 925,3, 932,5, 511,3, 4; changequest 4001,4003; break;
//Posionous_Canine, Animal's_Skin, Red_Herb
- case 3: setarray .@items[0], 937,3, 919,3, 507,5, 5; break;
+ case 3: setarray .@items[0], 937,3, 919,3, 507,5, 5; changequest 4001,4004; break;
//Dokkaebi_Horn, Piece_Of_Egg_Shell, Fluff
- case 4: setarray .@items[0], 1021,3, 7032,3, 914,10, 6; break;
+ case 4: setarray .@items[0], 1021,3, 7032,3, 914,10, 6; changequest 4001,4005; break;
//Shell, Worm_Peelings, Yellow_Herb
- case 5: setarray .@items[0], 935,9, 955,9, 508,9, 7; break;
+ case 5: setarray .@items[0], 935,9, 955,9, 508,9, 7; changequest 4001,4006; break;
//Tooth_Of_Bat, Sticky_Mucus, Bear's_Foot
- case 6: setarray .@items[0], 913,3, 938,1, 948,1, 8; break;
+ case 6: setarray .@items[0], 913,3, 938,1, 948,1, 8; changequest 4001,4007; break;
//Porcupine_Spike, Yoyo_Tailm Acorn
- case 7: setarray .@items[0], 1027,2, 942,1, 1026,1, 9; break;
+ case 7: setarray .@items[0], 1027,2, 942,1, 1026,1, 9; changequest 4001,4008; break;
}
mes "[Demon Hunter]";
mes "Hmm. ^660000"+.@items[1]+" "+getitemname(.@items[0])+"^000000 to use for arrow tips. ^660000"+.@items[3]+" "+getitemname(.@items[2])+"^000000 to use here and there. And ^660000"+.@items[5]+" "+getitemname(.@items[4])+"^000000 please.";
@@ -532,6 +539,27 @@ L_GiveQuestItems:
mes "[Demon Hunter]";
mes "You brought all of the necessary materials... You can get directions to the testing area from our Guildmaster who is currently in the Payon Central Palace.";
set HNTR_Q,.@items[6];
+ if(checkquest(4002) != -1) {
+ changequest 4002,4009;
+ }
+ else if(checkquest(4003) != -1) {
+ changequest 4003,4009;
+ }
+ else if(checkquest(4004) != -1) {
+ changequest 4004,4009;
+ }
+ else if(checkquest(4005) != -1) {
+ changequest 4005,4009;
+ }
+ else if(checkquest(4006) != -1) {
+ changequest 4006,4010;
+ }
+ else if(checkquest(4007) != -1) {
+ changequest 4007,4010;
+ }
+ else {
+ changequest 4008,4010;
+ }
delitem .@items[0],.@items[1];
delitem .@items[2],.@items[3];
delitem .@items[4],.@items[5];
@@ -611,6 +639,7 @@ payon_in03,131,7,3 script Hunter#htnGM 59,{
mes "[Hunter Guildmaster]";
mes "Well, then. Your arrows are probably still being made, so you can use mine to take the test.";
set HNTR_Q,12;
+ changequest 4009,4011;
getitem 1751,200; //Silver_Arrow
close2;
warp "job_hunte",176,22;
@@ -697,6 +726,7 @@ payon_in03,131,7,3 script Hunter#htnGM 59,{
set HNTR_Q,17;
savepoint "payon",104,99;
getitem 1007,1; //Penetration
+ changequest 4012,4013;
next;
mes "[Hunter Guildmaster]";
mes "Okay, here it is. Now, go back to the Hunter Guild. I have some more business left to do here, but I hope you can become a Hunter soon.";
@@ -773,6 +803,7 @@ payon_in02,21,31,1 script Hunter#htnGM2 59,{
mes "[Hunter Guildmaster]";
mes "Good luck.";
set HNTR_Q,12;
+ changequest 4010,4011;
warp "job_hunte",176,22;
cutin "job_huntermaster",255;
end;
@@ -1207,6 +1238,7 @@ OnTouch:
donpcevent "Manager#hnt::OnReset";
donpcevent "Waiting Room#hnt::OnStart";
set HNTR_Q,16;
+ changequest 4011,4012;
savepoint "payon",104,99;
if (rand(1))
warp "payon_in02",21,27;
diff --git a/npc/jobs/2-1/knight.txt b/npc/jobs/2-1/knight.txt
index 39e3c4d98..e7cc08a12 100644
--- a/npc/jobs/2-1/knight.txt
+++ b/npc/jobs/2-1/knight.txt
@@ -5,7 +5,7 @@
//= Converted by kobra_k88
//= Further bugfixed and tested by Lupus
//===== Current Version: =====================================
-//= 2.8
+//= 2.9
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -35,6 +35,7 @@
//= 2.7 Deleted unused variables. [Samuray22]
//= 2.7a Corrected a Typo error ";;". [Samuray22]
//= 2.8 Now uses enable and disable waitingroomevent. [L0ne_W0lf]
+//= 2.9 Added Quest Log commands. [Kisuka]
//============================================================
prt_in,88,101,4 script Chivalry Captain#knt 56,{
@@ -142,6 +143,7 @@ prt_in,88,101,4 script Chivalry Captain#knt 56,{
close;
}
set KNIGHT_Q,1;
+ setquest 9000;
mes "[Captain Herman]";
mes "Let me see...";
mes "Your name is";
@@ -526,6 +528,7 @@ prt_in,88,101,4 script Chivalry Captain#knt 56,{
mes "You may not have finished all the tests perfectly, but you have all the necessary qualities to become";
mes "a Knight.";
next;
+ completequest 9012;
callfunc "Job_Change",Job_Knight;
callfunc "F_ClearJobVar"; // clears all job variables for the current player
mes "[Captain Herman]";
@@ -667,6 +670,11 @@ prt_in,75,107,4 script Sir Andrew#knt 65,{
case 2: setarray .@items[0], 1042,5, 950,5, 1032,5, 966,5, 7031,5, 946,5, 3; break;
}
set KNIGHT_Q,.@items[12];
+ if(KNIGHT_Q == 2) {
+ changequest 9000,9001;
+ }else{
+ changequest 9000,9002;
+ }
mes "^236B8E"+.@items[1]+" "+getitemname(.@items[0])+"^000000,";
mes "^236B8E"+.@items[3]+" "+getitemname(.@items[2])+"^000000,";
mes "^236B8E"+.@items[5]+" "+getitemname(.@items[4])+"^000000,";
@@ -712,6 +720,11 @@ prt_in,75,107,4 script Sir Andrew#knt 65,{
delitem .@items[6],.@items[7];
delitem .@items[8],.@items[9];
delitem .@items[10],.@items[11];
+ if(KNIGHT_Q == 2) {
+ changequest 9001,9003;
+ }else{
+ changequest 9002,9003;
+ }
set KNIGHT_Q,4;
mes "[Sir Andrew]";
mes "Please visit my fellow Knight, Sir Siracuse, and continue the tests with the dedication and loyalty you've shown to me this day.";
@@ -1055,6 +1068,7 @@ L_AskQuestions:
close;
}
set KNIGHT_Q,6;
+ changequest 9003,9004;
mes "[Sir Siracuse]";
mes "Well then,";
mes "this is the";
@@ -1210,6 +1224,7 @@ prt_in,79,94,4 script Sir Windsor#knt 733,{
mes "...";
next;
set KNIGHT_Q,7;
+ changequest 9004,9005;
mes "[Sir Windsor]";
mes "...";
mes "......";
@@ -1284,6 +1299,9 @@ job_knt,89,106,4 script Knight Windsor#knt 733,{
next;
mes "[Sir Windsor]";
mes "..........";
+ if(checkquest(9006) == -1) {
+ changequest 9005,9006;
+ }
close;
case 2:
mes "[Sir Windsor]";
@@ -1314,6 +1332,9 @@ job_knt,89,106,4 script Knight Windsor#knt 733,{
next;
mes "[Sir Windsor]";
mes "...";
+ if(checkquest(9006) == -1) {
+ changequest 9005,9006;
+ }
close;
case 3:
mes "[Sir Windsor]";
@@ -1343,6 +1364,9 @@ OnStartArena:
killmonster "job_knt", "Knight1::OnMyMobDead";
killmonster "job_knt", "Knight2::OnMyMobDead";
killmonster "job_knt", "Knight3::OnMyMobDead";
+ if(checkquest(9006) == -1) {
+ changequest 9005,9006;
+ }
warpwaitingpc "job_knt",43,146;
donpcevent "Knight1::OnEnable";
disablewaitingroomevent;
@@ -1513,6 +1537,9 @@ OnMyMobDead:
mes "Amy Beatrice now.";
close2;
set KNIGHT_Q,8;
+ if(checkquest(9007) == -1) {
+ changequest 9006,9007;
+ }
warp "prt_in",80,100;
donpcevent "Knight3::OnDisable";
donpcevent "Windsor Benedict#knt::OnStart";
@@ -1642,6 +1669,9 @@ prt_in,69,107,6 script Lady Amy#knt 728,{
mes "come to Amy?";
next;
if (select("Sir Windsor told me to--:Oh, nothing.") == 1) {
+ if(checkquest(9008) == -1) {
+ changequest 9007,9008;
+ }
mes "[Lady Amy]";
mes "Oh!";
mes "No need to say";
@@ -1796,6 +1826,7 @@ L_AskQuestions:
next;
if (.@knight_t == 100) {
set KNIGHT_Q,10;
+ changequest 9008,9009;
mes "[Lady Amy]";
mes "Well done, that kind of mentality is needed for a Knight! For your next test, visit Sir Edmond, please~";
next;
@@ -1805,6 +1836,7 @@ L_AskQuestions:
}
else if (.@knight_t == 90) {
set KNIGHT_Q,10;
+ changequest 9008,9009;
mes "[Lady Amy]";
mes "Well, it wasn't perfect,";
mes "but I think you know enough";
@@ -2012,6 +2044,7 @@ prt_in,70,99,6 script Sir Edmond#knt 734,{
mes "reverence.";
close2;
set KNIGHT_Q,11;
+ changequest 9009,9010;
warp "job_knt",143,57;
end;
}
@@ -2124,6 +2157,7 @@ OnInit:
end;
OnTouch:
set KNIGHT_Q,12;
+ changequest 9010,9011;
warp "prt_in",80,100;
end;
}
@@ -2528,6 +2562,7 @@ L_AskQuestions:
}
else if (.@knight_t == 10) {
set KNIGHT_Q,14;
+ changequest 9011,9012;
mes "[Sir Gray]";
mes "I enjoyed talking with you. Although, there were some";
mes "things that bothered me...";
diff --git a/npc/jobs/2-1/priest.txt b/npc/jobs/2-1/priest.txt
index d6aee0911..d2f90066b 100644
--- a/npc/jobs/2-1/priest.txt
+++ b/npc/jobs/2-1/priest.txt
@@ -5,7 +5,7 @@
//= Converted by: kobra_k88.
//= Further bugfixed and tested by Lupus
//===== Current Version: =====================================
-//= 2.4b
+//= 2.5
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -28,6 +28,7 @@
//= 2.4 Changed Marthilda to Mathilda. [L0ne_W0llf]
//= 2.4a Deleted unused variables. [Samuray22]
//= 2.4b Corrected a Typo error ";;". [Samuray22]
+//= 2.5 Added Quest Log commands. [Kisuka]
//==========================================================
prt_church,16,41,4 script High Bishop#prst 60,{
@@ -240,6 +241,7 @@ prt_church,16,41,4 script High Bishop#prst 60,{
close;
}
set PRIEST_Q,1;
+ setquest 8009;
mes "[Bishop Paul]";
if (sex)
mes "Now I will explain the Three Trials of Priesthood. These tribulations will bring you much suffering, but I hope you can complete them, Brother " + strcharinfo(0) + ".";
@@ -269,6 +271,7 @@ prt_church,16,41,4 script High Bishop#prst 60,{
mes "I have no doubt that you will do a good job by yourself. However, it will be easier with the aid of a Brother or Sister that has already become a Priest.";
next;
set PRIEST_Q,5;
+ changequest 8009,8011;
mes "[Bishop Paul]";
mes "Well, are you ready for the Spiritual Training?";
next;
@@ -309,6 +312,7 @@ prt_church,16,41,4 script High Bishop#prst 60,{
mes "[Bishop Paul]";
mes "May God";
mes "bless you...";
+ changequest 8009,8010;
close;
}
mes "[Bishop Paul]";
@@ -388,6 +392,7 @@ prt_church,16,41,4 script High Bishop#prst 60,{
}
else if (PRIEST_Q == 4) {
set PRIEST_Q,5;
+ changequest 8010,8011;
mes "[Bishop Paul]";
mes "You've accomplished";
mes "your pilgrimage.";
@@ -494,6 +499,7 @@ prt_church,16,41,4 script High Bishop#prst 60,{
next;
mes "[Bishop Paul]";
mes "God, grant your power to your servant standing before you.";
+ changequest 8015,8016;
if (sex)
mes "Let him send your message throughout the ends of the earth.";
else
@@ -503,6 +509,7 @@ prt_church,16,41,4 script High Bishop#prst 60,{
mes "Make this servant of yours an instrument of your miraculous works...";
next;
set .@joblvl,JobLevel;
+ completequest 8016;
callfunc "Job_Change",Job_Priest;
callfunc "F_ClearJobVar"; // clears all job variables for the current player
mes "[Bishop Paul]";
@@ -700,6 +707,9 @@ prt_church,27,24,1 script Sister Cecilia 79,{
close;
}
else if (PRIEST_Q == 7) {
+ if(checkquest(8014) == -1) {
+ changequest 8013,8014;
+ }
mes "Welcome! I'm so glad to see you've come back! Now, there is one last trial left for you to complete.";
next;
L_AskQuestions:
@@ -825,6 +835,7 @@ L_AskQuestions:
mes "......";
next;
set PRIEST_Q,8;
+ changequest 8014,8015;
mes "[Sister Cecilia]";
mes "You've come so far...";
mes "Why would you want";
@@ -954,6 +965,7 @@ job_prist,24,187,4 script Peter S. Alberto 110,{
mes "Now...";
mes "Go for it!";
close2;
+ changequest 8011,8012;
warp "job_prist",24,44;
donpcevent "Zombie_Generator#prst::OnEnable";
donpcevent "Peter S. Alberto::OnDisable";
@@ -997,6 +1009,9 @@ job_prist,24,187,4 script Peter S. Alberto 110,{
mes "Kill those";
mes "misbegotten creatures!";
close2;
+ if(checkquest(8012) == -1) {
+ changequest 8011,8012;
+ }
warp "job_prist",24,44;
donpcevent "Zombie_Generator#prst::OnEnable";
donpcevent "Peter S. Alberto::OnDisable";
@@ -1716,6 +1731,9 @@ OnTouch:
}
else if (BaseClass == Job_Acolyte) {
set PRIEST_Q,7;
+ if(checkquest(8012) != -1) {
+ changequest 8012,8013;
+ }
warp "prt_church",16,37;
donpcevent "Mummy_Generator::OnDisable";
}
diff --git a/npc/jobs/2-1/wizard.txt b/npc/jobs/2-1/wizard.txt
index 996ff952e..090108084 100644
--- a/npc/jobs/2-1/wizard.txt
+++ b/npc/jobs/2-1/wizard.txt
@@ -4,7 +4,7 @@
//= (Aegis) Translated by yoshiki, converted by kobra_k88
//= Further bugfixed and tested by Lupus
//===== Current Version: =====================================
-//= 2.9
+//= 3.0
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -23,6 +23,7 @@
//= 2.8 Fixed donpcevent to doevent. (bugreport:2311) [SoulBlaker]
//= 2.9 Reverted the change of donpcevent to doevent. [L0ne_W0lf]
//= Was probably cuased by a warp BEFORE a percentheal
+//= 3.0 Added Quest Log commands. [Kisuka]
//============================================================
gef_tower,111,37,4 script Wizard Guildsman 70,{
@@ -139,6 +140,7 @@ gef_tower,111,37,4 script Wizard Guildsman 70,{
mes "Go talk to the man in the corner and he will give you the remaining exams.";
mes "Be careful. We have lost many Mages due to the difficulty of the exams.";
set WIZ_Q,3;
+ setquest 9015;
close;
}
mes "[Catherine]";
@@ -154,12 +156,14 @@ gef_tower,111,37,4 script Wizard Guildsman 70,{
mes "The items you must collect are...";
if (rand(1)) {
set WIZ_Q,1;
+ setquest 9013;
mes "^3355FFRed Gemstone^000000 10 each,";
mes "^3355FFBlue Gemstone^000000 10 each,";
mes "^3355FFYellow Gemstone^000000 10 each,";
}
else {
set WIZ_Q,2;
+ setquest 9014;
mes "^3355FFCrystal Blue^000000 5 each,";
mes "^3355FFGreen Live^000000 5 each,";
mes "^3355FFRed Blood^000000 5 each,";
@@ -196,6 +200,7 @@ gef_tower,111,37,4 script Wizard Guildsman 70,{
delitem 717,10; //Blue_Gemstone
delitem 715,10; //Yellow_Gemstone
set WIZ_Q,3;
+ changequest 9013,9015;
mes "[Catherine]";
mes "Good for you! You passed the first test.";
mes "But there are still two more left, so don't get too relaxed.";
@@ -234,6 +239,7 @@ gef_tower,111,37,4 script Wizard Guildsman 70,{
delitem 990,5; //Boody_Red
delitem 992,5; //Wind_Of_Verdure
set WIZ_Q,3;
+ changequest 9014,9015;
mes "[Catherine]";
mes "Good. You've passed the first test now.";
mes "But you still have two more tests to go, so don't get too laid back, because it only gets harder from here. ~Hehehe";
@@ -409,6 +415,7 @@ gef_tower,111,37,4 script Wizard Guildsman 70,{
mes "[Catherine]";
mes "Well, no need to wait, I congratulate you. I hearby deem you Wizard.";
next;
+ completequest 9018;
callfunc "Job_Change",Job_Wizard;
callfunc "F_ClearJobVar"; // clears all job variables for the current player
mes "[Catherine]";
@@ -538,6 +545,9 @@ gef_tower,102,24,2 script Gloomy Wizard 735,{
mes "[Raulel]";
mes "I'll give you 10 questions so give me the right answers.";
mes "If you get something wrong, I won't tell you what it is!";
+ if(checkquest(9016) == -1) {
+ changequest 9015,9016;
+ }
next;
mes "[Raulel]";
mes "*Cough* *cough* Then here go the questions!";
@@ -708,6 +718,7 @@ L_AskQuestions:
mes "Your score is... " + .@wizard_t + "points.....";
if (.@wizard_t == 100) {
set WIZ_Q,5;
+ changequest 9016,9017;
mes "Hahahahahahah~ Well done, you passed the second test.";
mes "It wasn't done in one try like mine was, but I'll let you slide...";
next;
@@ -718,6 +729,7 @@ L_AskQuestions:
}
else if (.@wizard_t == 90) {
set WIZ_Q,5;
+ changequest 9016,9017;
mes "Hahaha~ Since you only missed one problem, you passed the second test.";
mes "It wasn't done in one try like mine was, but I'll let you slide...";
next;
@@ -728,6 +740,7 @@ L_AskQuestions:
}
else if (.@wizard_t == 80) {
set WIZ_Q,5;
+ changequest 9016,9017;
mes "Sheez... You didn't do very well, but you passed the second test.";
mes "It wasn't done in one try like mine was, but I'll let you slide...";
next;
@@ -751,6 +764,7 @@ L_AskQuestions:
mes "Your score is... " + .@wizard_t + " points!";
if (.@wizard_t == 100) {
set WIZ_Q,5;
+ changequest 9016,9017;
mes "*cough* *Cough* Well done, you passed the second test.";
next;
mes "[Raulel]";
@@ -760,6 +774,7 @@ L_AskQuestions:
}
else if (.@wizard_t == 90) {
set WIZ_Q,5;
+ changequest 9016,9017;
mes "Hahahaha~ I'll let you slide by since you only missed one problem. You passed the second test.";
next;
mes "[Raulel]";
@@ -1528,6 +1543,7 @@ OnMyMobDead:
if (.MyMobs < 1) {
mapannounce "job_wiz","Congratulations, " + strcharinfo(0) + ". You have passed the job change test.",bc_map;
set WIZ_Q,7;
+ changequest 9017,9018;
donpcevent "Room of Fire#Door::OnDisable";
donpcevent "Test Helper#wiz::OnEnable";
stopnpctimer;
diff --git a/npc/jobs/2-1e/StarGladiator.txt b/npc/jobs/2-1e/StarGladiator.txt
index 944ddfe46..8623e75eb 100644
--- a/npc/jobs/2-1e/StarGladiator.txt
+++ b/npc/jobs/2-1e/StarGladiator.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= Celestria, Samuray22
//===== Current Version: =====================================
-//= 1.2
+//= 1.3
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -16,6 +16,7 @@
//= 1.1c Changed item names to item IDs. [Samuray22]
//= 1.2 Another round of updates to the script. [L0ne_W0lf]
//= Removes the use of labels, and correcets other errors.
+//= 1.3 Added Quest Log commands. [Kisuka]
//============================================================
payon,215,102,3 script Moohyun#job_star 828,3,3,{
@@ -103,6 +104,7 @@ payon,215,102,3 script Moohyun#job_star 828,3,3,{
mes "letter of recommendation that";
mes "I'll send to him for you.";
set STGL_Q,1;
+ setquest 7007;
close;
}
mes "[Moohyun]";
@@ -421,6 +423,7 @@ comodo,172,230,3 script Wandering Master#job_sta 730,{
mes "^4D4DFFFlame Heart^000000.";
mes "Now go...";
set STGL_Q,2;
+ changequest 7007,7008;
close;
}
mes "[Moogang]";
@@ -485,6 +488,7 @@ comodo,172,230,3 script Wandering Master#job_sta 730,{
delitem 995,1; //Mistic_Frozen
delitem 994,1; //Flame_Heart
set STGL_Q,3;
+ changequest 7008,7009;
close;
}
mes "[Moogang]";
@@ -672,6 +676,7 @@ comodo,172,230,3 script Wandering Master#job_sta 730,{
mes "of the Sun, the Moon and";
mes "the Stars. Welcome to our";
mes "way of martial arts, friend.";
+ completequest 7011;
callfunc "Job_Change",Job_Star_Gladiator;
callfunc "F_ClearJobVar"; //clears all job variables for the current player
next;
@@ -1431,6 +1436,7 @@ job_star,161,33,0 script Cheehee#job_star 77,{
mes "this earth that come from";
mes "the stars. Bring me a piece of a star and the sand of a star...";
set STGL_Q,10;
+ changequest 7009,7010;
close;
}
mes "[Cheehee]";
@@ -1531,6 +1537,7 @@ job_star,161,33,0 script Cheehee#job_star 77,{
mes "let him know that you";
mes "completed our testing.";
set STGL_Q,12;
+ changequest 7010,7011;
close;
}
mes "[Cheehee]";
@@ -1563,6 +1570,7 @@ job_star,161,33,0 script Cheehee#job_star 77,{
mes "let him know that you";
mes "completed our testing.";
set STGL_Q,12;
+ changequest 7010,7011;
close;
}
else if (STGL_Q == 12) {
diff --git a/npc/jobs/2-2/alchemist.txt b/npc/jobs/2-2/alchemist.txt
index 4d08431be..fe8141a94 100644
--- a/npc/jobs/2-2/alchemist.txt
+++ b/npc/jobs/2-2/alchemist.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= nestor_zulueta (Fusion), converted by Darkchild
//===== Current Version: =====================================
-//= 2.8
+//= 2.9
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -15,6 +15,7 @@
//= 2.6 Corrected a bug in advanced class checking. [L0ne_W0lf]
//= 2.7 Added missing checkweights. [L0ne_W0lf]
//= 2.8 Fixed minor typo in test section. [L0ne_W0lf]
+//= 2.9 Added Quest Log commands. [Kisuka]
//============================================================
alde_alche,27,185,5 script Alchemist Guildsman#am 744,{
@@ -183,14 +184,17 @@ alde_alche,27,185,5 script Alchemist Guildsman#am 744,{
switch(rand(1,3)) {
case 1:
set ALCH_Q,1;
+ setquest 2028;
mes "^551A8B7 Berserk Potions^000000.";
break;
case 2:
set ALCH_Q,2;
+ setquest 2029;
mes "^551A8B100 Mini Furnaces^000000.";
break;
case 3:
set ALCH_Q,3;
+ setquest 2030;
mes "^551A8B7,500 Fire Arrows^000000.";
}
next;
@@ -230,6 +234,15 @@ alde_alche,27,185,5 script Alchemist Guildsman#am 744,{
mes "Okay, now you need to learn";
mes "the basics to being an Alchemist and learn the procedures for mixing chemicals and medicines.";
set ALCH_Q,4;
+ if(checkquest(2028) != -1) {
+ changequest 2028,2031;
+ }
+ else if(checkquest(2029) != -1) {
+ changequest 2029,2031;
+ }
+ else {
+ changequest 2030,2031;
+ }
next;
mes "[Parmy Gianino]";
mes "But before all of that, you need to speak to Raspuchin. I'm not really sure what you'll be talking about with him...";
@@ -254,6 +267,15 @@ alde_alche,27,185,5 script Alchemist Guildsman#am 744,{
mes "Okay, now you need to learn";
mes "the basics to being an Alchemist and learn the procedures for mixing chemicals and medicines.";
set ALCH_Q,4;
+ if(checkquest(2028) != -1) {
+ changequest 2028,2031;
+ }
+ else if(checkquest(2029) != -1) {
+ changequest 2029,2031;
+ }
+ else {
+ changequest 2030,2031;
+ }
next;
mes "[Parmy Gianino]";
mes "But before all of that, you need to speak to Raspuchin. I'm not really sure what you'll be talking about with him...";
@@ -724,6 +746,7 @@ L_AskQuestions:
mes "He'll teach you how to do the experiments. Just tell him that";
mes "I sent you.";
set ALCH_Q,6;
+ changequest 2031,2032;
close;
}
else if (ALCH_Q == 5) {
@@ -889,6 +912,7 @@ alde_alche,13,15,7 script Studying Man#am 750,{
mes "^551A8B1 Yellow Herb^000000 and";
mes "^551A8B1 White Herb^000000.";
set ALCH_Q,7;
+ changequest 2032,2033;
next;
mes "[Darwin]";
mes "Once you have";
@@ -1229,6 +1253,7 @@ alde_alche,13,15,7 script Studying Man#am 750,{
mes "Good job.";
mes "It came out pretty well considering it's your first time. Go ahead and keep the medicines that you've just made.";
set ALCH_Q,8;
+ changequest 2033,2035;
next;
mes "[Darwin]";
mes "Now, go into the next room";
@@ -1405,6 +1430,7 @@ alde_alche,79,19,5 script Experiment Expert#am 748,{
next;
mes "[Van Helmont]";
set ALCH_Q,9;
+ changequest 2035,2036;
mes "Well then, see you later.";
mes "You'd better get going as";
mes "soon as you can.";
@@ -1499,6 +1525,7 @@ alde_alche,79,19,5 script Experiment Expert#am 748,{
mes "to this one and talk to Nicholas. He'll continue your training.";
next;
set ALCH_Q,20;
+ changequest 2036,2037;
mes "[Van Helmont]";
mes "What are you";
mes "still doing here?";
@@ -1656,12 +1683,16 @@ alde_alche,101,184,4 script Master Alchemist#am 122,{
cutin "",255;
end;
}
+ if(checkquest(2039) != -1) {
+ changequest 2039,2040;
+ }
mes "Ah, well done.";
mes "I can see that you";
mes "have learned all of";
mes "the basics of Alchemy.";
next;
set ALCH_Q,0;
+ completequest 2040;
set .@jlevel,JobLevel;
callfunc "Job_Change",Job_Alchemist;
callfunc "F_ClearJobVar";
@@ -1878,6 +1909,7 @@ alde_alche,145,19,1 script Chief Researcher#am 57,{
mes "help them out. They'll need all of these items to continue their experiments.";
next;
set ALCH_Q,23;
+ changequest 2037,2038;
mes "[Nicholas Flamel]";
mes "1 Mixture,";
mes "5 Burnt Tree,";
@@ -1907,6 +1939,7 @@ alde_alche,145,19,1 script Chief Researcher#am 57,{
}
else if (ALCH_Q == 24) {
set ALCH_Q,40;
+ changequest 2038,2039;
mes "[Nicholas Flamel]";
mes "Ah, you're back!";
mes "I just got a message from Bain";
diff --git a/npc/jobs/2-2/bard.txt b/npc/jobs/2-2/bard.txt
index 5df84f449..acf9a0193 100644
--- a/npc/jobs/2-2/bard.txt
+++ b/npc/jobs/2-2/bard.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= Muad_Dib(The Prometheus Project), Lupus, Samuray22
//===== Current Version: =====================================
-//= 2.4
+//= 2.5
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -21,6 +21,7 @@
//= - Fixed some indentation.
//= - Changed item names to item IDs
//= 2.4 Fixed hang up on bard quest. ($kiN.) [L0ne_W0lf]
+//= 2.5 Added Quest Log commands. [Kisuka]
//============================================================
//=============== Ayealo ============================
@@ -151,6 +152,7 @@ comodo,226,123,5 script Wandering Bard 741,{
mes "It would be nice if more people went around and sang...";
mes "Well, it's quite ok as it is now... hmmhmm.";
set BARD_Q,1;
+ setquest 3000;
close2;
cutin "job_bard_aiolo01",255;
end;
@@ -207,6 +209,7 @@ comodo,226,123,5 script Wandering Bard 741,{
mes "It doesn't really matter which Flower, but try to bring one that I like.";
mes "And don't just buy any random Flower, ok?";
set BARD_Q,2;
+ changequest 3000,3001;
close2;
cutin "job_bard_aiolo01",255;
end;
@@ -409,6 +412,7 @@ comodo,226,123,5 script Wandering Bard 741,{
mes "Go there and bring back a present.";
next;
set BARD_Q,3;
+ changequest 3001,3002;
set xmas_npc,1;
mes "[Lalo]";
mes "if you become friends with ^008800Jack Frost^000000, you will receive something.";
@@ -428,6 +432,9 @@ comodo,226,123,5 script Wandering Bard 741,{
mes "Then, do you want to try singing...?";
mes "I'll sing a short melody...";
mes "and you try after.";
+ if(checkquest(3003) == -1) {
+ changequest 3002,3003;
+ }
next;
mes "[Lalo]";
mes "Here I go.";
@@ -817,6 +824,7 @@ B_Change:
cutin "job_bard_aiolo01",255;
end;
}
+ completequest 3003;
callfunc "Job_Change",Job_Bard;
callfunc "F_ClearJobVar"; //clears all job variables for the current player
mes "[Lalo]";
@@ -829,6 +837,7 @@ B_Change:
cutin "job_bard_aiolo01",255;
end;
}
+ changequest 3003,3004;
mes "[Lalo]";
mes "Hmm... very well, bring some trunks.";
mes "It doesn't matter what kind, as long as they are 60 of the same kind...";
@@ -918,6 +927,7 @@ B_Change:
end;
S_ChangeJob:
+ completequest 3004;
callfunc "Job_Change",Job_Bard;
callfunc "F_ClearJobVar";
mes "[Lalo]";
diff --git a/npc/jobs/2-2/crusader.txt b/npc/jobs/2-2/crusader.txt
index 316d23da3..be9f2b58c 100644
--- a/npc/jobs/2-2/crusader.txt
+++ b/npc/jobs/2-2/crusader.txt
@@ -4,7 +4,7 @@
//= Made by: Black Dragon
//= Converted by: Shin
//===== Current Version: =====================================
-//= 3.1
+//= 3.2
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -30,6 +30,7 @@
//= 2.9a Deleted unused variables. [Samuray22]
//= 3.0 Updated waiting room. (Removes global var) [L0ne_W0lf]
//= 3.1 Adding Hermemton's changes. [L0ne_W0lf]
+//= 3.2 Added Quest Log commands. [Kisuka]
//============================================================
@@ -150,6 +151,7 @@ prt_castle,45,169,5 script Senior Crusader 752,{
delitem 1004, 1;
delitem 1009, 1;
set CRUS_Q,4;
+ setquest 3009;
mes "[Michael Halig]";
mes "Moorenak and others like him will test the limits of your capabilities and help you find your path. Return to me after you have completed their tests...";
close;
@@ -165,6 +167,7 @@ prt_castle,45,169,5 script Senior Crusader 752,{
set .@cru_m1,rand(1,3);
if(.@cru_m1 == 1) {
set CRUS_Q, 1;
+ setquest 3006;
mes "10 ^3355FF"+getitemname(957)+"^000000";
mes "10 ^3355FF"+getitemname(959)+"^000000";
mes "10 ^3355FF"+getitemname(1099)+"^000000";
@@ -173,6 +176,7 @@ prt_castle,45,169,5 script Senior Crusader 752,{
}
else if(.@cru_m1 == 2) {
set CRUS_Q, 2;
+ setquest 3007;
mes "10 ^3355FF"+getitemname(932)+"^000000";
mes "10 ^3355FF"+getitemname(1043)+"^000000";
mes "10 ^3355FF"+getitemname(1098)+"^000000";
@@ -181,6 +185,7 @@ prt_castle,45,169,5 script Senior Crusader 752,{
}
else {
set CRUS_Q, 3;
+ setquest 3008;
mes "10 ^3355FF"+getitemname(958)+"^000000";
mes "10 ^3355FF"+getitemname(930)+"^000000";
mes "10 ^3355FF"+getitemname(1041)+"^000000";
@@ -241,6 +246,15 @@ prt_castle,45,169,5 script Senior Crusader 752,{
delitem @item3, 10;
delitem @item4, 10;
set CRUS_Q, 4;
+ if(checkquest(3006) != -1) {
+ changequest 3006,3009;
+ }
+ else if(checkquest(3007) != -1) {
+ changequest 3007,3009;
+ }
+ else {
+ changequest 3008,3009;
+ }
mes "[Michael Halig]";
mes "Moorenak and others like him will test the limits of your capabilities and help you find your path. Return to me after you have completed their tests...";
close;
@@ -269,6 +283,7 @@ prt_castle,45,169,5 script Senior Crusader 752,{
mes "Together, let us ready ourselves and be victorious over evil and tyranny!";
next;
set .@Joblevel,JobLevel;
+ completequest 3015;
callfunc "Job_Change",Job_Crusader;
callfunc "F_ClearJobVar"; //clears all job variables for the current player
mes "[Michael Halig]";
@@ -363,6 +378,7 @@ prt_castle,164,32,1 script Man in Anguish 733,{
mes "You must keep one thing in mind. Under no condition are you allowed to kill the monsters.";
next;
set CRUS_Q,5;
+ changequest 3009,3010;
mes "[Murnak Mijoul]";
mes "Well then...";
mes "Good luck.";
@@ -706,6 +722,7 @@ C_Questions:
mes "is " + .@cru_t + " points...";
if(.@cru_t == 100) {
set CRUS_Q, 8;
+ changequest 3011,3013;
mes "Superb! Now, it's time for";
mes "you to take the next test.";
next;
@@ -718,6 +735,7 @@ C_Questions:
}
else if(.@cru_t == 90) {
set CRUS_Q, 8;
+ changequest 3011,3013;
mes "Well done~ Now, it's time for";
mes "you to take the next test.";
next;
@@ -730,6 +748,7 @@ C_Questions:
}
else if (.@cru_t == 80 && CRUS_Q == 7) {
set CRUS_Q,8;
+ changequest 3011,3013;
mes "Seems like you prepared a lot so I'll let you pass this time.";
mes "Hurry now and go take the next test.";
next;
@@ -739,6 +758,9 @@ C_Questions:
close;
}
set CRUS_Q,7;
+ if(checkquest(3011) != -1) {
+ changequest 3011,3012;
+ }
mes "Hmmm... What a pity.";
mes "Go study some more and";
mes "take this test again, okay?";
@@ -842,6 +864,9 @@ prt_castle,35,151,5 script Patron Knight 751,{
mes "[Bliant Piyord]";
mes "To take the battle test, bring";
mes "1 ^3355FFHoly Water^000000. This will be used to purify you prior to taking the test.";
+ if(checkquest(3013) != -1) {
+ changequest 3013,3014;
+ }
next;
mes "[Bliant Piyord]";
mes "Well then...";
@@ -1174,6 +1199,7 @@ OnDead:
job_cru,98,105,4 script Summoner#cr5 45,3,3,{
OnTouch:
set CRUS_Q,6;
+ changequest 3010,3011;
warp "prt_castle",164,28;
end;
}
@@ -1268,7 +1294,10 @@ OnMonster3:
OnDead:
set .MyMonsterCount,.MyMonsterCount+1;
- if (.MyMonsterCount >= 10) set CRUS_Q,10;
+ if (.MyMonsterCount >= 10) {
+ set CRUS_Q,10;
+ changequest 3014,3015;
+ }
end;
OnEnd:
diff --git a/npc/jobs/2-2/dancer.txt b/npc/jobs/2-2/dancer.txt
index 14c61affc..a9011e0be 100644
--- a/npc/jobs/2-2/dancer.txt
+++ b/npc/jobs/2-2/dancer.txt
@@ -4,7 +4,7 @@
//= Kalen - Original jAthena
//= Fredzilla - Converted, Lupus
//===== Current Version: =====================================
-//= 3.6a
+//= 3.7
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -19,6 +19,7 @@
//= 3.5 Minor corrections to script. (bugreport:1766) [L0ne_W0lf]
//= 3.6 Applied Correction bug with for loop. [L0ne_W0lf]
//= 3.6a Fixed a little Exploit to bug the quest with a timeout. (bugreport:2252) [Samuray22]
+//= 3.7 Added Quest Log commands. [Kisuka]
//============================================================
comodo,180,153,4 script Sonotora#1 90,{
@@ -177,6 +178,7 @@ job_duncer,43,93,4 script Aile#da 724,{
close2;
cutin "",255;
set DANC_Q,1;
+ setquest 7000;
end;
}
else {
@@ -232,6 +234,7 @@ job_duncer,43,93,4 script Aile#da 724,{
set .@item_nd,rand(1,10);
if (.@item_nd > 0 && .@item_nd < 3) {
set DANC_Q,2;
+ changequest 7000,7001;
mes "[Aile]";
mes "First, there's the tuition fee of ^CD688910,000 Zeny^000000. Then, you'll about ^CD688920 Sticky Mucus^000000 for shoe polish.";
next;
@@ -248,6 +251,7 @@ job_duncer,43,93,4 script Aile#da 724,{
}
else if (.@item_nd == 4) {
set DANC_Q,3;
+ changequest 7000,7002;
mes "[Aile]";
mes "First, there's the tuition fee of ^CD688910,000 Zeny^000000. Then, bring ^CD68895 Earthworm Peelings^000000 for polishing the floor and, of course, a pair of ^CD6889Boots^000000.";
next;
@@ -259,6 +263,7 @@ job_duncer,43,93,4 script Aile#da 724,{
}
else {
set DANC_Q,4;
+ changequest 7000,7003;
mes "[Aile]";
mes "First, there's the tuition fee of ^CD688910,000 Zeny^000000. Then, bring ^CD68892 Clam Shells^000000 for your costume, ^CD68895 Yellow Potions^000000 and ^CD688920 Jellopy^000000 to treat foot injuries.";
next;
@@ -316,6 +321,15 @@ job_duncer,43,93,4 script Aile#da 724,{
mes "[Aile]";
mes "Next, go to ^CD6889Bijou^000000, who is in charge of the interviewing process. She will have a couple of things she'll need to ask you.";
set DANC_Q,5;
+ if(checkquest(7001) != -1) {
+ changequest 7001,7004;
+ }
+ else if(checkquest(7002) != -1) {
+ changequest 7002,7004;
+ }
+ else {
+ changequest 7003,7004;
+ }
close2;
cutin "",255;
end;
@@ -817,6 +831,7 @@ job_duncer,95,93,4 script Bijou#da 101,{
mes "[Bijou]";
mes "Well then~";
mes "Good luck...!!";
+ changequest 7004,7005;
set DANC_Q,8;
close2;
warp "job_duncer",105,109;
@@ -856,6 +871,7 @@ job_duncer,95,93,4 script Bijou#da 101,{
next;
set .@jlevel,JobLevel;
mes "[Bijou]";
+ completequest 7006;
callfunc "Job_Change",Job_Dancer;
callfunc "F_ClearJobVar";
mes "Ooh...!";
@@ -1220,6 +1236,7 @@ job_duncer,69,110,0 script dance#return -1,1,4,{
OnTouch:
mapannounce "job_duncer","Good! Well done! Go back to Bijou!",bc_map;
set DANC_Q,9;
+ changequest 7005,7006;
warp "comodo",188,162;
end;
diff --git a/npc/jobs/2-2/monk.txt b/npc/jobs/2-2/monk.txt
index 2f031c4f9..f5b2d2997 100644
--- a/npc/jobs/2-2/monk.txt
+++ b/npc/jobs/2-2/monk.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= Dino9021, Edited / Translated by Celest
//===== Current Version: =====================================
-//= 2.3a
+//= 2.4
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -14,6 +14,7 @@
//= No longer uses function "F_BlockHigh"
//= 2.3 Corrected NPC names to fall within proper restrictions. [L0ne_W0lf]
//= 2.3a Deleted unused variables. [Samuray22]
+//= 2.4 Added Quest Log commands. [Kisuka]
//============================================================
prt_monk,59,247,1 script Guarding Monk#mk 120,6,2,{
@@ -76,6 +77,7 @@ prt_monk,59,247,1 script Guarding Monk#mk 120,6,2,{
mes "That is good. Go see our sensei Moohae. Speak with him.";
mes "He will help you start your training.";
set MONK_Q,2;
+ setquest 3016;
close;
}
else if (BaseJob == Job_Acolyte && JobLevel < 40) {
@@ -138,6 +140,7 @@ prt_monk,59,247,1 script Guarding Monk#mk 120,6,2,{
mes "That is good. Go see our sensei Moohae. Speak with him.";
mes "He will help you start your training.";
set MONK_Q,2;
+ setquest 3016;
close;
}
else if (BaseJob == Job_Acolyte && JobLevel < 40) {
@@ -220,6 +223,7 @@ prt_monk,59,247,1 script Guarding Monk#mk 120,6,2,{
mes "That is good. Go see our sensei Moohae, speak with him";
mes "and he will help you start new training.";
set MONK_Q,2;
+ setquest 3016;
close;
}
else if (BaseJob == Job_Acolyte && JobLevel < 40) {
@@ -375,13 +379,13 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "Let us start with a simple task.";
next;
switch(rand(1,7)) {
- case 1: setarray .@items[0], 938,5, 1055,10, 511,20, 3; break;
- case 2: setarray .@items[0], 942,20, 1002,5, 510,3, 4; break;
- case 3: setarray .@items[0], 905,30, 909,5, 955,10, 5; break;
- case 4: setarray .@items[0], 943,5, 935,20, 912,5, 6; break;
- case 5: setarray .@items[0], 7053,5, 509,10, 508,10, 7; break;
- case 6: setarray .@items[0], 913,10, 948,4, 7033,20, 8; break;
- case 7: setarray .@items[0], 1027,5, 1025,20, 1042,10, 9; break;
+ case 1: setarray .@items[0], 938,5, 1055,10, 511,20, 3; changequest 3016,3017; break;
+ case 2: setarray .@items[0], 942,20, 1002,5, 510,3, 4; changequest 3016,3018; break;
+ case 3: setarray .@items[0], 905,30, 909,5, 955,10, 5; changequest 3016,3019; break;
+ case 4: setarray .@items[0], 943,5, 935,20, 912,5, 6; changequest 3016,3020; break;
+ case 5: setarray .@items[0], 7053,5, 509,10, 508,10, 7; changequest 3016,3021; break;
+ case 6: setarray .@items[0], 913,10, 948,4, 7033,20, 8; changequest 3016,3022; break;
+ case 7: setarray .@items[0], 1027,5, 1025,20, 1042,10, 9; changequest 3016,3023; break;
}
mes "[Sensei Moohae]";
mes .@items[1]+" "+getitemname(.@items[0])+",";
@@ -416,6 +420,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "Well done, you found all the items.";
mes "I will tell this to the elders.";
set MONK_Q,10;
+ changequest 3017,3024;
delitem 938,5; //Sticky_Mucus
delitem 1055,10; //Earthworm_Peeling
delitem 511,20; //Green_Herb
@@ -446,6 +451,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "Very good, you found all the items.";
mes "I will tell this to the elders.";
set MONK_Q,10;
+ changequest 3018,3024;
delitem 942,20; //Yoyo_Tail
delitem 1002,5; //Iron_Ore
delitem 510,3; //Blue_Herb
@@ -476,6 +482,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "See, that wasn't so bad you real found all the items.";
mes "I will tell this to the elders.";
set MONK_Q,10;
+ changequest 3019,3024;
delitem 905,30; //Stem
delitem 909,5; //Jellopy
delitem 955,10; //Worm_Peelings
@@ -506,6 +513,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "Impressive, you really found all the items.";
mes "I will tell this to the elders.";
set MONK_Q,10;
+ changequest 3020,3024;
delitem 943,5; //Solid_Shell
delitem 935,20; //Shell
delitem 912,5; //Zargon
@@ -536,6 +544,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "Very nice, you found all the items.";
mes "I will tell this to the elders.";
set MONK_Q,10;
+ changequest 3021,3024;
delitem 7053,5; //Cyfar
delitem 509,10; //White_Herb
delitem 508,10; //Yellow_Herb
@@ -566,6 +575,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "Excellent, all the items I asked for.";
mes "I will tell this to the elders.";
set MONK_Q,10;
+ changequest 3022,3024;
delitem 913,10; //Tooth_Of_Bat
delitem 948,5; //Bear's_Foot
delitem 7033,20; //Poison_Spore
@@ -596,6 +606,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "Wow, you found all the items!!";
mes "I will tell this to the elders.";
set MONK_Q,10;
+ changequest 3023,3024;
delitem 1027,5; //Porcupine_Spike
delitem 1025,20; //Spiderweb
delitem 1042,10; //Short_Leg
@@ -830,6 +841,7 @@ monk_in,99,58,1 script Sensei Moohae#mk 60,{
mes "....and see life through the eyes of a monk.";
next;
set .@jlevel,JobLevel;
+ completequest 3032;
callfunc "Job_Change",Job_Monk;
callfunc "F_ClearJobVar";
mes "[Sensei Moohae]";
@@ -924,6 +936,7 @@ prt_monk,251,255,1 script Touha#mk 79,{
mes "Please repeat after me.";
next;
mes "[Touha]";
+ changequest 3024,3025;
switch(rand(1,3)) {
case 1:
set MONK_Q,11;
@@ -1580,6 +1593,7 @@ L_MonkOath3:
next;
if (.@monk_t > 90) {
set MONK_Q,14;
+ changequest 3025,3026;
mes "[Touha]";
mes "...well done, that was perfect. You pay attention well...";
next;
@@ -1868,12 +1882,14 @@ prt_monk,57,179,1 script Boohae#mk 110,{
next;
if (select("Gathering mushrooms:Marathon") == 1) {
set MONK_Q,15;
+ changequest 3026,3027;
mes "[Boohae]";
mes "Hmm....gathering mushrooms. So you want to test your tolerance huh?";
mes "Go prepare and come back later when you're ready.";
close;
}
set MONK_Q,16;
+ changequest 3026,3028;
mes "[Boohae]";
mes "Good choice. Forcing your physical limits to their boundaries and grants a higher amount of self control.";
mes "Go prepare and come back later when you're ready.";
@@ -2046,6 +2062,7 @@ monk_test,386,388,4 script Apprentice Monk#mk 110,{
mapannounce "monk_test","" + strcharinfo(0) + "...q.q..q. .quit! ...the marathon!! Y...you do not have what it takes to be a m... monk!",bc_map;
close2;
set MONK_Q,15;
+ changequest 3028,3027;
warp "prt_monk",194,168;
end;
}
@@ -2064,6 +2081,7 @@ OnTouch:
}
else if (MONK_Q == 24) {
set MONK_Q,25;
+ changequest 3028,3029;
mapannounce "monk_test","Now! This is the last lap!! If you make it you need to go visit Tomoon for the next test!",bc_map;
warp "monk_test",385,388;
end;
@@ -2130,6 +2148,7 @@ job_monk,225,180,1 script Hyunmoo#mk 89,{
mapannounce "job_monk","" + strcharinfo(0) + ", has quit his testing to become a monk.",bc_map;
close2;
set MONK_Q,16;
+ changequest 3027,3028;
warp "prt_monk",194,168;
end;
}
@@ -2176,6 +2195,7 @@ job_monk,225,180,1 script Hyunmoo#mk 89,{
mapannounce "job_monk","" + strcharinfo(0) + ", has quit his training to become a monk.",bc_map;
warp "prt_monk",194,168;
set MONK_Q,16;
+ changequest 3027,3028;
end;
}
else if (MONK_Q > 14 && MONK_Q < 25 && (countitem(1069) > 29 || countitem(1070) > 29)) {
@@ -2187,6 +2207,7 @@ job_monk,225,180,1 script Hyunmoo#mk 89,{
mes "Go meet Tomoon for your next test.";
mes "Tomoon is staying in the deepest room inside a building near this abbey.";
set MONK_Q,25;
+ changequest 3027,3029;
delitem 1069,countitem(1069); //Mushroom_Of_Thief_1
delitem 1070,countitem(1070); //Mushroom_Of_Thief_2
close2;
@@ -2268,6 +2289,7 @@ monk_test,319,139,1 script Tomoon#mk 52,{
mes "Let's see if you got what it takes to be a true monk!!";
close2;
set MONK_Q,26;
+ changequest 3029,3031;
warp "monk_test",88,74;
end;
}
@@ -2290,6 +2312,7 @@ monk_test,319,139,1 script Tomoon#mk 52,{
mes "Drink this potion and you will be able to become a monk!!!";
mes "... now go back to sensei Moohae!!!";
set MONK_Q,28;
+ changequest 3031,3032;
close;
}
else if (MONK_Q == 28) {
diff --git a/npc/jobs/2-2/rogue.txt b/npc/jobs/2-2/rogue.txt
index cf03af747..43d8bebbc 100644
--- a/npc/jobs/2-2/rogue.txt
+++ b/npc/jobs/2-2/rogue.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= kobra_k88
//===== Current Version: =====================================
-//= 2.8
+//= 2.9
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -20,6 +20,7 @@
//= 2.6 Fixed a few bugs in the Rogue Guildsman. [L0ne_W0lf]
//= 2.7 Fixed a bug on Markie question 5, bugreport:1600 [Brainstorm]
//= 2.8 Moved "Thug" to Morroc Ruins. [L0ne_W0lf]
+//= 2.9 Added Quest Log commands. [Kisuka]
//============================================================
moc_ruins,86,103,1 script Thug#rg 118,{
@@ -146,6 +147,7 @@ in_rogue,363,122,4 script Rogue Guildsman#rg 747,{
close;
}
else if (ROGUE_Q == 16 || ROGUE_Q == 17) {
+ changequest 2026,2027;
mes "[Markie]";
if (ROGUE_Q == 16) {
mes "Oh hey, it's you!";
@@ -171,6 +173,7 @@ in_rogue,363,122,4 script Rogue Guildsman#rg 747,{
set .@jlevel,JobLevel;
callfunc "Job_Change",Job_Rogue;
callfunc "F_ClearJobVar";
+ completequest 2027;
next;
mes "[Markie]";
mes "Now...";
@@ -419,6 +422,7 @@ in_rogue,363,122,4 script Rogue Guildsman#rg 747,{
mes "" + .@assassin_t + " points.";
if (.@assassin_t > 80) {
set ROGUE_Q,2;
+ setquest 2017;
mes "Good. You passed.";
mes "We don't gotta";
mes "do that again.";
@@ -512,6 +516,7 @@ in_rogue,376,23,1 script Mr. Smith#rg 57,{
mes "[Mr. Smith]";
mes "I will let you know...";
set ROGUE_Q,6;
+ changequest 2017,2021;
next;
mes "[Mr. Smith]";
mes "I will let you know......";
@@ -684,6 +689,7 @@ in_rogue,376,23,1 script Mr. Smith#rg 57,{
mes "^CCCCCC- Middle Finger -^000000'";
mes "*Grins*";
set ROGUE_Q,8;
+ changequest 2021,2025;
next;
mes "[Mr. Smith]";
mes "Since you showed such great effort, I'm going to write a recommendation letter for you. I usually don't do that, you know.";
@@ -753,6 +759,15 @@ in_rogue,376,23,1 script Mr. Smith#rg 57,{
switch(rand(1,3)) {
case 1:
set ROGUE_Q,9;
+ if(checkquest(2018) != -1) {
+ changequest 2018,2022;
+ }
+ else if(checkquest(2019) != -1) {
+ changequest 2019,2022;
+ }
+ else {
+ changequest 2020,2022;
+ }
next;
mes "[Mr. Smith]";
mes "Right! I know";
@@ -781,6 +796,15 @@ in_rogue,376,23,1 script Mr. Smith#rg 57,{
close;
case 2:
set ROGUE_Q,10;
+ if(checkquest(2018) != -1) {
+ changequest 2018,2023;
+ }
+ else if(checkquest(2019) != -1) {
+ changequest 2019,2023;
+ }
+ else {
+ changequest 2020,2023;
+ }
next;
mes "[Mr. Smith]";
mes "Hmm...";
@@ -808,6 +832,15 @@ in_rogue,376,23,1 script Mr. Smith#rg 57,{
close;
case 3:
set ROGUE_Q,11;
+ if(checkquest(2018) != -1) {
+ changequest 2018,2024;
+ }
+ else if(checkquest(2019) != -1) {
+ changequest 2019,2024;
+ }
+ else {
+ changequest 2020,2024;
+ }
next;
mes "[Mr. Smith]";
mes "Hmm...";
@@ -914,6 +947,15 @@ S_Req:
mes "^FF0000"+getarg(2)+"^000000 and";
mes "^FF0000"+getarg(3)+"^000000.";
set ROGUE_Q,getarg(4);
+ if(getarg(4) == 3) {
+ changequest 2017,2018;
+ }
+ else if(getarg(4) == 4) {
+ changequest 2017,2019;
+ }
+ else {
+ changequest 2017,2020;
+ }
next;
mes "[Mr. Smith]";
mes "Hmm...?";
@@ -1211,6 +1253,7 @@ in_rogue,272,135,1 script Hermanthorn Jr#rg 85,{
mes "Well...";
mes "Just make it back to the Rogue Guild alive. That's all you have to do!";
set ROGUE_Q,12;
+ changequest 2025,2026;
close;
}
else if (ROGUE_Q == 12) {
@@ -1383,6 +1426,7 @@ in_rogue,244,39,1 script Aragham Junior#rg 99,{
close2;
warp "in_rogue",15,105;
set ROGUE_Q,13;
+ changequest 2022,2026;
end;
}
mes "[Aragham Jr.]";
@@ -1463,6 +1507,7 @@ in_rogue,160,34,1 script Hollgrehenn junior#rg 85,{
close2;
warp "in_rogue",15,105;
set ROGUE_Q,15;
+ changequest 2024,2026;
end;
}
mes "[Hollgrehenn Jr.]";
@@ -1549,6 +1594,7 @@ in_rogue,177,109,1 script Antonio junior#rg 88,{
close2;
warp "in_rogue",15,105;
set ROGUE_Q,14;
+ changequest 2023,2026;
end;
}
mes "[Antonio Jr.]";
diff --git a/npc/jobs/2-2/sage.txt b/npc/jobs/2-2/sage.txt
index a93bd68d0..e4b4a4f64 100644
--- a/npc/jobs/2-2/sage.txt
+++ b/npc/jobs/2-2/sage.txt
@@ -5,7 +5,7 @@
//= Unknown Translator (1.0)
//= Darkchild (1.2)
//===== Current Version: =====================================
-//= 2.6a
+//= 2.7
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -25,6 +25,7 @@
// -And Small Typo Error
//= 2.6 Fixed Kayron Grik cutin not being removed as reported by jc1991, bugreport:1825 [Brainstorm]
//= 2.6a Fixed a Little Bug with Whispers Summoned in the Last Test. (bugreport:2253) [Samuray22]
+//= 2.7 Added Quest Log commands. [Kisuka]
//============================================================
yuno_in02,38,61,5 script Dean of the Academy#sa 743,{
@@ -156,6 +157,7 @@ yuno_in02,38,61,5 script Dean of the Academy#sa 743,{
mes "Although it's roughly written, it's well done for a beginner.";
mes "Ah yes...you seem to be proficient in studying.";
next;
+ completequest 2052;
callfunc "Job_Change",Job_Sage;
callfunc "F_ClearJobVar";
mes "[Kayron Grik]";
@@ -329,6 +331,7 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
mes "Yes, everything's ready.";
mes "Next, you will take an entrance test.";
set SAGE_Q,4;
+ setquest 2041;
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
@@ -346,6 +349,7 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
mes "Thank you, your application has been accepted.";
mes "Next, you will take an entrance test.";
set SAGE_Q,4;
+ setquest 2041;
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
@@ -364,6 +368,7 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
mes "Thank you, your application has been accepted.";
mes "Next, you will take the entrance test.";
set SAGE_Q,4;
+ setquest 2041;
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
@@ -402,6 +407,7 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
mes "Yes, everything's ready.";
mes "Next, you will take the entrance test.";
set SAGE_Q,4;
+ setquest 2041;
next;
mes "[Metheus Sylphe]";
mes "Please visit professor Claytos.";
@@ -434,6 +440,7 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
switch(rand(1,3)) {
case 1:
set SAGE_Q,1;
+ setquest 2043;
mes "[Metheus Sylphe]";
mes "Please gather the following items.";
mes "50 ^3355FFFeather of Birds^000000";
@@ -445,6 +452,7 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
break;
case 2:
set SAGE_Q,2;
+ setquest 2044;
mes "[Metheus Sylphe]";
mes "Please gather the following items.";
mes "50 ^3355FFClover^000000";
@@ -456,6 +464,7 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
break;
case 3:
set SAGE_Q,3;
+ setquest 2045;
mes "[Metheus Sylphe]";
mes "Please gather the following items.";
mes "50 ^3355FFFeather of Birds^000000";
@@ -587,6 +596,18 @@ yuno_in03,154,35,4 script Staff of the Academy#a 742,{
mes "Ah yes, everything is in readiness.";
mes "Next, you will take an entrance test.";
set SAGE_Q,4;
+ if(checkquest(2043) != -1) {
+ changequest 2043,2041;
+ }
+ else if(checkquest(2044) != -1) {
+ changequest 2044,2041;
+ }
+ else if(checkquest(2045) != -1) {
+ changequest 2045,2041;
+ }
+ else {
+ setquest 2041;
+ }
next;
mes "[Metheus Sylphe]";
mes "Please visit Professor Claytos.";
@@ -958,6 +979,7 @@ L_AskQuestions:
else
mes "Excellent! You must have studed really hard for this test!";
set SAGE_Q,6;
+ changequest 2041,2046;
next;
mes "[Claytos Verdo]";
mes "You have passed the written test.";
@@ -965,6 +987,7 @@ L_AskQuestions:
}
else if (.@sage_t >= 80) {
set SAGE_Q,6;
+ changequest 2041,2046;
mes "Yeah, not bad. I assume that you will at least understand what you're going to learn in class.";
next;
mes "[Claytos Verdo]";
@@ -1152,6 +1175,7 @@ yuno_in03,169,180,3 script Practical Examination P 755,{
switch(rand(1,3)) {
case 1:
set SAGE_Q,9;
+ changequest 2046,2047;
mes "[Hermes Tris]";
mes "Now, you will study Yggdrasil.";
mes "Yggdrasil is the tree that was rumored to be the source of life for this world.";
@@ -1165,6 +1189,7 @@ yuno_in03,169,180,3 script Practical Examination P 755,{
close;
case 2:
set SAGE_Q,11;
+ changequest 2046,2048;
mes "[Hermes Tris]";
mes "Now, you will study monsters.";
mes "The purpose of this study is to learn and understand more about creatures existing all over the continent.";
@@ -1178,6 +1203,7 @@ yuno_in03,169,180,3 script Practical Examination P 755,{
close;
case 3:
set SAGE_Q,13;
+ changequest 2046,2049;
mes "[Hermes Tris]";
mes "Now, you will study magic skills that have certain properties.";
mes "The purpose of this study is to better understand basic magic skills that we use in everyday life.";
@@ -1322,6 +1348,7 @@ yuno_in03,62,176,2 script History Professor#sa 109,{
mes "Seeds or fruits of the tree would be good. I know it's difficult to find, but please try.";
next;
set SAGE_Q2,1;
+ changequest 2047,2050;
mes "[Saphien Layless]";
mes "When we have the reserve items, we will start the class.";
mes "Please come back.";
@@ -1447,6 +1474,7 @@ yuno_in03,62,176,2 script History Professor#sa 109,{
next;
set SAGE_Q2,0;
set SAGE_Q,10;
+ changequest 2050,2051;
mes "[Saphien Layless]";
mes "I will help you to write your thesis when you're ready with all those items.";
mes "I am looking forward to the next class with you.";
@@ -1625,6 +1653,7 @@ yuno_in03,62,176,2 script History Professor#sa 109,{
mes ".................................";
next;
set SAGE_Q,15;
+ changequest 2051,2052;
mes "[Saphien Layless]";
mes "Oh, did you finish already? Well done.";
mes "Please handle this with care, because you won't be able to do this ever again.";
@@ -1737,6 +1766,7 @@ yuno_in03,32,102,1 script Biology Professor#sa 755,{
next;
if (sage_m4 == 1) {
set SAGE_Q2,1;
+ changequest 2048,2053;
mes "[Lucius Celsus]";
mes "Go bring the following items to me.";
mes "5 ^3355FFTentacle^000000,";
@@ -1745,6 +1775,7 @@ yuno_in03,32,102,1 script Biology Professor#sa 755,{
}
else if (sage_m4 == 2) {
set SAGE_Q2,2;
+ changequest 2048,2054;
mes "[Lucius Celsus]";
mes "Go bring the following items to me.";
mes "5 ^3355FFNipper^000000,";
@@ -1753,6 +1784,7 @@ yuno_in03,32,102,1 script Biology Professor#sa 755,{
}
else {
set SAGE_Q2,3;
+ changequest 2048,2054;
mes "[Lucius Celsus]";
mes "Go bring following items to me.";
mes "5 ^3355FFTendon^000000,";
@@ -1850,24 +1882,60 @@ yuno_in03,32,102,1 script Biology Professor#sa 755,{
switch(rand(1,4)) {
case 1:
set SAGE_Q2,4;
+ if(checkquest(2053) != -1) {
+ changequest 2053,2056;
+ }
+ else if(checkquest(2054) != -1) {
+ changequest 2054,2056;
+ }
+ else {
+ changequest 2055,2056;
+ }
mes "5 ^3355FFCobweb^000000,";
mes "5 ^3355FFShell^000000,";
mes "5 ^3355FFInsect Feeler^000000.";
break;
case 2:
set SAGE_Q2,5;
+ if(checkquest(2053) != -1) {
+ changequest 2053,2057;
+ }
+ else if(checkquest(2054) != -1) {
+ changequest 2054,2057;
+ }
+ else {
+ changequest 2055,2057;
+ }
mes "5 ^3355FFHorn^000000,";
mes "5 ^3355FFSnail's Shell^000000,";
mes "5 ^3355FFMoth Dust^000000.";
break;
case 3:
set SAGE_Q2,6;
+ if(checkquest(2053) != -1) {
+ changequest 2053,2058;
+ }
+ else if(checkquest(2054) != -1) {
+ changequest 2054,2058;
+ }
+ else {
+ changequest 2055,2058;
+ }
mes "5 ^3355FFMantis Scythe^000000,";
mes "5 ^3355FFWorm Peeling^000000,";
mes "5 ^3355FFRainbow Shell^000000.";
break;
case 4:
set SAGE_Q2,7;
+ if(checkquest(2053) != -1) {
+ changequest 2053,2059;
+ }
+ else if(checkquest(2054) != -1) {
+ changequest 2054,2059;
+ }
+ else {
+ changequest 2055,2059;
+ }
mes "5 ^3355FFCobweb^000000,";
mes "5 ^3355FFMantis Scythe^000000,";
mes "5 ^3355FFSolid Shell^000000.";
@@ -1935,6 +2003,18 @@ yuno_in03,32,102,1 script Biology Professor#sa 755,{
next;
set SAGE_Q2,0;
set SAGE_Q,12;
+ if(checkquest(2056) != -1) {
+ changequest 2056,2051;
+ }
+ else if(checkquest(2057) != -1) {
+ changequest 2057,2051;
+ }
+ else if(checkquest(2058) != -1) {
+ changequest 2058,2051;
+ }
+ else {
+ changequest 2059,2051;
+ }
mes "[Lucius Celsus]";
mes "I will help you in writing the thesis when you bring all of those items.";
mes "You're almost there. Isn't learning easy?";
@@ -1996,6 +2076,7 @@ yuno_in03,32,102,1 script Biology Professor#sa 755,{
mes ".................................";
next;
set SAGE_Q,15;
+ changequest 2051,2052;
mes "[Lucius Celsus]";
mes "Are you done? Okay, then it's over.";
mes "You won't be able to write another thesis again, handle this with care.";
@@ -2100,6 +2181,7 @@ yuno_in03,244,31,3 script Physics Professor#sa 120,{
mes "It's not so hard, isn't it?";
next;
set SAGE_Q2,1;
+ changequest 2049,2060;
mes "[Aebecee George]";
mes "Why don't you ask a thief pal for help?";
mes "We'll start the class when you bring me those stones~ Tee hee~";
@@ -2135,6 +2217,7 @@ yuno_in03,244,31,3 script Physics Professor#sa 120,{
mes "I will give you these elemental ores...but...they are not for free.";
mes "Whoa there cowboy! Don't pull out so soon~ Listen, tee hee~";
set SAGE_Q2,2;
+ changequest 2060,2061;
next;
mes "[Aebecee George]";
mes "Please make arrows using these items and bring them to me, pretty please~";
@@ -2193,6 +2276,7 @@ yuno_in03,244,31,3 script Physics Professor#sa 120,{
mes "When you come to the next class, bring ^3355FF1 Holy Water^000000~";
mes "I hope you have at least one Priest friend. Oh, you don't? Well, it couldn't hurt to get friendly with one.";
set SAGE_Q2,3;
+ changequest 2061,2062;
close;
}
else {
@@ -2242,6 +2326,7 @@ yuno_in03,244,31,3 script Physics Professor#sa 120,{
mes "Tee hee~ yes! Yes! I am the best teacher in the world! Oh, I am on fire! Tee hee~";
set SAGE_Q2,0;
set SAGE_Q,14;
+ changequest 2062,2051;
next;
mes "[Aebecee George]";
mes "Okay, please gather these items so you can write the thesis, dear~ Tee hee~";
@@ -2408,6 +2493,7 @@ yuno_in03,244,31,3 script Physics Professor#sa 120,{
mes ".................................";
next;
set SAGE_Q,15;
+ changequest 2051,2052;
mes "[Aebecee George]";
mes "Tee hee, so... are you done with your thesis? What do you think of your work? I think you did fine~";
mes "Don't forget, this is the first and the last time you'll write a thesis, okay? Tee hee~";
diff --git a/npc/jobs/2-2e/SoulLinker.txt b/npc/jobs/2-2e/SoulLinker.txt
index 050c3a0d9..870e4cc94 100644
--- a/npc/jobs/2-2e/SoulLinker.txt
+++ b/npc/jobs/2-2e/SoulLinker.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= Celestria & Samuray22
//===== Current Version: =====================================
-//= 1.4
+//= 1.5
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -19,6 +19,7 @@
//= No longer used a global var, uses an NPC var instead.
//= 1.3a Deleted Empty Color Tag. (bugreport:1572) [Samuray22]
//= 1.4 Replaced effect numerics with constants. [L0ne_W0lf]
+//= 1.5 Added Quest Log commands. [Kisuka]
//============================================================
morocc_in,174,30,6 script Kid#link1 716,{
@@ -157,6 +158,7 @@ morocc_in,174,30,6 script Kid#link1 716,{
close;
}
set SOUL_Q,1;
+ setquest 6005;
mes "[Kid]";
mes "So you want to become";
mes "a Soul Linker? Great!";
@@ -197,6 +199,7 @@ morocc_in,174,30,6 script Kid#link1 716,{
delitem 929,1; //Immortal_Heart
delitem 748,1; //Witherless_Rose
set SOUL_Q,2;
+ changequest 6005,6006;
mes "[Kid]";
mes "Great, I see that you've";
mes "brought everything. But";
@@ -359,6 +362,7 @@ OnTouch:
mes "more spirits as a Soul Linker.";
next;
set SOUL_Q,3;
+ changequest 6006,6007;
mes "[Maia]";
mes "We can only remain in";
mes "your mind for 3 minutes.";
@@ -428,6 +432,7 @@ OnTouch:
mes "powers as a Soul Linker";
mes "wisely and for just purposes.";
next;
+ completequest 6008;
callfunc "Job_Change",Job_Soul_Linker;
callfunc "F_ClearJobVar"; // clears all job variables for the current player
set SOUL_Q,0;
@@ -509,6 +514,9 @@ job_soul,30,35,6 script Monk Spirit#link4 827,{
mes "possibly have to do this.";
next;
set SOUL_Q,4;
+ if(checkquest(6008) == -1) {
+ changequest 6007,6008;
+ }
mes "[Monk Spirit]";
mes "I beg of you...";
mes "I need you to help";
@@ -555,6 +563,9 @@ job_soul,30,25,7 script Sage Spirit#link5 754,{
mes "require your help. I beg you,";
mes "let me become your spirit ally.";
set SOUL_Q,4;
+ if(checkquest(6008) == -1) {
+ changequest 6007,6008;
+ }
next;
mes "[Sage Spirit]";
mes "I believe that you";
@@ -596,6 +607,9 @@ job_soul,25,30,5 script Alchemist Spirit#link7 744,{
mes "on to the next world until I've";
mes "passed on my techniques...";
set SOUL_Q,4;
+ if(checkquest(6008) == -1) {
+ changequest 6007,6008;
+ }
next;
mes "[Alchemist Spirit]";
mes "I'm powerless as a spirit,";
diff --git a/npc/jobs/novice/supernovice.txt b/npc/jobs/novice/supernovice.txt
index c6037f103..f81ffbdb6 100644
--- a/npc/jobs/novice/supernovice.txt
+++ b/npc/jobs/novice/supernovice.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= Darkchild
//===== Current Version: =====================================
-//= 2.1
+//= 2.2
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -15,6 +15,7 @@
//= 1.9 Rescripted to the Aegis 10.3 Standars. [Samuray22]
//= 2.0 Rescripted again, this time using an iRO base. [L0ne_W0lf]
//= 2.1 Swapped use of baseclass for basejob. [L0ne_W0lf]
+//= 2.2 Added Quest Log commands. [Kisuka]
//============================================================
aldeba_in,223,167,3 script Tzerero#sn 709,{
@@ -53,6 +54,7 @@ aldeba_in,223,167,3 script Tzerero#sn 709,{
mes "There's nothing's there.";
mes "Something fishy is going on here!^000000";
next;
+ completequest 6010;
callfunc "F_ClearJobVar";
getitem 2339,1; //G_Strings
if (Upper==0) jobchange Job_SuperNovice;
@@ -208,6 +210,7 @@ aldeba_in,223,167,3 script Tzerero#sn 709,{
mes "Hahahahaha~";
next;
set SUPNOV_Q,1;
+ setquest 6010;
mes "[Tzerero]";
mes "Good luck, my friend.";
close;
diff --git a/npc/jobs/valkyrie.txt b/npc/jobs/valkyrie.txt
index 53bf49913..b77eed5ec 100644
--- a/npc/jobs/valkyrie.txt
+++ b/npc/jobs/valkyrie.txt
@@ -232,7 +232,6 @@ yuno_in02,88,164,5 script Metheus Sylphe#Library 742,{
if (Zeny >= 1285000) {
set zeny,zeny-1285000;
set valkyrie_Q,1;
- setquest 1000;
mes "[Metheus Sylphe]";
mes "Thank you, your donation will be used for a good cause. You may";
mes "now go in and read the book.";
@@ -325,6 +324,9 @@ yuno_in02,93,207,1 script Book of Ymir 111,{
mes "can confirm that Valkyrie and Valhalla actually exist...";
next;
set valkyrie_Q,2;
+ if(checkquest(1000) == -1) {
+ setquest 1000;
+ }
mes "[The Book of Ymir]";
mes "Let the heroes live new lives";
mes "so they can protect the world";