diff options
Diffstat (limited to 'npc/jobs/2-2')
-rw-r--r-- | npc/jobs/2-2/alchemist.txt | 1080 | ||||
-rw-r--r-- | npc/jobs/2-2/bard.txt | 476 | ||||
-rw-r--r-- | npc/jobs/2-2/crusader.txt | 1184 | ||||
-rw-r--r-- | npc/jobs/2-2/dancer.txt | 1040 | ||||
-rw-r--r-- | npc/jobs/2-2/monk.txt | 1916 | ||||
-rw-r--r-- | npc/jobs/2-2/rogue.txt | 758 | ||||
-rw-r--r-- | npc/jobs/2-2/sage.txt | 2180 |
7 files changed, 8634 insertions, 0 deletions
diff --git a/npc/jobs/2-2/alchemist.txt b/npc/jobs/2-2/alchemist.txt new file mode 100644 index 000000000..8590c9df8 --- /dev/null +++ b/npc/jobs/2-2/alchemist.txt @@ -0,0 +1,1080 @@ +//===== eAthena Script =======================================
+//= Alchemist Job Quest
+//===== By: ==================================================
+//= nestor_zulueta (Fusion)
+//= converted by Darkchild
+//===== Current Version: =====================================
+//= 1.6a
+//===== Compatible With: =====================================
+//= eAthena 1.0 +
+//===== Description: =========================================
+//= Alchemist job quest based off of official iRO quest.
+//===== Additional Comments: =================================
+//= v1.0 Working.
+//= npc/quests/counteragent_mixture.txt Also Needed
+//= npc/quests/quests_yuno.txt Also Needed [Darkchild]
+//= v1.1 Fixed some minor bugs. Optimized some lines. Re-organized the script a bit.
+//= Giving Parmry NPC, Hammer and Old Book now waves the 50000 fee. (based of mRO website)
+//= Having a joblvl of 50 allows you to skip Rasputin's test. (based of mRO website) [kobra_k88]
+//= 1.2 fixed a few typos (have to hunt more) [Lupus]
+//= 1.3 Added Baby Class Support [Lupus]
+//= 1.6 Added a func which prevent advanced classes passing
+//= 2nd Job Quests again. It also guides adv classes where
+//= to go. [Lupus]
+//= 1.6a fixed some wrong answers, thanks to zlider for info [Lupus]
+//============================================================
+
+
+//==================================================================================================//
+// Registration and First Test
+//==================================================================================================//
+alde_alche.gat,27,185,4 script Parmry Gianino 744,{
+ callfunc "F_BlockHigh",29,"Merchant High",42,"Creator","Parmry Gianino";
+
+ mes "[Parmry Gianino]";
+ if(BaseJob == 5) goto L_Merc;
+ if(BaseJob == Job_Alchem) goto L_Alch;
+L_Other:
+ mes "Welcome to the Alchemist Union. Ah, I apologize but I'm busy right now.";
+ close;
+L_Alch:
+ mes "Hey there fellow Alchemist. How's the business going? Good I hope, well good luck to you.";
+ close;
+L_Merc:
+ if(ALCH_Q == 1) goto L_Check;
+ if(ALCH_Q == 2) goto L_Test2;
+ if(ALCH_Q == 3) goto L_Test3;
+ if(ALCH_Q == 4) goto L_Test4;
+ if(ALCH_Q == 5) goto L_Test5;
+ if(ALCH_Q == 6) goto L_Test6;
+ if(ALCH_Q == 7) goto L_GoChange;
+ mes "Welcome to the Alchemist Union.";
+ mes "How may i help you?";
+ next;
+ menu "I would like to learn about Alchemey",M_Learn, "I want to become an Alchemist.",L_Start, "Nothing.",M_End;
+
+ M_Learn:
+ mes "[Parmry Gianino]";
+ mes "Alchemists study and create new materials using a variety of existing substances.";
+ mes "They research the atoms of chemicals, and experiment to change the properties of the chemicals.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "Most people think the final goal is to create gold, but that's not the entire truth.";
+ mes "They make anything from simple medicines, to new materials.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "At times, some research the creation of life .... but that's considered god's territory...";
+ mes "That field is so complex, everyone simply researhes for now.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "If you are interested in becoming an Alchemist, I recommend that you gain a lot experience as a Merchant.";
+ mes "Being a merchant is a great opportunity to learn about materials while you deal with them.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "Only you can decide for yourself.";
+ mes "The road to becoming an Alchemist is very challenging.";
+ mes "You will need to focus on experimenting and researching rather than trade.";
+ close;
+ M_End:
+ mes "[Parmry Gianino]";
+ mes "Umm... Please say something if you need anything.";
+ close;
+L_Start:
+ mes "[Parmry Gianino]";
+ if(JobLevel < 40) goto L_LowLvl;
+ mes "Is that so? My name is Parmry Gianino of the Alchemist Association.";
+ mes "Nice to meet you.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "If you join our Union and pass some training you will be officially recognized,";
+ mes "as an Alchemist and be able to join our researches.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "But we dont accept everyone.";
+ mes "You must have a lot of effort, tenacity, and be able to devote yourself to research.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "There are a couple of requirements to join the association....";
+ mes "but we'll discuss that after you apply.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "Then, would you like to apply to register?";
+ next;
+ menu "I would like to apply.",M_Apply,"I'll do it later.",-;
+
+ mes "[Parmry Gianino]";
+ mes "If you are a talented Merchant,";
+ mes "you are always welcome here.";
+ mes "Come again soon.";
+ close;
+ M_Apply:
+ mes "[Parmry Gianino]";
+ mes "Fill out this application form please.....";
+ next;
+ mes "(you fill out the form and hand it back)";
+ next;
+ mes "[Parmry Gianino]";
+ mes "Very good. In order to join the Alchemist Union you must first pay a ^5533FF50,000^000000 zeny membership fee.";
+ mes "You will also need to bring us a few items as well.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "Of course if you bring us an ^5533FFOld Magic Book^000000 and an ^5533FFHammer of Blacksmith^000000...";
+ mes "You won't have to pay the fee.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "Let's see.... you'll need to bring us....^5533FF100 Mini Furnaces^000000.";
+ mes "Once you have the Mini Furnaces come back and see me.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "When you come back I will also collect the ^5533FF50,000^000000 zeny fee so don't forget about that either.";
+ mes "See you soon...";
+ set ALCH_Q,1;
+ close;
+L_LowLvl:
+ mes "You must be at least Job Level 40 to become a Alchemist.";
+ close;
+
+L_Check:
+ mes "Oh, your back already... lets see....";
+ next;
+ mes "[Parmry Gianino]";
+ if(countitem(612) < 100) goto L_NoItems;
+ if(countitem(1005) > 0 && countitem(1006) > 0) goto L_Skip;
+ if(zeny < 50000) goto L_NoZeny;
+ set zeny,zeny - 50000;
+ delitem 612, 100;
+ mes "You have 50,000 zeny...... You brought 100 mini furnaces.... Great!";
+ mes "Now you are ready to learn the basics of being an Alchemist.";
+ next;
+
+ L_Cont:
+ mes "[Parmry Gianino]";
+ mes "But before that... ^5533FFRasputin^000000 wants to see you.....";
+ mes "Hmm..... I'm not sure what it could be about....";
+ next;
+ mes "[Parmry Gianino]";
+ mes "You should go visit him now. Just go down those stairs to my right. His room is in the SouthEastern corner.";
+ set ALCH_Q,2;
+ close;
+
+ L_NoZeny:
+ mes "You still need to pay the ^FF553350,000^000000 zeny membership fee.";
+ mes "Let me know when you have enough money.";
+ close;
+ L_NoItems:
+ mes "As I mentioned before, you must bring ^FF3355100 Mini Furnaces^000000 to join the union.";
+ mes "Please come back when you are ready...";
+ close;
+L_Skip:
+ mes "Oh, you have an ^5533FFOld Magic Book^000000 and an ^5533FFHammer of Blacksmith^000000........";
+ mes "That means you don't have to pay the membership fee.";
+ next;
+ mes "[Parmry Gianino]";
+ mes "Excellent. Now I'll just take the Book, Hammer, 100 mini furnaces, and you'll be all set to learn the basics of being an Alchemist.";
+ next;
+ delitem 1005,1;
+ delitem 1006,1;
+ delitem 612, 100;
+ goto L_Cont;
+
+L_Test2:
+ mes "Go visit ^5533FFRasputin^000000 now!";
+ close;
+L_Test3:
+ mes "Go visit ^5533FFDarwin^000000 now!";
+ close;
+L_Test4:
+ mes "Go visit ^5533FFVan Helmont^000000 now!";
+ close;
+L_Test5:
+ mes "Go visit ^5533FFNicholas Flamel^000000 now!";
+ close;
+L_Test6:
+ mes "Go back to ^5533FFNicholas Flamel^000000 now!";
+ mes "He still has one more test for you.";
+ close;
+L_GoChange:
+ mes "Wow you finished all of the tests? Great now you can visit the Headmaster, ^5533FFVincent Carsciallo^000000.";
+ mes "He's the one who will change you into an Alchemist.";
+ close;
+}
+
+
+//==================================================================================================//
+// 2nd Test: Math test :(
+//==================================================================================================//
+alde_alche.gat,175,107,4 script Rasputin Gregory 749,{
+ mes "[Rasputin Gregory]";
+ if(BaseJob == 5) goto L_Merc;
+L_Other:
+ mes "What is it, kikikiki. Are you curious about what I do...?";
+ mes "I'll just especially let you know. You see I... Kekeke..";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Am researching! Once this potion is complete... you will be able to take over an entire country!!";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Kikikikikekekekek. It's a secret to the people of Prontera.....";
+ close;
+L_Merc:
+ if(ALCH_Q == 2) goto L_Start;
+ if(ALCH_Q == 3) goto L_Done;
+ mes "Kikikikikekekekeke.";
+ mes "What is it! You punk.";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "A Merchant should go and set up a shop...";
+ mes "Why'd you come to a place like this!?";
+ mes "Are you looking for something to scab off?";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Kikiki... Go, leave this place.";
+ mes "Dont loiter ... Kekeke.";
+ close;
+L_Start:
+ if(ALCH_Q2 == 1) goto L_ReTest;
+ if(JobLevel == 50) goto L_Skip;
+ mes "Keke, another dumb one has stumbled into here.";
+ mes "Join the Union?";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "I don't like it... I just don't...!";
+ mes "Everywhere, all joining and being called Alchemist just for knowing how to mix herbs!!!";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Kikiki, so for that reason an interview is necessary!";
+ mes "I plan on scolding all the incompetent ones and chasing them away!!";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "You look dumb founded. It must be pretty crazy.";
+ mes "If you were thinking of just changing clothes you thought wrong... Kekeke..";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Now try solving the problems I give you.";
+ mes "We'll see how smart you are.";
+ next;
+ set @score,0;
+
+ //set of question 1
+ q1:
+ mes "[Rasputin Gregory]";
+ mes "12+23+34+45 =?";
+ next;
+ input @num;
+ if(@num == 114) set @score,@score+10;
+ q2:
+ mes "[Rasputin Gregory]";
+ mes "1000-36-227-348 =?";
+ next;
+ input @num;
+ if(@num == 389) set @score,@score+10;
+ q3:
+ mes "[Rasputin Gregory]";
+ mes "9765/3/5/7 =?";
+ next;
+ input @num;
+ if(@num == 93) set @score,@score+10;
+ q4:
+ mes "[Rasputin Gregory]";
+ mes "(2646/7) + (13*28) =?";
+ next;
+ input @num;
+ if(@num == 742) set @score,@score+10;
+ q5:
+ mes "[Rasputin Gregory]";
+ mes "With a 24% discount";
+ mes "How much are 12 Red Potions,";
+ mes "5 Fly Wings, and ";
+ mes "1 Butterfly Wing altogether?";
+ next;
+ input @num;
+ if(@num == 909) set @score,@score+10;
+ q6:
+ mes "[Rasputin Gregory]";
+ mes "What is the total weight of 3 ";
+ mes "Scimiters,";
+ mes "2 Helms and 1 Coat";
+ next;
+ input @num;
+ if(@num == 450) set @score,@score+10;
+ q7:
+ mes "[Rasputin Gregory]";
+ mes "What is the total defense of ";
+ mes "a Biretta, Mantle, Opera Mask,";
+ mes "Ribbon, ";
+ mes "Muffler, Boots, and Ear Muffs?";
+ next;
+ input @num;
+ if(@num == 19) set @score,@score+10;
+ q8:
+ mes "[Rasputin Gregory]";
+ mes "If you buy 5 Helms with a 24%";
+ mes "discount ";
+ mes "and sell it at 20%, how much do you";
+ mes "earn?";
+ next;
+ input @num;
+ if(@num == 1760) set @score,@score+10;
+ goto L_Total;
+
+L_ReTest:
+ mes "What, you want to take the test again?";
+ mes "I thought I told you to leave.";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Well, I'll let you go this one time...";
+ mes "I forgive you ... Kekeke.";
+ mes "Do well this time...";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Now then, answer the question I ask.";
+ mes "Let see how smart you are.";
+ next;
+ set @score,0;
+
+ //set of question 2
+ q11:
+ mes "[Rasputin Gregory]";
+ mes "13+25+37+48=?";
+ next;
+ input @num;
+ if(@num == 123) set @score,@score+10;
+ q12:
+ mes "[Rasputin Gregory]";
+ mes "1000-58-214-416 =?";
+ next;
+ input @num;
+ if(@num == 312) set @score,@score+10;
+ q13:
+ mes "[Rasputin Gregory]";
+ mes "12*24*3=?";
+ next;
+ input @num;
+ if(@num == 864) set @score,@score+10;
+ q14:
+ mes "[Rasputin Gregory]";
+ mes "10530/3/5/2=?";
+ next;
+ input @num;
+ if(@num == 351) set @score,@score+10;
+ q15:
+ mes "[Rasputin Gregory]";
+ mes "(35*19) - (1792/7) =?";
+ next;
+ input @num;
+ if(@num == 409) set @score,@score+10;
+ q16:
+ mes "[Rasputin Gregory]";
+ mes "(2368/8) + (24*17) = ?";
+ next;
+ input @num;
+ if(@num == 704) set @score,@score+10;
+ q17:
+ mes "[Rasputin Gregory]";
+ mes "(2646/7) + (13*28)=?";
+ next;
+ input @num;
+ if(@num == 742) set @score,@score+10;
+ q18:
+ mes "[Rasputin Gregory]";
+ mes "If buying at a 24% discount,";
+ mes "What is the total price of";
+ mes "15 Green Potions,";
+ mes "6 Magnifiers and 4 Traps?";
+ next;
+ input @num;
+ if(@num == 934) set @score,@score+10;
+ q19:
+ mes "[Rasputin Gregory]";
+ mes "What is the total weight of ";
+ mes "3 Ring Pommel Sabers,";
+ mes "4 Caps and 2 Boots?";
+ next;
+ input @num;
+ if(@num == 550) set @score,@score+10;
+ q20:
+ mes "[Rasputin Gregory]";
+ mes "What is the total defense of a ";
+ mes "Buckler, Coat, Gas Mask, Big";
+ mes "Ribbon, Ribbon, Sakkat and";
+ mes "Glasses?";
+ next;
+ input @num;
+ if(@num == 16) set @score,@score+10;
+ q21:
+ mes "[Rasputin Gregory]";
+ mes "How much zeny do you make";
+ mes "if you buy Tights at a 24%";
+ mes "discount";
+ mes "and sell it at 20% of the normal";
+ mes "price?";
+ next;
+ input @num;
+ if(@num == 2840) set @score,@score+10;
+L_Total:
+ mes "[Rasputin Gregory]";
+ if(@score < 80) goto L_Failed;
+ set ALCH_Q,3;
+ set ALCH_Q2, 0;
+ mes "Kikiki... I'll let you go.";
+ mes "Do some good research and be of some help to Rasputin... Kikiki!";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Well then go! ^5533FFGo to Darwin^000000.";
+ mes "He'll teach you how to do the experiments.";
+ mes "Tell him I sent you.";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Kikikikekeke.";
+ mes "Dont think this is the end of it!";
+ close;
+
+ L_Failed:
+ set ALCH_Q2,1;
+ mes "...Kekeke, you idiot,";
+ mes "I feel dumb asking you all the question!";
+ mes "you got them all wrong!!!";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "How can a person that can't even answer these question think of being an Alchemist!";
+ mes "What? did you get any right?";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Stupid! If you get one wrong everything is wrong for an Alchemist!";
+ mes "Go! Leave! Get out of here!";
+ close;
+L_Done:
+ mes "What are you doing? Leave already.";
+ mes "Go to ^5533FFDarwin^000000.";
+ mes "He'll teach you how to do the experiments.";
+ mes "Tell him I sent you.";
+ next;
+ mes "[Rasputin Gregory]";
+ mes "Kikikikekeke.";
+ mes "Dont think this is the end of it!";
+ close;
+L_Skip:
+ mes "Hmm... you have a pretty high job level..... I'll be nice today and let you pass.";
+ mes "Next you should go see ^5533FFDarwin^000000.";
+ mes "He'll teach you how to do the experiments.";
+ mes "Tell him I sent you.";
+ set ALCH_Q,3;
+ set ALCH_Q2, 0;
+ close;
+}
+
+
+//==================================================================================================//
+// 3rd Test: Mix some medicine
+//==================================================================================================//
+alde_alche.gat,13,15,8 script Darwin 750,{
+ mes "[Darwin]";
+ if(BaseJob == 5) goto L_Merc;
+L_Other:
+ mes "more to lose or gain...";
+ mes "It's always like that...";
+ next;
+ mes "[Darwin]";
+ mes "All I can see through my cursed eyes";
+ mes "are illusions from the past,";
+ mes "Ahahahaha...";
+ next;
+ mes "[Darwin]";
+ mes "There's no such thing as paradise ... is there ?";
+ mes "My love Harmona.... Aah....";
+ close;
+
+L_Merc:
+ if(ALCH_Q == 3) goto L_Start;
+ if(ALCH_Q == 4) goto L_Done;
+ goto L_Other;
+
+L_Start:
+ if(ALCH_Q2 == 1) goto L_Check;
+ mes "...........";
+ mes ".........";
+ mes "....Who is it...";
+ next;
+ mes "[Darwin]";
+ mes "A wolf? Or a human...";
+ mes "You must be looking for something as well.";
+ next;
+ mes "[Darwin]";
+ mes "If you have something precious, be careful.";
+ mes "You may lose something else while while going after another...";
+ next;
+ mes "[Darwin]";
+ mes "..........";
+ next;
+ mes "[Darwin]";
+ mes "... but what brings you here.";
+ mes "Coming to a place like this.";
+ next;
+ menu "I want to learn how to experiment.",M_Exp, "Tell me more about flowers.",M_Flow;
+
+ M_Flow:
+ mes "[Darwin]";
+ mes ".......";
+ mes "......";
+ mes "...think about your precious things...";
+ next;
+ mes "[Darwin]";
+ mes ".... There is a flower that I faintly remember....";
+ next;
+ mes "[Darwin]";
+ mes "I divulged into researching one thing.....";
+ mes "for the one I love...";
+ next;
+ mes "[Darwin]";
+ mes "Lets just say that it was about the relationship between wolf and flowers...";
+ mes "I wont tell you the details.";
+ next;
+ mes "[Darwin]";
+ mes "But yes ... it was a flower.";
+ mes "with its shine, it was said to let you see paradise Illusion Flower...";
+ next;
+ mes "[Darwin]";
+ mes "I made a homunculus.";
+ mes "Nobody believe me. that I made life from a flower!!!";
+ mes "My research!";
+ next;
+ mes "[Darwin]";
+ mes "But now, I have nothing left..";
+ mes "It's all over.";
+ mes "Time has stopped at that moment in my life...";
+ next;
+ mes "[Darwin]";
+ mes "Aag... Harmona, in the beautiful fields of flowers,";
+ mes "where have you gone....";
+ close;
+ M_Exp:
+ mes "[Darwin]";
+ mes "You want to learn Alchemy...";
+ mes "All the knowledge I possess..";
+ mes "I made to make my dreams come true...";
+ next;
+ mes "[Darwin]";
+ mes "I'll teach you the basics...";
+ mes "but you must determine your own wishes.";
+ next;
+ mes "[Darwin]";
+ mes "So, here are the basics.";
+ mes "This is how you make simple medicine...";
+ mes "Prepare some stuff...";
+ next;
+ mes "[Darwin]";
+ mes "^5533FF3 Medicine Bowls";
+ mes "3 Empty Bottles";
+ mes "1 Red Herb";
+ mes "1 Yellow Herb";
+ mes "1 White Herb^000000";
+ next;
+ mes "[Darwin]";
+ mes "Once you have prepared all the items... come here.";
+ set ALCH_Q2, 1;
+ close;
+
+L_Check:
+ mes "...........";
+ mes ".........";
+ mes "...Who is it....";
+ next;
+ mes "[Darwin]";
+ mes "Ah You're the one that wants to learn Alchemy...";
+ mes "So did you prepare everything?";
+ next;
+ if(countitem(7134) < 3 || countitem(713) < 3 || countitem(507) < 1 || countitem(508) < 1 || countitem(509) < 1) goto L_NotEnuf;
+ delitem 7134,3;
+ delitem 713,3;
+ delitem 507,1;
+ delitem 508,1;
+ delitem 509,1;
+ mes "[Darwin]";
+ mes "Seems like you have everything ready.";
+ mes "As i promised, I'll teach you how to make medicine";
+ next;
+ mes "[Darwin]";
+ mes "First, prepare the Medicine Bowl then put the Herbs inside like this.";
+ mes "And you slowly crush them.";
+ next;
+ mes "[Darwin]";
+ mes "Pour small amounts of clean water and stirr until it become thick, ";
+ mes "then add some more Herbs.";
+ next;
+ mes "[Darwin]";
+ mes "That's how you make it if you think you have enough, ";
+ mes "gently pour it into an empty bottle";
+ next;
+ mes "[Darwin]";
+ mes "There you go, its complete.";
+ mes "This time, do as I showed you.";
+ mes "It should be easy since its so simple.";
+ next;
+ mes "[Darwin]";
+ mes "... even though you don't have one?";
+ next;
+ set @score,0;
+ menu "Prepare the medicine bowl",-, "Wear the medicine bowl on the head",M_0, "Kick the medicine bowl",M_0;
+
+ set @score,@score+10;
+ M_0:
+
+ menu "Put the sand into the medicine bowl",M_1, "Put the herbs into the medicine bowl",-, "Put the harp into the medicine bowl",M_1;
+
+ set @score,@score+10;
+ M_1:
+
+ menu "Smash the herbs",-, "Smash the medicine bowl",M_2, "Smash the Tarosia's foots",M_2;
+
+ set @score,@score+10;
+ M_2:
+
+ menu "Spray the water",M_3, "Drink the water",M_3, "Pour in the water",-;
+
+ set @score,@score+10;
+ M_3:
+
+ menu "Continue to smash the herbs",-, "Continues to eat the herbs",M_4, "Continues to dance and sing",M_4;
+
+ set @score,@score+10;
+ M_4:
+
+ menu "Put in the noodles and fried it",M_5, "Put into the Empty Bottle",-, "Raise the medicine bowl and drink it",M_5;
+
+ set @score,@score+10;
+ M_5:
+
+ mes "[Darwin]";
+ if(@score < 60) goto L_Failed;
+ mes "... Good job. It came out prettywell considering it's your first time...";
+ mes "As a souvenier, take these.";
+ getitem 501,1;
+ getitem 503,1;
+ getitem 504,1;
+ set ALCH_Q,4;
+ set ALCH_Q2,0;
+ next;
+ mes "[Darwin]";
+L_Done:
+ mes "Go to ^5533FFVan Helmont^000000 in the next room...";
+ mes "He'll teach you more details.";
+ mes "Go learn from him.";
+ next;
+ mes "[Darwin]";
+ mes "Don't forget...";
+ mes "You must protect what is trully precious to you.....";
+ close;
+
+ L_Failed:
+ mes "... You messed up all the ingredients.";
+ mes "... Go bring some more.";
+ close;
+L_NotEnuf:
+ mes "[Darwin]";
+ mes "...You must've forgotten the materials to bring.";
+ mes "I'll tell you again.";
+ mes "Dont forget them this time.";
+ next;
+ mes "[Darwin]";
+ mes "^5533FF3 Medicine Bowls";
+ mes "3 Empty Bottles";
+ mes "1 Red Herb";
+ mes "1 Yellow Herb";
+ mes "1 White Herb^000000";
+ next;
+ mes "[Darwin]";
+ mes "Come back when you are ready...";
+ close;
+}
+
+
+//==================================================================================================//
+// 4th Test: Learn from Morgenstein
+//==================================================================================================//
+alde_alche.gat,79,19,4 script Van Helmont 748,{
+ mes "[Van Helmont]";
+ if(BaseJob == 5) goto L_Merc;
+L_Other:
+ mes "Just a little ... yes, a little bit more ....";
+ mes "agh, just a little bit more and it would've been done!";
+ next;
+ mes "[Van Helmont]";
+ mes "Why, why another failure!!!";
+ mes "Nothing was wrong!";
+ mes "Why! Why!";
+ next;
+ mes "[Van Helmont]";
+ mes "Does that mean I have to get more materials...";
+ mes "But I should be able to complete it one day....Heeh...";
+ close;
+L_Merc:
+ if(ALCH_Q == 4) goto L_Start;
+ if(ALCH_Q == 5) goto L_Done;
+ goto L_Other;
+L_Start:
+ if(ALCH_Q2 == 1) goto L_Check;
+ mes "Arrrrgh... Why does this formula just stop... What's wrong.";
+ mes "Theoretically it's all correct...";
+ mes "I'm sure it's because there is an error in the formula";
+ mes "somewhere...";
+ next;
+ mes "[Van Helmont]";
+ mes "That's it, I pour it here and it should stop... but this is the formula that solution doesn't stop flowing.";
+ mes " How could I make such a stupid mistake... when did I switch these...";
+ next;
+ mes "[Van Helmont]";
+ mes "Yes, that's it. I just need to fix this part.";
+ mes "No need to start over.";
+ mes "I just have to fix it...";
+ mes "....But, wait. wait.";
+ next;
+ mes "[Van Helmont]";
+ mes ".....................";
+ next;
+ mes "[Van Helmont]";
+ mes "....Who are you?";
+ next;
+ menu "I want to become an Alchemist.",-,".....",M_Bye;
+
+ mes "[Van Helmont]";
+ mes "Oh, I see....";
+ mes "Haha you want to learn Alchemy in world like this, what a funny merchant... hmmm.";
+ next;
+ mes "[Van Helmont]";
+ mes "Well, that's nice, but I have a very urgent experiment I must tend to.";
+ mes "So don't get in the way.";
+ next;
+ menu "Teach me something.",-,"..........",M_Bye;
+
+ mes "[Van Helmont]";
+ mes "Argh... didn't I just tell you not to bother me?";
+ mes "Why can't you understand when I say something!";
+ next;
+ mes "[Van Helmont]";
+ mes "Ok, I'll give you an assignment.";
+ mes "Go study and come back. Let's see.";
+ mes "What would be good... Hmm...";
+ next;
+ mes "[Van Helmont]";
+ mes "Oh, I got it. Go learn from ^5533FFMorgenstein^000000. Learn how to make a ^009500Counteragent^000000 and ^FF3355Mixture^000000.";
+ mes "You can find him in ^5533FFGeffen^000000.";
+ next;
+ mes "[Van Helmont]";
+ mes "You don't need to bring what you made. But just go watch how he makes medicine and stuff.";
+ mes "Got it?";
+ next;
+ mes "[Van Helmont]";
+ mes "Well then, see you later.";
+ mes "You'd be best off going as soon as you can.";
+ set ALCH_Q2,1;
+ close;
+ M_Bye:
+ mes "[Van Helmont]";
+ mes "If you dont have business here just go away. Ok!!!";
+ close;
+L_Check:
+ if(al_morgen != 1) goto L_NotRdy;
+ mes "Yes, cut the Tentacle..";
+ mes "and mix some Sticku Mucus,";
+ mes "Jellopy solution in the test tube Darn, where did the Medicine Bowl go...";
+ next;
+ mes "[Van Helmont]";
+ mes "Did I use them all.. At a time like this, grrr. I wonder if Nicholas has any left.";
+ mes "Ganfunnit... what a pain.";
+ mes "....but, wait. wait.";
+ next;
+ mes "[Van Helmont]";
+ mes "Ah, you're that merchant from before. So.. did you learn anything?";
+ mes "I didn't send you there to play.";
+ next;
+ mes "[Van Helmont]";
+ mes "Let me ask you a couple of questions. Answer how you heard and learned.";
+ next;
+ set @score,0;
+
+ Q_1a:
+ mes "[Van Helmont]";
+ mes "What item is required to form the Counteragent?";
+ next;
+ menu "Feather",-,"Sticky Mucus",-,"Animal Blood",-;
+
+ Q_1b:
+ mes "[Van Helmont]";
+ mes "Which of the following item is not required in forming the Counteragent?";
+ next;
+ menu "Karvodailnirol",-,"Detrimindexta",Q_2a,"Alchol",Q_2a;
+
+ set @score,@score+10;
+
+ Q_2a:
+ mes "[Van Helmont]";
+ mes "What item is required to form the Mixture?";
+ next;
+ menu "Monster's Feed",-,"Lip of Ancient Fish",-,"Rotten Bandage",-;
+
+ Q_2b:
+ mes "[Van Helmont]";
+ mes "Which of the following item is not required in the process of forming the Mixture?";
+ next;
+ menu "Karvodailnirol",L_Result,"Detrimindexta",-,"Alchol",L_Result;
+
+ set @score,@score+10;
+
+L_Result:
+ mes "[Van Helmont]";
+ if(@score < 20) goto L_Failed;
+ mes "Hmm, you learned well. Ok, now you know some stuff about medicine?";
+ mes "Eh?";
+ mes "I know, you must have a lot to say but let me continue with my experiment.";
+ next;
+ mes "[Van Helmont]";
+ mes "Go out and to the room next to here. ^5533FFNicholas^000000 probably has more to teach you than me.";
+ set ALCH_Q,5;
+ set ALCH_Q2,0;
+ set al_morgen, 0;
+ close;
+
+ L_Failed:
+ mes "...Be honest. You don't know,";
+ mes "do you? I thought I told you to go learn from Morgenstein...";
+ next;
+ mes "[Van Helmont]";
+ mes "Don't even think about coming back before you've learned for sure!";
+ mes "Stop bothering me and leave!";
+ close;
+L_NotRdy:
+ mes "Didn't I tell you to visit Morgenstein in Geffen!?!";
+ mes "He is a wise man! You should go to him!";
+ close;
+L_Done:
+ mes "What are you doing? Go out and to the room next to here. ^5533FFNicholas^000000 probably has more to teach you than me.";
+ mes "I have no more business with you.";
+ close;
+
+}
+
+
+//==================================================================================================//
+// Test 5 & 6: Word Scramble, Help the Baijin Bros.
+//==================================================================================================//
+alde_alche.gat,145,19,4 script Nicholas Flamel 57,{
+ mes "[Nicholas Flamel]";
+ if(BaseJob == 5) goto L_Merc;
+L_Other:
+ mes "Lorem ipsum dolor sit amet,";
+ mes "consectetuer adipiscing elit.";
+ mes "Vivamus sem. Sed metus lacus, viverra id, rutrum eget, rhoncus sit amet, lectus.";
+ mes "Suspendisse sit amet urna in nisl frigilla faucibus.";
+ mes "Nulla scelerisque eros....";
+ mes "......mumblemumble........";
+ close;
+L_Merc:
+ if(ALCH_Q == 5) goto L_Start;
+ if(ALCH_Q == 6) goto L_Start2;
+ if(ALCH_Q == 7) goto L_Done;
+ goto L_Other;
+L_Start:
+ if(ALCH_Q2 == 1) goto L_ReTest;
+ mes "Ooh... you're the Merchant that wants to become an Alchemist?";
+ mes "But you know... not anyone can become an Alchemist.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "The Union doesn't like those that just want to become Alchemist without a clear goal.";
+ mes "So... to see if you qualify, I'll test how smart you are.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "As you can see, Alchemist must memorize many equations,";
+ mes "chemical equations and a lot of other information.";
+ mes "If you're not at a certain level..";
+ mes "it's actually pretty tough.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "The idea is to prevent those that are going to be useless Alchemists from joining the union!";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "Ok... Here go the questions!";
+ mes "This is to test your concentration so that you won't get confused when looking at charts.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "Find the words from the group of letters. They can be made by using some or all the letters given";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "You pass if you choose the word that is 'IN' the puzzle.";
+ next;
+
+ Q_1:
+ set @score,0;
+ mes "[Nicholas Flamel]";
+ mes "s m i e x b w u n e n t a g l r";
+ next;
+ menu "tiger",-,"wolf",Q_2,"pumpkin",Q_2,"tripped",Q_2;
+
+ set @score,@score+10;
+
+ Q_2:
+ mes "[Nicholas Flamel]";
+ mes "n i e g b o p d s o a u w r v";
+ next;
+ menu "bash",Q_3,"provoke",Q_3,"endure",-,"stun",Q_3,"abracadabra",Q_3;
+
+ set @score,@score+10;
+
+ Q_3:
+ mes "[Nicholas Flamel]";
+ mes "l r m g r e x t a v i n e d e";
+ next;
+ menu "alberta",Q_4,"latifoliate",Q_4,"crimson",Q_4,"maple",Q_4,"evergreen",-;
+
+ set @score,@score+10;
+
+ Q_4:
+ mes "[Nicholas Flamel] ";
+ mes "r o e h n r o m c a i n p t t";
+ next;
+ menu "forgemerchant",L_Score,"potionmerchant",-,"dcmerchant",L_Score,"vendingmerchant",L_Score;
+
+ set @score,@score+10;
+L_Score:
+ if(@score < 40) goto L_Failed;
+ set ALCH_Q,6;
+ set ALCH_Q2,0;
+ mes "[Nicholas Flamel]";
+ mes "You seem to be done.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "Let's see.";
+ mes "...Good job. Excellent.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "Somehow you found all of them.";
+ mes "With that kind of concentration, you should easily be able to read the medicine dictionaries.";
+ mes "Let's see... next is..";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "Come back in a little bit. Get organized too..";
+ close;
+
+ L_Failed:
+ mes "[Nicholas Flamel]";
+ mes "Hmmm... You failed!";
+ mes "Get your glasses maybe you can pass next time wearing those.";
+ set ALCH_Q2,1;
+ close;
+L_ReTest:
+ mes "Hmmm you returned.";
+ mes "Well will see if you changed.";
+ next;
+ goto Q_1;
+
+L_Start2:
+ if(ALCH_Q2 > 0) goto L_Check2;
+ mes "Next, you have to go somewhere.";
+ mes "Go to ^5533FF'The Forgotten City of Yuno'^000000 and meet the ^FF3355Bain and Bajin^000000 brothers who are researching alchemy with the Sages there.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "Go help out and come back Here, take these... it will help you get close to them.";
+ next;
+ getitem 974,1;
+ getitem 7068,5;
+ getitem 7043,5;
+ getitem 756,3;
+ getitem 757,3;
+ mes "[Nicholas Flamel]";
+ mes "1 Mixture";
+ mes "5 Burnt Tree";
+ mes "5 Fine Sand ";
+ mes "3 Rough Oridecon ";
+ mes "3 Rough Elunium";
+ set ALCH_Q2,1;
+ next;
+ mes "[Nicholas Flamel]";
+ mes "Have a safe trip.";
+ mes "It's Yuno. Come back in one piece.";
+ close;
+L_Check2:
+ if(ALCH_Q2 < 2) goto L_NotDone;
+ set ALCH_Q, 7;
+ set ALCH_Q2, 0;
+ mes "Ooh! Well done on such a long trip.";
+ mes "I got a message saying that the Bain and Bajin brothers were happy about your visit.";
+ next;
+ mes "[Nicholas Flamel]";
+ mes "You must have successfully helped them.";
+ mes "If you're good enough to be of help to the brothers... ok, I think you qualify.";
+ next;
+ mes "[Nicholas Flamel]";
+L_Done:
+ mes "Go to the Union Leader on the 2nd floor!";
+ mes "Congratulations. You'll change jobs soon!";
+ close;
+
+ L_NotDone:
+ mes "Bain and Bajin brothers are in Yuno go help them.";
+ close;
+
+}
+
+
+//==================================================================================================//
+// Job Changer
+//==================================================================================================//
+alde_alche.gat,101,184,4 script Vincent Carsciallo 122,{
+ mes "[Vincent Carsciallo]";
+ if(BaseJob == 5) goto L_Merc;
+ if(BaseJob == Job_Alchem) goto L_Alch;
+L_Other:
+ mes "Hmmm? What may a civilian have to do here?";
+ next;
+ mes "[Vincent Carsciallo]";
+ mes "There's nothing amusing. Dont wander and leave.";
+ close;
+L_Alch:
+ mes "How Alchemy going? Make sure to be carefull and think about safety at all times.";
+ mes "I wouldn't want you blowing yourself up or anything.....";
+ close;
+L_Merc:
+ if(ALCH_Q == 7) goto L_Change;
+ mes "Hmmm? A merchant.";
+ mes "Are you interested in Alchemy?";
+ next;
+ mes "[Vincent Carsciallo]";
+ mes "This is the Alchemist Union.";
+ mes "We research many different substances.";
+ mes "Our goal is to make something new without the power of magic.";
+ next;
+ mes "[Vincent Carsciallo]";
+ mes "Create new life, and study how to live long and not die ...";
+ mes "We also make new materials out of existing ones...";
+ mes "These are just some of the things we do.";
+ next;
+ mes "[Vincent Carsciallo]";
+ mes "After being a Merchant for a long time ";
+ mes "you start to become interested in everything.";
+ mes "If you would like to learn Alchemy as well,";
+ mes "try joining our Union.";
+ close;
+L_Change:
+ if(skillpoint != 0) goto L_Skpoint;
+ mes "Ooh, Ok. You joined and learned the basics, too. Well done.";
+ next;
+ callfunc "Job_Change",Job_Alchem;
+ emotion 46;
+ mes "[Vincent Carsciallo]";
+ mes "From now on, you are also a member of the Union as an Alchemist.";
+ mes "I hope you learn a lot...";
+ next;
+ getitem 7127,1;
+ mes "[Vincent Carsciallo]";
+ mes "Here's a little something. ";
+ mes "Use it to start off with some research.";
+ next;
+ mes "[Vincent Carsciallo]";
+ mes "I'll see you later then...";
+ mes "Be proud of being an Alchemist!";
+ callfunc "F_ClearJobVar";
+ close;
+
+ L_Skpoint:
+ mes "Please use all your skill point before talking to me.";
+ close;
+}
diff --git a/npc/jobs/2-2/bard.txt b/npc/jobs/2-2/bard.txt new file mode 100644 index 000000000..62e7936e3 --- /dev/null +++ b/npc/jobs/2-2/bard.txt @@ -0,0 +1,476 @@ +//===== eAthena Script =======================================
+//= Bard Job Quest
+//===== By: ==================================================
+//= Muad_Dib(The Prometheus Project), Lupus
+//===== Current Version: =====================================
+//= 1.4
+//===== Compatible With: =====================================
+//= eAthena Final
+//===== Description: =========================================
+//= Bard job quest based off a Prometheus Project script
+//= and other sources for clarity
+//===== Additional Comments: =================================
+// 07/06/05 : Added 1st Version. [Muad_Dib]
+// Converted to eAthena format by Dr.Evil
+// Info about gifts and other info --> http://www.ragnainfo.net/forums/viewtopic.php?t=51467&start=0
+// 1.1 Optimized, changed some stuff, fixed some bugs [Lupus]
+// 1.1a minor song test fix [Lupus]
+// 1.2 Fixed wrong item ID, added missing commands [Lupus]
+// 1.3 Updated flower sub-quest according to official [Lupus]
+// 1.4 Changed priority for the gifts. Now you can win the 1st
+// prize, too. Added Izidor flower [Lupus]
+//============================================================
+
+
+comodo.gat,226,123,5 script Wandering Bard 741,{
+ callfunc "F_BlockHigh",27,"High Archer",43,"Clown","Wandering Bard";
+
+ if (BARD_Q == 1) goto L_BQ1;
+ if (BARD_Q == 2) goto L_BQ2;
+ if (BARD_Q == 3) goto L_SINGING;
+ if (BARD_Q == 4) goto L_BQ4;
+ if (BaseJob == Job_Bard) goto L_CLOSE;
+ if (BaseJob == Job_Archer && Sex == 1) goto L_ARCHER;
+
+ mes "[Lalo]";
+ mes "It's a fine day to sing eh.";
+ close;
+
+L_ARCHER:
+ mes "[Lalo]";
+ mes "Hi! Delightful Archer.";
+ mes "How can a wanderer like me help you?";
+ next;
+ menu "You have a nice voice.",-,"Could you sing for me, please?",M_1,"Nothing",M_NOTHING;
+
+ mes "[Lalo]";
+ mes "Hoho, your voice is rather nice as well?";
+ mes "Ever think about singing?";
+ next;
+ menu "Of course!",-,"I can't quite possibly...",M_ICANT;
+
+ mes "[Lalo]";
+ mes "Haha, nice attitude. You have to be";
+ mes "like that to become a Bard.";
+ mes "I'll help you become a Bard then.";
+ next;
+ if(JobLevel >= 40) goto L_GONOW;
+ mes "[Lalo]";
+ mes "But before that... you need to be";
+ mes "at least base 40 to be a Bard.";
+ next;
+ mes "[Lalo]";
+ mes "Just come back again ok.";
+ close;
+
+L_GONOW:
+ set JBLVL, JobLevel; // used to determine what item to get at the end
+ mes "[Lalo]";
+ mes "But before that... do you think you can bring me a Flower?";
+ mes "I need to smell the scent of a";
+ mes "Flower to feel like teaching.";
+ next;
+ mes "[Lalo]";
+ 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,1;
+ close;
+
+M_ICANT:
+ mes "[Lalo]";
+ mes "Haha, what a timid one.";
+ mes "Don't think so little of yourself.";
+ next;
+ mes "[Lalo]";
+ mes "You have plenty of talent.";
+ mes "Come again if you change your mind.";
+ close;
+
+M_1:
+ mes "[Lalo]";
+ mes "A song... let's see.";
+ mes "Ok, I got one...";
+ next;
+ mes "[Lalo]";
+ mes "I'll sing... Drums of War.";
+ mes "*ehem... *cough... gag... mememememe...";
+ mes "1, 2, 3, 4...";
+ next;
+ mes "[Lalo]";
+ mes "The sound of the horses galloping over the horizon";
+ mes "The dust that covers the distant sun.";
+ mes "Where thousands of eyes open in the night sky";
+ mes "The castle's fire will burn with power.";
+ next;
+ mes "[Lalo]";
+ mes "I can hear... the beating of my heart.";
+ mes "I can feel... the blood rushing through my veins.";
+ mes "... and the weight of my armor.";
+ mes "I can see... my enemies.";
+ next;
+ mes "[Lalo]";
+ mes "Louder, louder louder...";
+ mes "Give strength to the warriors!";
+ mes "Higher, higher, higher...";
+ mes "This day will never come again!";
+ next;
+ mes "[Lalo]";
+ mes "Shake the sky and roar the through the land.";
+ mes "Make my heart pound again!";
+ mes "Let the trumpets sound, and castle walls ring.";
+ mes "This moment will never come again!";
+ next;
+ mes "[Lalo]";
+ mes "Hmm.. that's always a good song to sing.";
+ mes "How it was it? Dont you think it's a nice song?";
+ next;
+ menu "Yes, it was really nice",-,"No, not really...",M_NO;
+
+ mes "[Lalo]";
+ mes "Thanks! If you enjoyed my song, it";
+ mes "makes me happy, too.";
+ next;
+ mes "[Lalo]";
+ mes "It would be nice if more people";
+ mes "went around and sang...";
+ mes "Well, its quite ok as it is now...";
+ mes "hmmhmmm.";
+ close;
+
+M_NO:
+ mes "[Lalo]";
+ mes "Hmmm... Did I loose my senses I'll ";
+ mes "have to try harder.";
+ mes "Anyways... Thanks for listening.";
+ close;
+
+M_NOTHING:
+ mes "[Lalo]";
+ mes "Oh not requesting a song when you";
+ mes "run into a Bard isn't very polite.";
+ mes "Well...can't help it since you";
+ mes "look like you're in a hurry";
+ mes "anyways.";
+ next;
+ mes "[Lalo]";
+ mes "Hunting is good... but you can't";
+ mes "forget to relax once in a while.";
+ mes "Youth is short and wont come again";
+ mes "once it passes by..";
+ close;
+
+L_BQ1:
+ mes "[Lalo]";
+ mes "Welcome! Archer friend.";
+ mes "Did you bring a Flower? Let me see.";
+ next;
+ if(countitem(1032) >= 1) goto L_UGLYFLOWER; //Items: Maneater_Blossom,
+ if(countitem(703) >= 1) goto L_FLOWER1; //Items: Hinalle,
+L_NEXT2:
+ if(countitem(708) >= 1) goto L_FLOWER2; //Items: Ment,
+L_NEXT3:
+ if(countitem(629) >= 1) goto L_FLOWER3; //Items: Singing_Flower,
+L_NEXT4:
+ if(countitem(710) >= 1) goto L_FLOWER4; //Items: Illusion_Flower,
+L_NEXT5:
+ if(countitem(748) >= 1) goto L_FLOWER5; //Items: Witherless_Rose,
+L_NEXT6:
+ if(countitem(709) >= 1) goto L_FLOWER6; //Item: Izidor
+L_NEXT7:
+ if(countitem(712) < 1) goto M_NOTHAVE; //Item: Flower//Items: Flower,
+
+ mes "[Lalo]";
+ mes "Eh? This is just a normal flower.";
+ mes "I like it... but it's not enough.";
+ mes "Please bring me a different flower.";
+ close;
+
+L_UGLYFLOWER:
+ mes "[Lalo]";
+ mes "What is it?! Please, back off and put it away from my face.";
+ mes "I do really hate maneater blossoms!!!";
+ mes "THEY ARE SO UGLY!";
+ emotion 23;
+ close;
+
+M_NOTHAVE:
+ mes "[Lalo]";
+ mes "Well suit your self.";
+ mes "I dont like that flower anyway.";
+ close;
+
+L_FLOWER1:
+ mes "[Lalo]";
+ mes "Can I have that Hinalle?";
+ next;
+ menu "Yes",-,"No",L_NEXT2;
+ if(countitem(703) < 1) goto M_NOTHAVE;
+ delitem 703,1; //Items: Hinalle,
+ goto L_GOOD;
+
+L_FLOWER2:
+ mes "[Lalo]";
+ mes "Can I have that Ment?";
+ next;
+ menu "Yes",-,"No",L_NEXT3;
+ if(countitem(708) < 1) goto M_NOTHAVE;
+ delitem 708,1; //Items: Ment,
+ goto L_GOOD;
+
+L_FLOWER3:
+ mes "[Lalo]";
+ mes "Can I have that Singing Flower?";
+ next;
+ menu "Yes",-,"No",L_NEXT4;
+ if(countitem(629) < 1) goto M_NOTHAVE;
+ delitem 629,1; //Items: Singing_Flower,
+ goto L_GOOD;
+
+L_FLOWER4:
+ mes "[Lalo]";
+ mes "Can I have that Illusion Flower?";
+ next;
+ menu "Yes",-,"No",L_NEXT5;
+ if(countitem(710) < 1) goto M_NOTHAVE;
+ delitem 710,1; //Items: Illusion_Flower,
+ goto L_GOOD;
+
+L_FLOWER5:
+ mes "[Lalo]";
+ mes "Can I have that Witherless Rose?";
+ next;
+ menu "Yes",-,"No",L_NEXT6;
+ if(countitem(748) < 1) goto M_NOTHAVE;
+ delitem 748,1; //Items: Witherless_Rose,
+ goto L_GOOD;
+
+L_FLOWER6:
+ mes "[Lalo]";
+ mes "Can I have that Izidor?";
+ next;
+ menu "Yes",-,"No",L_NEXT7;
+ if(countitem(709) < 1) goto M_NOTHAVE;
+ delitem 709,1; //Items: Izidor
+
+L_GOOD:
+ mes "[Lalo]";
+ mes "It doesn't have a scent but it's a";
+ mes "very moderate cute flower.";
+ mes "The leaves gave me strength when I";
+ mes "used to fall.";
+ mes "I really like this flower, thank you.";
+ next;
+ mes "[Lalo]";
+ mes "As I promised, I'll help you become a Bard.";
+ mes "But it's not easy my friend. Haha!";
+ next;
+ mes "[Lalo]";
+ mes "It is important to get to know";
+ mes "lot of people to learn how to sing.";
+ mes "You must also keep up with all the";
+ mes "things going on different villages...";
+ next;
+ mes "[Lalo]";
+ mes "There's a talking snowman in a town called Lutie.";
+ mes "Go there and bring back a present.";
+ next;
+ mes "[Lalo]";
+ mes "If you become friends with Jack";
+ mes "Frost, you will receive something.";
+ mes "And also talk to townspeople";
+ mes "while you're at it...";
+ set BARD_Q,2;
+ close;
+L_BQ2:
+ if (xmas_npc == 11) goto L_BQ3; //this var is set in LUTIE.TXT
+ mes "[Lalo]";
+ mes "I'm waiting for the good news.";
+ mes "For now go to Lutie and make";
+ mes "friends with Jack Frost.";
+ close;
+L_BQ3:
+ mes "[Lalo]";
+ mes "How was the trip? Did you meet a lot of people?";
+ mes "You should have more important than a gift.";
+ set BARD_Q,3;
+ next;
+L_SINGING:
+ mes "[Lalo]";
+ mes "Then, do you want to try singing...?";
+ mes "I'll sing a short melody...";
+ mes "and you try after.";
+ next;
+ mes "[Lalo]";
+ mes "Here I go.";
+ mes "Ehem *clears throat*";
+ mes "1, 2, 3, 4";
+ next;
+ mes "[Lalo]";
+//this should text input
+ mes "All Gods never age.";
+ mes "The ever so beautiful Goddess";
+ mes "Eden,";
+ mes "Beatuful and graceful Goddess";
+ mes "Eden,";
+ mes "Odin's daugther-in-law and Bragis";
+ mes "wife";
+ mes "Her sweet apples in her basket,";
+ mes "All thanks to her sweet apples.";
+
+ set @score,0;
+ next;
+ mes "[Lalo]";
+ mes "Now you try...";
+ next;
+
+ menu "All Gods never age.",-,"All Gods never age?",M_S2,"All Gods never age,",M_S2,"Are Gods never age?",M_S2;
+
+ set @score,@score+10;
+
+M_S2:
+ menu "The ever so beautiful Goddess,",M_S3,"The ever so beautiful Goddess.",M_S3,"The never beautiful Goddess.",M_S3,"The ever so beautiful Goddess",-;
+
+ set @score,@score+10;
+
+M_S3:
+ menu "Odins,",M_S4,"Odin.",M_S4,"Odin,",M_S4,"Eden,",-;
+
+ set @score,@score+10;
+M_S4:
+ menu "Very beatuful Goddess",M_S5,"Beatuful and Graceful Goddess",M_S5,"Beatuful and graceful Goddess",-,"Beatuful and the graceful Goddess",M_S5;
+
+ set @score,@score+10;
+M_S5:
+ menu "Eden.",M_S6,"Odins,",M_S6,"Eden,",-,"Edens,",M_S6;
+
+ set @score,@score+10;
+M_S6:
+ menu "Brags daugther-in-law and Odin's",M_S7,"Brags and Odin's daugther-in-law",M_S7,"Odin's daugther-in-law and Bragis",-,"Odin's daugther-in-law and Brags",M_S7;
+
+ set @score,@score+10;
+M_S7:
+ menu "whales",M_S8,"wifes",M_S8,"wife",-,"waffels",M_S8;
+
+ set @score,@score+10;
+M_S8:
+ menu "Her sweet apple in her basket,",M_S9,"Her sweet apple in her basket",M_S9,"Her sweet apples in her basket,",-;
+
+ set @score,@score+10;
+M_S9:
+ menu "All thanks to her sweet apple!",M_S10,"All thanks to her sweet apples.",-,"All thanks to her sweet apples!",M_S10;
+
+ set @score,@score+10;
+M_S10:
+ next;
+ if(@score >= 90) goto L_GOODWORK;
+ mes "[Lalo]";
+ mes "Oy, You got the lyrics wrong!";
+ mes "Can't you even sing along...?";
+ next;
+ mes "[Lalo]";
+ mes "Your pronunciation is very unclear.";
+ mes "Do a better job next time.";
+ close;
+
+L_GOODWORK:
+ set BARD_Q,4;
+ mes "[Lalo]";
+ mes "Wonderful! Finish it in one try!";
+ mes "You can become a great Bard.";
+ next;
+ mes "[Lalo]";
+ mes "Do you want to just change jobs now?";
+ mes "Or do you want a present?";
+ next;
+ menu "Just change my job please.",-,"I'd be thankful for a present.",M_PRESENTPLZ;
+
+ if(skillpoint != 0) goto L_SKILLSLEFT;
+ goto L_CHANGE;
+
+M_PRESENTPLZ:
+ mes "[Lalo]";
+ mes "Hmmm...very well, bring some trunks.";
+ mes "It doesn't matter what kind, as";
+ mes "long they are ^FF000060 of the same kind^000000...";
+ next;
+ mes "[Lalo]";
+ mes "I will give you a gift once you";
+ mes "bring them have a safe trip.";
+ close;
+
+L_SKILLSLEFT:
+ mes "[Lalo]";
+ mes "Hmmm... you seems to have some skill points left.";
+ mes "Use them all and come back to me again.";
+ close;
+
+L_BQ4:
+ set @gift,0;
+ if (countitem(1019) >= 60) set @gift,5; // Trunk//Items: Trunk,
+ if (countitem(1068) >= 60) set @gift,4; // Barren_Trunk//Items: Barren_Trunk,
+ if (countitem(1067) >= 60) set @gift,3; // Solid_Trunk//Items: Solid_Trunk,
+ if (countitem(1066) >= 60) set @gift,2; // Fine-grained_Trunk//Items: Fine-grained_Trunk,
+ if (JBLVL == 50 && countitem(1066) >=60) set @gift,1; // Fine-grained_Trunk//Items: Fine-grained_Trunk,
+
+ if (@gift!=0) goto L_CHANGE;
+
+ mes "[Lalo]";
+ mes "Mmm? Seems like you haven't prepared all trunks yet?";
+ mes "Do you want to just change jobs anyways?";
+ next;
+ menu "Yes",L_CHANGE,"Wait, not yet",-;
+
+ mes "[Lalo]";
+ mes "Ok I'll just wait here.";
+ close;
+
+L_CHANGE:
+ if(skillpoint != 0) goto L_SKILLSLEFT;
+ callfunc "Job_Change",Job_Bard;
+ callfunc "F_ClearJobVar";
+
+ mes "[Lalo]";
+ if (@gift==0) goto L_NOGIFT;
+
+ mes "Good job. I will make you a";
+ mes "job change with this souvenir.";
+ mes "Wait just a moment.";
+ next;
+ mes "Scrape Scrape Tang Tang";
+ mes "Squeak Squeak Scratch Scratch";
+ next;
+
+ switch(@gift){
+ case 1:
+ delitem 1066,60; //Fine-grained_Trunk + 50 JobLvl --> Harp [2]
+ getitem 1910,1;
+ break;
+ case 2:
+ delitem 1066,60; //Fine-grained_Trunk --> Lute [2]
+ getitem 1905,1;
+ break;
+ case 3:
+ delitem 1067,60; //Solid_Trunk --> Mandolin [2]
+ getitem 1903,1;
+ break;
+ case 4:
+ delitem 1068,60; //Barren_Trunk --> Mandolin [2]
+ getitem 1903,1;
+ break;
+ case 5:
+ delitem 1019,60; //Trunk --> Violin [3]
+ getitem 1901,1;
+ }
+
+ emotion e_grat;
+ mes "[Lalo]";
+ mes "Here you go, a souvenir. It is";
+ mes "useful when you sing.";
+L_NOGIFT:
+ mes "Hope you sing happy songs.";
+ next;
+L_CLOSE:
+ mes "[Lalo]";
+ mes "See you next time!";
+ close;
+}
diff --git a/npc/jobs/2-2/crusader.txt b/npc/jobs/2-2/crusader.txt new file mode 100644 index 000000000..a0b1f24f8 --- /dev/null +++ b/npc/jobs/2-2/crusader.txt @@ -0,0 +1,1184 @@ +////===== eAthena Script =======================================
+//= Crusader Quest
+//===== By: ==================================================
+//= Made by: Black Dragon
+//= Converted by: Shin
+//=
+//===== Current Version: =====================================
+//= 1.7a
+//===== Compatible With: =====================================
+//= eAthena 0.5.2 +
+//===== Description: =========================================
+//=
+//===== Additional Comments: =================================
+//= Need optimalization and fixing
+//= thanks to Komurka, KiLLaLeN, Lupus (fixing error)
+//= just a temp Job Quest
+//= 1.2 minor fix of announcement by Freya people
+//= 1.3 Added Baby Class Support, fixed 40/50 lvl item reward
+//= also fixed too common script names [Lupus]
+//= 1.3a fixed "dead lock" bugs [Lupus]
+//= 1.3b changed monsters ID in patience test [Komurka]
+//= 1.4 Fixed Job Level parameters mix-up. [massdriller] (Thanks to Komurka)
+//= 1.5 Fixed possible EXP abuse [Lupus]
+//= 1.6 Added a func which prevent advanced classes passing
+//= 2nd Job Quests again. It also guides adv classes where
+//= to go. [Lupus]
+//= 1.7 Updated names and required items, Chivalry Emblem +
+//= Hand of God allow to skip item gathering [DracoRPG]
+//============================================================
+
+
+prt_castle.gat,45,169,4 script Senior Crusader 752,{
+ callfunc "F_BlockHigh",25,"Swordman High",38,"Paladin","^000080Michael Halig^000000";
+
+ mes "[^000080Michael Halig^000000]";
+ if (BaseJob > 0) goto NEXT_0;
+ if (BaseJob == 0) goto NOV;
+ mes "Hello "+ strcharinfo(0);
+ mes "I see that you've registered to the ^008000Swordsman's Association^000000.";
+ TALK:
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "If you become a ^800000Swordsman^000000, you will gain the privelege of becoming a ^800000Knight^000000 or ^800000Crusader^000000.";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "If you decide to go along the path of the ^800000Crusader^000000, come back here.";
+ mes "Just take note that you must obtain a job level of at least 40 first before you can move up to the 2nd job.";
+ close;
+ NOV:
+ mes "Hello there.";
+ goto TALK;
+NEXT_0:
+ if (BaseJob > 1) goto NEXT0;
+ if (CRUS_Q == 1) goto CONT;
+ if (CRUS_Q == 2) goto CONT0;
+ if (CRUS_Q == 3) goto CONT1;
+ if (CRUS_Q == 4) goto CONT2;
+ if (CRUS_Q > 4) goto CONT3;
+ mes "Welcome, can I help you with something?";
+ next;
+ menu "I want to become a ^800000Crusader^000000.",JOB,"What's being a ^800000Crusader^000000 like?",ASK,"What is the purpose of a ^800000Crusader^000000?",ASK0,"I was just looking around.",-;
+ mes "[^000080Michael Halig^000000]";
+ mes "Oh, all right.";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "If you decide to take the path of the ^800000Crusader^000000, feel free to come back.";
+ close;
+ JOB:
+ mes "[^000080Michael Halig^000000]";
+ mes "All right, let me take a look at you first.";
+ next;
+ if (JobLevel != 50) goto SKIP;
+ set JBLVL,50;
+ set CRUS_Q,5;
+ goto TEST1;
+ SKIP:
+ if (JobLevel > 39) goto OKAY;
+ mes "[^000080Michael Halig^000000]";
+ mes "I'm sorry, but you need to be at least at a job level of 40.";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "All 2nd jobs require that.";
+ close;
+ OKAY:
+ if (SkillPoint == 0) goto OKAY0;
+ JOB0:
+ mes "[^000080Michael Halig^000000]";
+ mes "In order to become a ^800000Crusader^000000, you have to have used all your available skill points first.";
+ close;
+ OKAY0:
+ mes "[^000080Michael Halig^000000]";
+ mes "Everything looks all right.";
+ set CRUS_Q,1;
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "All right, shall we begin the tests?";
+ next;
+ menu "Yes, of course.",OKAY1,"Not yet.",-;
+ mes "[^000080Michael Halig^000000]";
+ mes "Oh, all right. Come back when you're ready.";
+ close;
+ OKAY1:
+ if (SkillPoint != 0) goto JOB0;
+ set CRUS_Q,2;
+ mes "[^000080Michael Halig^000000]";
+ mes "All right, the first test requires you to collect items.";
+ next;
+ set CRUS_Q, rand (2);
+ set CRUS_Q,CRUS_Q + 3;
+ mes "[^000080Michael Halig^000000]";
+ mes "Bring back the following items:";
+ if (CRUS_Q != 3) goto IT;
+ mes "- 10 ^FF0000Decayed Nails^000000";
+ mes "- 10 ^FF0000Daenggies^000000";
+ mes "- 10 ^FF0000Worn-out Prison Uniforms^000000";
+ mes "- 10 ^FF0000Stinky Scales^000000";
+ close;
+ IT:
+ mes "- 10 ^FF0000Lanterns^000000";
+ mes "- 10 ^FF0000Horrendous Mouths^000000";
+ mes "- 10 ^FF0000Rotten Bandages^000000";
+ mes "- 10 ^FF0000Jack 'o Pumpkins^000000";
+ close;
+
+ ASK:
+ mes "[^000080Michael Halig^000000]";
+ mes "To be a ^800000Crusader^000000 is to fight for the righteous people.";
+ mes "Not always those who are in power, but rather for the justly cause.";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "I hope that you consider to become one.";
+ mes "To fight for good is a job that should be done by everyone to some extent.";
+ close;
+ ASK0:
+ mes "[^000080Michael Halig^000000]";
+ mes "The purpose of a ^800000Crusader^000000 is to work for the good in the world.";
+ mes "A ^800000Crusader^000000 is a person of righteousness at work.";
+ close;
+ CONT:
+ mes "Have you changed your mind?";
+ next;
+ menu "Yes, I want to become a ^800000Crusader^000000.",JOB,"Sorry, but I don't want to.",-;
+ mes "[^000080Michael Halig^000000]";
+ mes "I see... That's a shame.";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "Come back if you do want to.";
+ close;
+ CONT0:
+ mes "Well, hm...";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "I was expecting that someone like you would pass.";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "Mind to try again?";
+ next;
+ menu "Yes, of course.",OKAY1,"No, I'm all right.",-;
+ mes "[^000080Michael Halig^000000]";
+ mes "Oh, all right.";
+ close;
+ CONT1:
+ set @item,0;
+ if(countitem(957)>=10) goto ITEM7;//Items: Decayed_Nail,
+ mes "- 10 ^FF0000Decayed Nails^000000";
+ set @item, item +1;
+ ITEM7:
+ if(countitem(901)>=10) goto ITEM8;//Items: Daenggie,
+ mes "You still miss the this item";
+ mes "- 10 ^FF0000Danggies^000000";
+ set @item, item +1;
+ ITEM8:
+ if(countitem(1099)>=10) goto ITEM10;//Items: Worn-out_Prison_Uniform,
+ mes "You still miss the this item";
+ mes "- 10 ^FF0000Worn-out Prison Uniforms^000000";
+ set @item, item +1;
+ ITEM9:
+ if(countitem(959)>=10) goto ITEM9;//Items: Stinky_Scale,
+ mes "You still miss the this item";
+ mes "- 10 ^FF0000Stinky Scales^000000";
+ set @item, item +1;
+ ITEM10:
+ if (@item == 0) goto DONE;
+ close;
+ DONE:
+ mes "Good job!";
+ mes "You collected everything!";
+ delitem 957,10;//Items: Decayed_Nail,
+ delitem 901,10;//Items: Daenggie,
+ delitem 1099,10;//Items: Worn-out_Prison_Uniform,
+ delitem 959,10;//Items: Stinky_Scale,
+ set CRUS_Q,5;
+ TEST1:
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "All right, let's move on to the 2nd test.";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "Go to the prison, it's in the basement";
+ mes "Before you do, make sure that you bring a ^FF0000Rosary^000000 with you.";
+ close;
+ CONT2:
+ set @item, 0;
+ if(countitem(1041)>=10) goto ITEM11;//Items: Lantern,
+ mes "You still miss the this item";
+ mes "- 10 ^FF0000Lanterns^000000";
+ set @item, item +1;
+ ITEM11:
+ if(countitem(958)>=10) goto ITEM12;//Items: Horrendous_Mouth,
+ mes "You still miss the this item";
+ mes "- 10 ^FF0000Horrendous Mouths^000000";
+ set @item, item +1;
+ ITEM12:
+ if(countitem(930)>=10) goto ITEM13;//Items: Rotten_Bandage,
+ mes "You still miss the this item";
+ mes "- 10 ^FF0000Rotten Bandages^000000";
+ set @item, item +1;
+ ITEM13:
+ if(countitem(1062)>=10) goto ITEM14;//Items: Jack_'o_Pumpkin,
+ mes "You still miss the this item";
+ mes "- 10 ^FF0000Jack 'o Pumpkins^000000";
+ set @item, item +1;
+ ITEM14:
+ if (@item== 0) GOTO DONE0;
+ close;
+ DONE0:
+ mes "Good job!";
+ mes "You collected everything!";
+ delitem 1041,10;//Items: Lantern,
+ delitem 958,10;//Items: Horrendous_Mouth,
+ delitem 930,10;//Items: Rotten_Bandage,
+ delitem 1062,10;//Items: Jack_'o_Pumpkin,
+ set CRUS_Q,5;
+ goto TEST1;
+ CONT3:
+ if (CRUS_Q == 8) goto CONT4;
+ if (CRUS_Q > 8) goto CONT5;
+ mes "Please talk to the man in the prison to continue.";
+ mes "Make sure you bring a ^FF0000Rosary^000000 with you.";
+ close;
+ CONT4:
+ mes "Great job in accomplishing the ^FF8000Patience Test^000000!";
+ next;
+ mes "[^000080Michael Halig^000000]";
+ mes "Now to move on to the ^FF8000Knowledge Test^000000.";
+ mes "Please talk to Gabriel Valentine at the Cathedral, she will test your knowledge.";
+ set CRUS_Q,9;
+ close;
+ CONT5:
+ if (CRUS_Q == 13) goto CONT6;
+ if (CRUS_Q == 14) goto CONT7;
+ mes "Please go talk to Gabriel Valentine at the Cathedral to continue.";
+ close;
+ CONT6:
+ mes "Excellent work in completing all the necessary tests!";
+ mes "Now let me examine you before you become a ^800000Crusader^000000.";
+ next;
+ set CRUS_Q,14;
+ mes "[^000080Michael Halig^000000]";
+ CONT7:
+ if (SkillPoint == 0) goto GOOD;
+ mes "I'm sorry, but you'll need to use up all your skill points first.";
+ close;
+ GOOD:
+ mes "This is to compliment your job change.";
+ if (JBLVL != 50) getitem 1409,1;//Items: Pike__,
+ if (JBLVL == 50) getitem 1408,1;//Items: Pike_,
+
+ callfunc "Job_Change",Job_Crusader;
+ callfunc "F_ClearJobVar"; // clears all job variables for the current player
+ close;
+NEXT0:
+ if (BaseJob != 2) goto NEXT1;
+ mes "Hello, welcome to the ^008000Castle of Prontera^000000.";
+ mes "Hope you have a good day!";
+ close;
+NEXT1:
+ if (BaseJob != 3) goto NEXT2;
+ mes "Good luck in your hunting.";
+ close;
+NEXT2:
+ if (BaseJob != 4) goto NEXT3;
+ mes "Good day to you!";
+ mes "Hope you do well to find your path.";
+ close;
+NEXT3:
+ if (BaseJob != 5) goto NEXT4;
+ mes "Hello, we don't currently need anything, sorry about that.";
+ close;
+NEXT4:
+ if (BaseJob != 6) goto NEXT5;
+ mes "Better watch yourself.";
+ close;
+NEXT5:
+ if (BaseJob != 7) goto NEXT6;
+ mes "Good day to you, " + strcharinfo(0);
+ close;
+NEXT6:
+ if (BaseJob != 8) goto NEXT7;
+ mes "Good day, "+ strcharinfo(0);
+ mes "I would hope to believe that all is going well.";
+ close;
+NEXT7:
+ if (BaseJob != 9) goto NEXT8;
+ mes "Hello, welcome to the ^008000Castle of Prontera^000000.";
+ mes "Nice to have you wish us.";
+ close;
+NEXT8:
+ if (BaseJob != 10) goto NEXT9;
+ mes "Hello, we're not in need of any weapons or armour at the moment, thank you.";
+ close;
+NEXT9:
+ if (BaseJob != 11) goto NEXT10;
+ mes "Hello, wish you luck for your success.";
+ close;
+NEXT10:
+ if (BaseJob != 12) goto NEXT11;
+ mes "Stay out of trouble, you don't want the guards to come after you, now do you?";
+ close;
+NEXT11:
+ if (BaseJob != 14) goto NEXT12;
+ mes "Good day, "+ strcharinfo(0);
+ close;
+NEXT12:
+ if (BaseJob != 15) goto NEXT13;
+ mes "Hello, welcome to the ^008000Castle of Prontera^000000.";
+ close;
+NEXT13:
+ if (BaseJob != 16) goto NEXT14;
+ mes "Welcome to the ^008000Castle of Prontera^000000, I hope you enjoy your stay.";
+ close;
+NEXT14:
+ if (BaseJob != 17) goto NEXT15;
+ mes "Stay out of trouble if you know what's good for you.";
+ close;
+NEXT15:
+ if (BaseJob != 18) goto NEXT16;
+ mes "So, how are the experiments going down in ^00FF00Al de Baran^000000?";
+ close;
+NEXT16:
+ if (BaseJob != 19) goto NEXT17;
+ mes "Welcome to the castle, good sir.";
+ close;
+NEXT17:
+ if (BaseJob != 20) goto NEXT18;
+ mes "Good day, miss.";
+ close;
+NEXT18:
+ if (BaseJob != 22) goto NEXT19;
+ if (Sex != 0) goto MALE;
+ mes "Hello, welcome to the ^008000Castle of Prontera^000000.";
+ close;
+ MALE:
+ mes "Well done, sir!";
+ close;
+NEXT19:
+ mes "Hello and good day!";
+ close;
+}
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Man in Anguish - Crusader Job Quest - 2nd Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+prt_castle.gat,164,32,0 script Man in Anguish 733,{
+ if (CRUS_Q == 7) goto CONT;
+ if (CRUS_Q > 7) goto CONT0;
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "Who... who are you?";
+ next;
+ if (CRUS_Q == 5) goto CHECK;
+
+ OTHER:
+ if (CRUS_Q == 6) goto EXIT1;
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "What do you want?";
+ mes "Leave me alone~!";
+ close;
+ CHECK:
+ if (countitem(2608) == 0) goto NOT;//Items: Rosary,
+
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "I see, you're here for the job.";
+ next;
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "It's torture.";
+ mes "They send me to that room time and time again.";
+ next;
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "I've grown awefully weak from it.";
+ next;
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "But if it's your wish, I will send to there.";
+ next;
+ menu "Yes.",-,"On second thought...",EXIT;
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "All right then... I'll tell you where to go.";
+ GO:
+ next;
+ savepoint "prt_castle.gat",162,27;
+ if (getmapusers("job_cru.gat") > 0) goto EXIT0;
+ set CRUS_Q,6;
+ warp "job_cru.gat",23,42;
+ EXIT0:
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "I'm sorry, there's already another person there right now.";
+ mes "Please wait a little longer.";
+ close;
+ EXIT:
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "Please do not disturb me then!";
+ close;
+ NOT:
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "Leave me alone!";
+ mes "Can't you leave someone in pain alone ?";
+ close;
+
+ CONT:
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "I see you've passed. Good work.";
+ set CRUS_Q,8;
+ close;
+ EXIT1:
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "Sorry but you're going to need to go again.";
+ goto GO;
+ CONT0:
+ mes "[^000080Murnak Mijoul^000000]";
+ mes "There is nothing else you need from me.";
+ mes "Let me be...";
+ close;
+}
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Gabriel Valentine - Crusader Job Quest - Knowledge Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+prt_church.gat,94,116,0 script Gabriel Valentine 745,{
+ mes "[^000080Gabriel Valentine^000000]";
+ if (BaseJob != 0) goto NEXT_o;
+ mes "Hello young traveler.";
+ close;
+NEXT_o:
+ if (BaseJob != 1) goto NEXT0;
+ mes "Hello, " + strcharinfo(0);
+ next;
+ if (CRUS_Q != 9) goto EXIT;
+ BEGIN:
+ menu "Take the Knowledge test.",-,"Nothing.",EXIT;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Oh, on your way to become a ^800000Crusader^000000 huh?";
+ mes "Okay...";
+ next;
+ START:
+ set @Q , 0;
+ set @Q1 , 0;
+ set @Q2 , 0;
+ set @Q3 , 0;
+ set @Q4 , 0;
+ set @Q5 , 0;
+ set @Q6 , 0;
+ set @Q7 , 0;
+ set @Q8 , 0;
+ set @Q9 , 0;
+ set @Q10 , 0;
+ set @Q11 , 0;
+ set @Q12 , 0;
+ set @Q13 , 0;
+ set @Q14 , 0;
+ set @Q15 , 0;
+ set @Q16 , 0;
+ set @Q17 , 0;
+ set @Q18 , 0;
+ set @Q19 , 0;
+ set @Q20 , 0;
+ set @ANS , 0;
+ RND:
+ if (@Q > 10) goto DONE;
+ set @RND, rand(20);
+ if (@RND > 9) goto G1;
+ if (@RND > 4) goto G1A;
+ if (@RND > 3) goto G1A1;
+ if (@RND == 0) goto Q1;
+ if (@RND == 1) goto Q2;
+ if (@RND != 1) goto Q3;
+ G1A1:
+ if (@RND == 3) goto Q4;
+ if (@RND != 3) goto Q5;
+ G1A:
+ if (@RND > 8) goto G1A2;
+ if (@RND == 5) goto Q6;
+ if (@RND == 6) goto Q7;
+ if (@RND != 6) goto Q8;
+ G1A2:
+ if (@RND == 8) goto Q9;
+ if (@RND != 8) goto Q10;
+ G1:
+ if (@RND > 14) goto G2A;
+ if (@RND > 13) goto G2A1;
+ if (@RND == 10) goto Q11;
+ if (@RND == 11) goto Q12;
+ if (@RND == 12) goto Q13;
+ G2A1:
+ if (@RND == 13) goto Q14;
+ if (@RND == 14) goto Q15;
+ G2A:
+ if (@RND > 18) goto G2A2;
+ if (@RND == 15) goto Q16;
+ if (@RND == 16) goto Q17;
+ if (@RND == 17) goto Q18;
+ G2A2:
+ if (@RND == 18) goto Q19;
+ if (@Q20 != 0) goto RND;
+ set @Q20,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Are you willing to risk your life to save someone else?";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q1:
+ if (@Q1 != 0) goto RND;
+ set @Q1,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "If someone asks you to help them for a good cause, will you oblige?";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS, @ANS + 1;
+ goto RND;
+ Q2:
+ if (@Q2 != 0) goto RND;
+ set @Q2, 1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Would you allow a robber to get away with stolen goods?";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q3:
+ if (@Q3 != 0) goto RND;
+ set @Q3,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Do you wish that the world was at harmony?";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q4:
+ if (@Q4 != 0) goto RND;
+ set @Q4,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Will you ever attempt suicide?";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q5:
+ if (@Q5 != 0) goto RND;
+ set @Q5,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Will you intoxicate yourself at parties?";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q6:
+ if (@Q6 != 0) goto RND;
+ set @Q6,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Will you openly massacre?";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q7:
+ if (@Q7 != 0) goto RND;
+ set @Q7,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Will you hold your temper during arguments?";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q8:
+ if (@Q8 != 0) goto RND;
+ set @Q8,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Would you allow alchemists to perform illegal experiments?";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q9:
+ if (@Q9 != 0) goto RND;
+ set @Q9,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "If someone threw a stone at you, you'd become furious.";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q10:
+ if (@Q10 != 0) goto RND;
+ set @Q10,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "If someone offered you money that belongs to someone poor, would you take it?";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q11:
+ if (@Q11 != 0) goto RND;
+ set @Q11,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You think highly of yourself.";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q12:
+ if (@Q12 != 0) goto RND;
+ set @Q12,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You are humble before others.";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q13:
+ if (@Q13 != 0) goto RND;
+ set @Q13,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You answer people full of respect and with kindness.";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q14:
+ if (@Q14 != 0) goto RND;
+ set @Q14,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You fight when you feel like it.";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q15:
+ if (@Q15 != 0) goto RND;
+ set @Q15,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You go to the pub every night.";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q16:
+ if (@Q16 != 0) goto RND;
+ set @Q16,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You believe in the Father, Son and Holy Spirit.";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q17:
+ if (@Q17 != 0) goto RND;
+ set @Q17,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You believe that the Devil is evil and cruel and should be treated the same way.";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q18:
+ if (@Q18 != 0) goto RND;
+ set @Q18,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You believe that talk is for wimps and that action plays the main role in peace-making";
+ next;
+ menu "Yes",RND,"No",-;
+ set @ANS,@ANS + 1;
+ goto RND;
+ Q19:
+ if (@Q19 != 0) goto RND;
+ set @Q19,1;
+ set @Q,@Q + 1;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "If all other means to keep peace fail, THEN it is all right to resort to violence.";
+ next;
+ menu "Yes",-,"No",RND;
+ set @ANS,@ANS + 1;
+ goto RND;
+ DONE:
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "You got "+ @ANS +" / 10 questions correct.";
+ next;
+ if (CRUS_Q != 10) goto secND;
+ if (@ANS < 8) goto NO;
+ PASS:
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Excellent work! You qualify to pass the ^FF8000Knowledge Test^000000!";
+ mes "You're almost done, you are now at the ^FF8000Purification Test^000000, find Bliant Piyord at ^008000Prontera Chivalry^000000.";
+ set CRUS_Q, 11;
+ close;
+ NO:
+ set CRUS_Q, 10;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "I'm sorry, you didn't get enough to qualify.";
+ next;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Try giving it another go when you feel you're ready.";
+ mes "I'll only expect you to get at least 8 correct from now on.";
+ close;
+ secND:
+ if (@ANS > 7) goto PASS;
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "I'm sorry, you didn't get enough correct.";
+ close;
+ EXIT:
+ if (CRUS_Q == 10) goto BEGIN;
+ if (CRUS_Q > 10) goto FINISH;
+ close;
+ FINISH:
+ mes "[^000080Gabriel Valentine^000000]";
+ mes "Please go to the Guardian Knight at ^008000Prontera Castle^000000 to continue on to the ^FF8000Purification Test^000000.";
+ close;
+NEXT0:
+ if (BaseJob != 2) goto NEXT1;
+ mes "Hello, welcome to the ^008000Prontera Chivalry^000000.";
+ mes "Hope you have a good day!";
+ close;
+NEXT1:
+ if (BaseJob != 3) goto NEXT2;
+ mes "Good luck in your hunting.";
+ close;
+NEXT2:
+ if (BaseJob != 4) goto NEXT3;
+ mes "Good day to you!";
+ mes "Hope you do well to find your path.";
+ close;
+NEXT3:
+ if (BaseJob != 5) goto NEXT4;
+ mes "Hello, we don't currently need anything, sorry about that.";
+ close;
+NEXT4:
+ if (BaseJob != 6) goto NEXT5;
+ mes "Better watch yourself.";
+ close;
+NEXT5:
+ if (BaseJob != 7) goto NEXT6;
+ mes "Good day to you, "+ strcharinfo(0);
+ close;
+NEXT6:
+ if (BaseJob != 8) goto NEXT7;
+ mes "Good day, " + strcharinfo(0);
+ mes "I would hope to believe that all is going well.";
+ close;
+NEXT7:
+ if (BaseJob != 9) goto NEXT8;
+ mes "Hello! Nice to have you wish us.";
+ close;
+NEXT8:
+ if (BaseJob != 10) goto NEXT9;
+ mes "Hello, we're not in need of any weapons or armour at the moment, thank you.";
+ close;
+NEXT9:
+ if (BaseJob != 11) goto NEXT10;
+ mes "Hello, wish you luck for your success.";
+ close;
+NEXT10:
+ if (BaseJob != 12) goto NEXT11;
+ mes "Stay out of trouble, you don't want the guards to come after you, now do you?";
+ close;
+NEXT11:
+ if (BaseJob != 14) goto NEXT12;
+ mes "Good day, " + strcharinfo(0);
+ close;
+NEXT12:
+ if (BaseJob != 15) goto NEXT13;
+ mes "Hello, welcome to the ^008000Knight's Headquarters^000000.";
+ close;
+NEXT13:
+ if (BaseJob != 16) goto NEXT14;
+ mes "Welcome to the ^008000Knight's Headquarters^000000, I hope you enjoy your stay.";
+ close;
+NEXT14:
+ if (BaseJob != 17) goto NEXT15;
+ mes "Stay out of trouble if you know what's good for you.";
+ close;
+NEXT15:
+ if (BaseJob != 18) goto NEXT16;
+ mes "So, how are the experiments going down in ^00FF00Al de Baran^000000?";
+ close;
+NEXT16:
+ if (BaseJob != 19) goto NEXT17;
+ mes "Welcome to the castle, good sir.";
+ close;
+NEXT17:
+ if (BaseJob != 20) goto NEXT18;
+ mes "Good day, miss.";
+ close;
+NEXT18:
+ if (BaseJob != 22) goto NEXT19;
+ if (Sex != 0) goto MALE;
+ mes "Hello, welcome to the ^008000Knight's Headquarters^000000.";
+ close;
+ MALE:
+ mes "Well done, sir!";
+ close;
+NEXT19:
+ mes "Hello and good day!";
+ close;
+}
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Bliant Piyord - Crusader Job Quest - Purification Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+prt_in.gat,83,97,0 script Patron Knight 734,{
+ mes "[^000080Bliant Piyord^000000]";
+ if (BaseJob != 0) goto NEXT_o;
+ mes "Hello, young traveler.";
+ mes "Welcome.";
+ close;
+NEXT_o:
+ if (BaseJob != 1) goto NEXT0;
+ if (CRUS_Q == 11) goto PART1;
+ if (CRUS_Q == 12) goto PART2;
+ if (CRUS_Q != 13) goto EXIT;
+ mes "Well done!";
+ mes "Go talk to ^000080Michael Halig^000000, he will turn you into a ^800000Crusader^000000.";
+ close;
+ PART2:
+ if (@CRU2 == 43) goto EXIT2;
+ PART2A:
+ mes "So, do you want to try again?";
+ next;
+ menu "Yes",TEST,"No",-;
+ mes "[^000080Bliant Piyord^000000]";
+ mes "Oh, okay then.";
+ close;
+ PART1:
+ mes "Hello, " + strcharinfo(0);
+ mes "I see that you've passed thus far.";
+ next;
+ mes "[^000080Bliant Piyord^000000]";
+ mes "Don't let me down in this test.";
+ mes "This is the ^FF8000Purification Test^000000.";
+ mes "I will take you to the proper location when you are ready.";
+ next;
+ menu "I want to go now.",-,"All right, just a second.",EXIT0;
+ TEST:
+ mes "[^000080Bliant Piyord^000000]";
+ mes "Let me make sure it's empty first.";
+ next;
+ if( getmapusers("job_cru.gat")>0 ) goto EXIT1;
+ killmonster "job_cru.gat","CR_KILL";
+ savepoint "prt_in.gat",81,100;
+ set CRUS_Q, 12;
+ warp "job_cru",167,175;
+ EXIT1:
+ mes "[^000080Bliant Piyord^000000]";
+ mes "I'm sorry, but someone else is inside at the moment.";
+ close;
+ EXIT0:
+ mes "[^000080Bliant Piyord^000000]";
+ mes "No problem, take as long as you need.";
+ close;
+ EXIT:
+ mes "Hello, " + strcharinfo(0);
+ mes "So how are things coming along with building up your abilities?";
+ mes "Are you strong enough to become a ^800000Crusader^000000 yet?";
+ next;
+ mes "[^000080Bliant Piyord^000000]";
+ mes "If you do, you'll find yourself coming back to me for one of the tests.";
+ close;
+EXIT2:
+ mes "Well done!";
+ set CRUS_Q,13;
+ next;
+ mes "Return to ^000080Michael Halig^000000 and he will make you a ^800000Crusader^000000.";
+ close;
+NEXT0:
+ if (BaseJob != 2) goto NEXT1;
+ mes "It's nice to see you.";
+ mes "Hope we'll be able to work together to keep ^00FF00Prontera^000000 safe.";
+ close;
+NEXT1:
+ if (BaseJob != 3) goto NEXT2;
+ mes "Welcome, I hope you have a great day!";
+ close;
+NEXT2:
+ if (BaseJob != 4) goto NEXT3;
+ mes "Good day to you!";
+ close;
+NEXT3:
+ if (BaseJob != 5) goto NEXT4;
+ mes "Hello, sorry but I'm not in need of anything.";
+ close;
+NEXT4:
+ if (BaseJob != 6) goto NEXT5;
+ mes "Don't think you can get away with theft in ^00FF00Prontera^000000, we have soldiers watching everywhere.";
+ close;
+NEXT5:
+ if (BaseJob != 7) goto NEXT6;
+ mes "Welcome!";
+ mes "I hope you have a great day!";
+ close;
+NEXT6:
+ if (BaseJob != 8) goto NEXT7;
+ mes "Welcome to ^00FF00Prontera^000000!";
+ mes "Hope you have a good day!";
+ close;
+NEXT7:
+ if (BaseJob != 9) goto NEXT8;
+ mes "Hello! Glad to see people of your stature here!";
+ close;
+NEXT8:
+ if (BaseJob != 10) goto NEXT9;
+ mes "I appreciate your presence, but I don't need anything at the moment.";
+ mes "Sorry about that.";
+ close;
+NEXT9:
+ if (BaseJob != 11) goto NEXT10;
+ mes "How goes the hunting campaign?";
+ mes "Hope everything is going all right.";
+ close;
+NEXT10:
+ if (BaseJob != 12) goto NEXT11;
+ mes "Stay out of trouble, you hear me?";
+ close;
+NEXT11:
+ if (BaseJob != 14) goto NEXT12;
+ mes "Welcome! Good day to you!";
+ close;
+NEXT12:
+ if (BaseJob != 15) goto NEXT13;
+ mes "Good day, I hope your stay in ^00FF00Prontera^000000 will be a peaceful one.";
+ close;
+NEXT13:
+ if (BaseJob != 16) goto NEXT14;
+ mes "It's good to see people of your stature here in ^00FF00Prontera^000000!";
+ close;
+NEXT14:
+ if (BaseJob != 17) goto NEXT15;
+ mes "Be careful if you don't want to get caught.";
+ mes "I don't want to have to hang you or something.";
+ close;
+NEXT15:
+ if (BaseJob != 18) goto NEXT16;
+ mes "I hope the experiments in ^00FF00Al de Baran^000000 are legal, or we'll have to send someone to clear it up.";
+ close;
+NEXT16:
+ if (BaseJob != 19) goto NEXT17;
+ mes "Ah, what a fine day it is to have such a person as yourself to come and visit.";
+ close;
+NEXT17:
+ if (BaseJob != 20) goto NEXT18;
+ mes "Welcome, good day to you!";
+ close;
+NEXT18:
+ if (BaseJob != 22) goto NEXT19;
+ if (Sex != 0) goto MALE;
+ mes "Wow! Congratulations on your marriage!";
+ close;
+ MALE:
+ mes "Well done! I congratulate you upon your marriage!";
+ close;
+NEXT19:
+ mes "Good day to you!";
+ close;
+}
+
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Entry A - Crusader Job Quest - Patience Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+
+job_cru.gat,23,42,0 script CR_DEAD -1,{
+ killmonster "job_cru.gat","CR_DEAD";
+ set @CRU1,0;
+ enablenpc "CR_TST_2";
+ warp "prt_castle.gat",162,27;
+}
+
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Entry - Crusader Job Quest - Patience Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+job_cru.gat,23,42,0 script CR_TST_2 139,8,8,{
+
+ if (CRUS_Q != 6) goto EXIT;
+ set @CRU1,1;
+ mapannounce "job_cru.gat","Please endure here and go to the exit.",8;
+
+ monster "job_cru.gat",10,43,"Ghoul",1910,1,"CR_DEAD";
+ monster "job_cru.gat",14,47,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",26,46,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",31,46,"Requium",1913,1,"CR_DEAD";
+ monster "job_cru.gat",16,52,"Raydric Archer",1914,0,"CR_DEAD";
+ monster "job_cru.gat",22,53,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",28,49,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",12,54,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",17,55,"Ghoul",1910,1,"CR_DEAD";
+ monster "job_cru.gat",21,57,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",30,58,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",11,64,"Raydric Archer",1914,1,"CR_DEAD";
+ monster "job_cru.gat",19,67,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",24,62,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",13,70,"Ghoul",1910,1,"CR_DEAD";
+ monster "job_cru.gat",18,69,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",29,67,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",32,68,"Requium",1913,1,"CR_DEAD";
+ monster "job_cru.gat",16,75,"Raydric Archer",1914,1,"CR_DEAD";
+ monster "job_cru.gat",21,74,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",27,76,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",14,78,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",19,76,"Ghoul",1910,1,"CR_DEAD";
+ monster "job_cru.gat",24,79,"Requium",1913,1,"CR_DEAD";
+ monster "job_cru.gat",14,83,"Raydric Archer",1914,1,"CR_DEAD";
+ monster "job_cru.gat",18,85,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",22,84,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",33,86,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",13,89,"Ghoul",1910,1,"CR_DEAD";
+ monster "job_cru.gat",17,92,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",23,90,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",26,88,"Ghoul",1910,1,"CR_DEAD";
+ monster "job_cru.gat",17,97,"Khalitzburg",1911,1,"CR_DEAD";
+ monster "job_cru.gat",23,100,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",31,101,"Ghoul",1910,1,"CR_DEAD";
+ monster "job_cru.gat",13,103,"Raydric Archer",1914,1,"CR_DEAD";
+ monster "job_cru.gat",22,105,"Injustice",1912,1,"CR_DEAD";
+ monster "job_cru.gat",30,107,"Khalitzburg",1911,1,"CR_DEAD";
+ disablenpc "CR_TST_2";
+ end;
+ EXIT:
+ warp "prt_castle.gat",162,27;
+}
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Exit - Crusader Job Quest - Patience Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+job_cru.gat,23,109,0 script CR_EXT_1 139,1,1,{
+
+if (@CRU1 == 0) goto JUMP;
+ set CRUS_Q,7;
+ killmonster "job_cru.gat","CR_DEAD";
+ enablenpc "CR_TST_2";
+JUMP:
+ warp "prt_castle.gat",162,28;
+}
+
+
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Fighting Area - Crusader Job Quest - 4th Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+
+job_cru.gat,167,175,0 script CR_KILL -1,{
+
+ if (@CRU2 == 43) goto good;
+
+ set @CRU2,@CRU2 +1;
+ announce "You killed another monster.",3;
+ end;
+
+ good:
+ announce "You killed all monsters, you may go to the exit.",3;
+ end;
+}
+
+job_cru.gat,167,175,0 script CR_TST_4 139,1,1,{
+
+ if(CRUS_Q != 12) goto EXIT;
+ set @CRU2,1;
+ announce "Defeat all the enemies.",3;
+ monster "job_cru.gat",163,42,"Bongun",1188,1,"CR_KILL";
+ monster "job_cru.gat",171,66,"Bongun",1188,1,"CR_KILL";
+ monster "job_cru.gat",163,89,"Bongun",1188,1,"CR_KILL";
+ monster "job_cru.gat",171,115,"Bongun",1188,1,"CR_KILL";
+ monster "job_cru.gat",166,141,"Bongun",1188,1,"CR_KILL";
+ monster "job_cru.gat",168,166,"Bongun",1188,1,"CR_KILL";
+ monster "job_cru.gat",164,170,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",173,153,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",164,138,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",166,128,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",171,117,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",163,102,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",172,84,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",162,76,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",167,65,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",171,58,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",162,48,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",170,33,"Munak",1026,1,"CR_KILL";
+ monster "job_cru.gat",170,26,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",166,37,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",171,47,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",165,61,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",172,65,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",163,77,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",164,86,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",165,98,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",170,101,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",163,110,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",164,117,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",166,129,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",165,139,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",166,151,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",168,160,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",162,169,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",171,171,"Skeleton",1076,1,"CR_KILL";
+ monster "job_cru.gat",162,32,"Zombie",1015,1,"CR_KILL";
+ monster "job_cru.gat",165,51,"Zombie",1015,1,"CR_KILL";
+ monster "job_cru.gat",172,73,"Zombie",1015,1,"CR_KILL";
+ monster "job_cru.gat",170,92,"Zombie",1015,1,"CR_KILL";
+ monster "job_cru.gat",173,111,"Zombie",1015,1,"CR_KILL";
+ monster "job_cru.gat",170,124,"Zombie",1015,1,"CR_KILL";
+ monster "job_cru.gat",171,147,"Zombie",1015,1,"CR_KILL";
+ monster "job_cru.gat",163,162,"Zombie",1015,1,"CR_KILL";
+ disablenpc "CR_TST_4";
+ EXIT:
+ end;
+}
+
+
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+//
+// Test 4 Exit - Crusader Job Quest - 4th Test
+// By Black Dragon based on the information at RagnaInfo
+//
+//-----------------------------------------------------------------------------------------------------------------------------------------------------
+job_cru.gat,167,17,0 script CR_EXT_4 139,2,2,{
+ enablenpc "CR_TST_4";
+ warp "prt_in.gat",81,100;
+}
+
+//==============================================================================
+// mapflag
+//==============================================================================
+job_cru.gat mapflag nomemo
+job_cru.gat mapflag noteleport
+job_cru.gat mapflag nosave SavePoint
+job_cru.gat mapflag nopenalty
+job_cru.gat mapflag nobranch
+job_cru.gat mapflag noexp
+job_cru.gat mapflag noloot
diff --git a/npc/jobs/2-2/dancer.txt b/npc/jobs/2-2/dancer.txt new file mode 100644 index 000000000..157721066 --- /dev/null +++ b/npc/jobs/2-2/dancer.txt @@ -0,0 +1,1040 @@ +//===== eAthena Script =======================================
+//= Dancer Job Quest
+//===== By: ==================================================
+//= Kalen - Original jAthena
+//= Fredzilla - Converted
+//===== Current Version: =====================================
+//= 1.6
+//===== Compatible With: =====================================
+//= eAthena Final
+//===== Description: =========================================
+//= Dancer job quest based off a jAthena script and other sources for clarity
+//===== Additional Comments: =================================
+//= 1.5 Added Baby Class Support [Fredzilla]
+//= 1.1 Removed the warp I left here my accident, added a check for using
+//= Improved Concentration and arrow shower, people could get away with it
+//= [Fredzilla]
+//= 1.0 I tried to keep as much the same from the Jap version as possible
+//= this turned out to be quite hard, but on the whole it is the same script
+//= I have added some new things, and changed some of the used commands,
+//= along with some optimization. [Fredzilla]
+//= 1.6 Added a func which prevent advanced classes passing
+//= 2nd Job Quests again. It also guides adv classes where
+//= to go. [Lupus]
+//============================================================
+
+//= Warning Warp to escape the quest if need be
+job_duncer.gat,69,165,1 script wwarp 45,1,1,{
+ mes "[Warning]";
+ mes "This is the way out, this will cancel your quest if you leave";
+ next;
+ menu "Leave the quest",-,"Cancel",L_Can;
+ Warp "comodo.gat",193,149;
+L_Can:
+ close;
+}
+//= Warp man, takes you to the quest map (Comodo Theater)
+comodo.gat,193,151,4 script Bor Robin 86,{
+ callfunc "F_BlockHigh",27,"High Archer",44,"Gypsy","Bor Robin";
+
+ mes "[Bor Robin]";
+ mes "Well...... alot of people seem to be coming here lately.";
+ mes " ";
+ mes "They used to become dancers instantaneously.";
+ mes "I seen right before my eyes, more than I could count.";
+ mes "Now only people who are worthly can become dancers.";
+ next;
+ mes "[Bor Robin]";
+ mes "Becoming a dancer in these times would bring you true happiness.";
+ mes "It would be great to see more dancers around.";
+ next;
+ mes "[Bor Robin]";
+ mes "I can take you to the Comodo Theater if you want.";
+ mes " ";
+ mes "What have you got to say?";
+ next;
+ menu "Can you take me to the Theater?",L1,"I want to Leave",-;
+ mes "[Bor Robin]";
+ mes "Come back when you feel ready.";
+ close;
+L1:
+ mes "[Bor Robin]";
+ mes "I will take you now.";
+ close2;
+ warp "job_duncer.gat",70,49;
+ end;
+}
+//= 1st quest NPC, asks for Items and/or money, then passes you onto the next NPC
+job_duncer.gat,43,93,4 script Aire 724,{
+ if ((basejob == 3) && (Sex == 0)) goto Larcher;
+ if (basejob == 20) goto Ldancer;
+ if (Upper==1) goto LUpper1;
+ mes "[Aire]";
+ mes "Hi "+strcharinfo(0)+", you are only allowed to stay in this room any where else is off limits to you.";
+ mes "";
+ next;
+ mes "[Aire]";
+ mes "We can't just let anyone become a dancer, there is no reason other than this for people to be here.";
+ next;
+ mes "[Aire]";
+ mes "You can stay and watch the dance stage if you want to, there might be an audition going on.";
+ mes "See you later.";
+ close;
+Ldancer:
+ mes "[Aire]";
+ mes "Nice to see you return.";
+ mes "How have you been recently?";
+ mes "Have you been bringing many people joy?";
+ close;
+Larcher:
+ if (Upper == 1) goto LUpper1;
+ if (DANC_Q == 1) goto LStart2;
+ if (DANC_Q == 2) goto LItem1;
+ if (DANC_Q == 3) goto LItem2;
+ if (DANC_Q == 4) goto LItem3;
+ if ((DANC_Q == 5) || (DANC_Q == 6)) goto LStart3;
+ if (DANC_Q >= 7) goto LStart4;
+ mes "[Aire]";
+ mes "Welcome to our Theater.";
+ mes "This is where various dances are taught.";
+ next;
+ mes "[Aire]";
+ mes "Sightseers visit from all other the place, to watch the dancers.";
+ next;
+ mes "[Aire]";
+ mes "We can also train new dancers here, obviously for a price, we dont want to go out of business.";
+ next;
+ mes "[Aire]";
+ mes "You must first fill in the application form.";
+ mes "All you have to do is write in your details.";
+ next;
+ mes "[Aire]";
+ mes "So what do you say?";
+ mes "Are you proposing you become a dancer? or will you be leaving like many before you.";
+ next;
+ menu "Fill in the form",L1,"Leave",-;
+ mes "[Aire]";
+ mes "If you do reconcider please return to me.";
+ mes "See you later.";
+ close;
+L1:
+ if (JobLevel < 40) goto Llowlv;
+ mes "[Aire]";
+ mes "So you are ready to start you journey!";
+ mes "Please enter in the application form which is there.";
+ next;
+ mes "......";
+ next;
+ mes "......Filling in information......";
+ next;
+ mes "......";
+ next;
+ mes "[Aire]";
+ mes "Your name......";
+ mes strcharinfo(0)+"......";
+ mes "That is a cute name!";
+ next;
+ mes "[Aire]";
+ mes "You will need to do a little waiting.";
+ mes "The form is being read be the dancing schools teacher.";
+ next;
+ mes "[Aire]";
+ mes "When you have time for the next part or your journey talk to me again";
+ set DANC_Q,1;
+ close;
+LStart2:
+ mes "[Aire]";
+ mes "You proposal has been accepted, but you still need to bring some items, and maybe zeny to cover the bill of our school.";
+ next;
+ mes "[Aire]";
+ mes "Lets see what items you will need to bring to cover your bill.";
+ mes " ";
+ mes "Ok...";
+ next;
+//3 Random sets
+ mes "[Aire]";
+ set @itemset, rand(1,3);
+ if (@itemset == 2) goto ItemSet2;
+ if (@itemset == 3) goto ItemSet3;
+
+ mes "The cost for the lesson will be :-";
+ mes "^0000FF10,000 Zeny^000000";
+ mes "A pair of ^0000FFUnslotted Shoes^000000";
+ mes "^0000FF20 Sticky Mucus^000000";
+ mes "^0000FF5 Red Potions^000000";
+ mes "^0000FF3 Jellopy^000000";
+ next;
+ mes "[Aire]";
+ mes "When you have all these, I can prepare the lesson for you.";
+ mes " ";
+ mes "Come an speak to me again when you are ready.";
+ set DANC_Q,2;
+ close;
+ItemSet2:
+ mes "The cost for the lesson will be :-";
+ mes "^0000FF10,000 Zeny^000000";
+ mes "A pair of ^0000FFUnslotted Boots^000000";
+ mes "^0000FF5 earthworm skins^000000";
+ next;
+ mes "[Aire]";
+ mes "When you have all these, I can prepare the lesson for you.";
+ mes " ";
+ mes "Come an speak to me again when you are ready.";
+ set DANC_Q,3;
+ close;
+ItemSet3:
+ mes "The cost for the lesson will be :-";
+ mes "A pair of ^0000FFUnslotted Sandals^000000";
+ mes "^0000FF2 Clam Shells^000000";
+ mes "^0000FF5 Yellow Potions^000000";
+ mes "^0000FF20 Jellopy^000000";
+ mes "^0000FF10 Black Hair^000000";
+ next;
+ mes "[Aire]";
+ mes "When you have all these, I can prepare the lesson for you.";
+ mes "Come an speak to me again when you are ready.";
+ set DANC_Q,4;
+ close;
+
+LItem1:
+ if ((Countitem(938) >= 20) && (Countitem(501) >= 5) && (Countitem(909) >= 3) && (Countitem(2403) >= 1) && (Zeny >= 10000)) goto LItem1OK;
+ mes "[Aire]";
+ mes "Something is wrong here.";
+ mes "Seems you dont have enough items, we need everything that was asked for.";
+ mes "They are all necessary for you to be taught.";
+ mes "Incase you have forgoten, please bring.";
+ next;
+ mes "[Aire]";
+ mes "^0000FF10000 Zeny^000000";
+ mes "A pair of ^0000FFUnslotted Shoes^000000";
+ mes "^0000FF20 Sticky Mucus^000000";
+ mes "^0000FF5 Red Potions^000000";
+ mes "^0000FF3 Jellopy^000000";
+ next;
+ mes "[Aire]";
+ mes "Dont forget to get everything.";
+ mes "What are you waiting for?";
+ mes "see you back here soon";
+ close;
+LItem2:
+ if ((Countitem(1055) >= 5) && (Countitem(2405) >= 1) && (Zeny >= 10000)) goto LItem2OK;
+ mes "Something is wrong here.";
+ mes "Seems you dont have enough items, we need everything that was asked for.";
+ mes "They are all necessary for you to be taught.";
+ mes "Incase you have forgoten, please bring.";
+ next;
+ mes "[Aire]";
+ mes "^0000FF10000 Zeny^000000";
+ mes "A pair of ^0000FFUnslotted Boots^000000";
+ mes "^0000FF5 earthworm skins^000000";
+ next;
+ mes "[Aire]";
+ mes "Dont forget to get everything.";
+ mes "What are you waiting for?";
+ mes "see you back here soon";
+ close;
+LItem3:
+ if ((Countitem(965) >= 2) && (Countitem(503) >= 5) && (Countitem(909) >= 20) && (Countitem(1020) >= 10) && (Countitem(2401) >= 1)) goto LItem3OK;
+ mes "Something is wrong here.";
+ mes "Seems you dont have enough items, we need everything that was asked for.";
+ mes "They are all necessary for you to be taught.";
+ mes "Incase you have forgoten, please bring.";
+ next;
+ mes "[Aire]";
+ mes "A pair of ^0000FFUnslotted Sandals^000000";
+ mes "^0000FF2 Clam Shells^000000";
+ mes "^0000FF5 Yellow Potions^000000";
+ mes "^0000FF20 Jellopy^000000";
+ mes "^0000FF10 Black Hair^000000";
+ next;
+ mes "[Aire]";
+ mes "Dont forget to get everything.";
+ mes "What are you waiting for?";
+ mes "see you back here soon";
+ close;
+LItem1OK:
+ mes "[Aire]";
+ mes "Lets see here, oh you brought everything.";
+ mes "I accept your payment!";
+ set Zeny,Zeny-10000;
+ delitem 938,20;
+ delitem 501,5;
+ delitem 909,3;
+ delitem 2403,1;
+ next;
+ goto LStart3;
+LItem2OK:
+ mes "[Aire]";
+ mes "Lets see here, oh you brought everything.";
+ mes "I accept your payment!";
+ set Zeny,Zeny-10000;
+ delitem 1055,5;
+ delitem 2405,1;
+ next;
+ goto LStart3;
+LItem3OK:
+ mes "[Aire]";
+ mes "Lets see here, oh you brought everything.";
+ mes "I accept your payment!";
+ delitem 965,2;
+ delitem 503,5;
+ delitem 909,20;
+ delitem 1020,10;
+ delitem 2401,1;
+ next;
+LStart3:
+ mes "[Aire]";
+ mes "Now the cost of the training is out of that way, we need you to participate in an interview, and pass a small test to be worthy of becoming a dancer.";
+ next;
+ mes "[Aire]";
+ mes "Your interview and test will be performed by ^0000FF'Bijou'^000000.";
+ mes "Please go and see her as soon as posible.";
+ if (DANC_Q < 5) set DANC_Q,5;
+ close;
+LStart4:
+ mes "[Aire]";
+ mes "Practicing enthusiastically, that cute dance.";
+ mes "When you have completed your training please show me!";
+ close;
+Llowlv:
+ mes "[Aire]";
+ mes "Huh......";
+ mes "I am very sorry, but you have not met our minimun job lvl requirments.";
+ next;
+ mes "[Aire]";
+ mes "You need to be at least above Job Lvl 40.";
+ mes "Please return when you are Job Lvl 40 or higher.";
+ mes "Dont tell anyone I told you this, if you complete the training as a dancer and you are Job Lvl 50 you get an extra gift from us.";
+ mes "Enjoy your day.";
+ close;
+LUpper1:
+ mes "[Aire]";
+ mes "It's such a big honor to salute envoys of Valhalla.";
+ mes "Come again.";
+ emotion 2;
+ close;
+
+}
+//= 2nd "Quest" and Job changer for after the 3rd Quest
+job_duncer.gat,95,93,4 script Bijou 101,{
+ if ((basejob == 3) && (Sex == 0)) goto LArcher;
+ if (basejob == 20) goto LDancer;
+ mes "[Bijou]";
+ mes "Welcome to our Dance Theater, there are many dancers around here.";
+ next;
+ mes "[Bijou]";
+ mes "Unfortunatally for you I have already retired from being a dancer, but I stay here to train new dancers.";
+ next;
+ mes "[Bijou]";
+ mes "The hardest part of becoming a dancing is the physical test of timing and speed, it is done at the stage.";
+ mes "";
+ mes "I then call out direction to the trainee, and they need to follow they to the letter.";
+ mes "If they complete that test they come back to me for the final part of there training, and they leave as a dancer.";
+ close;
+LDancer:
+ mes "[Bijou]";
+ mes "What have you be doing today?";
+ next;
+ mes "[Bijou]";
+ mes "Go and bring joy to all ther others that you see.";
+ mes "Making impression on the many people.";
+ mes "Help other as much as possible.";
+ mes "Dont forget your training.";
+ mes "See you again soon!";
+ close;
+LArcher:
+ if (Skillpoint != 0) goto LErrorA;
+ if (DANC_Q == 5) goto Ltest1;
+ if (DANC_Q == 6) goto Ltest2;
+ if ((DANC_Q == 7) || (DANC_Q == 8)) goto LStart2;
+ if (DANC_Q == 10) goto Ljobchange;
+ mes "[Bijou]";
+ mes "So you want to become a dancer, eh?";
+ next;
+ mes "[Bijou]";
+ mes "Well, it seems you havent paid anything towards it yet.";
+ mes "First you need to fill in an application, and be accepted.";
+ mes "Once accepted you will need to find payment, they can be all items, or some items and zeny.";
+ mes "The person you need to go and talk to about this is 'Aire' she is the other side of the stage.";
+ mes "When everything is ok with her come back to me.";
+ close;
+LErrorA:
+ mes "[Bijou]";
+ mes "You still seem to have skill points.";
+ mes "Untill you use all of your point you cannot change jobs.";
+ close;
+Ltest1:
+ mes "[Bijou]";
+ mes "So you want to become a dancer, eh?";
+ next;
+ mes "[Bijou]";
+ mes "......You have already paid I see, so we can now continue.";
+ next;
+ mes "[Bijou]";
+ mes "Before I can let you become a Dancer I need to test you mental attitude, this is done through a simple test.";
+ mes "It is multiple choice and alot of them are common sence, well common for someone that has the mental attitude to become a dancer.";
+ next;
+ mes "[Bijou]";
+ mes "There is a total of 10 questions, for each one you get correct you are awarded 10 points.";
+ mes " ";
+ mes "There are some answers that will reduce your final score, try and avoid answering them wrong.";
+ next;
+ goto LsetQ;
+Ltest2:
+ mes "[Bijou]";
+ if(DANC_Q == 6) mes "Back for another try?";
+ mes "Good luck to you, now let the test begin.";
+ next;
+LsetQ:
+ set @rand,rand(2);
+ set @dcpoint,0;
+ if (@rand == 1) goto LQuestion2;
+//-------
+LQuestion1:
+ mes "[Bijou]";
+ mes "1.";
+ mes "^00FF00Subject:^000000 Dancer + bard combination playing skill.";
+ mes "What is the effect of ^777777'Classical Pluck/Lokis Veil'^000000 ?";
+ next;
+ menu "Attack power of the level 4 weapon improves",L1_2,"Double the damage is done",L1_2,"Makes skills and magics unusable",-,"Attack speed rises",L1_2;
+ set @dcpoint,@dcpoint+10;
+L1_2:
+//I am unsure about the translated meaning on Question 2, I tried to adapt it with my own question,
+//I will put a asterisk (*) next to all I have done this for, I done this so other people who might understand it better can correct it.
+ mes "[Bijou]";
+ mes "2.";
+ mes "^00FF00Subject:^000000 After Dancing.";
+ mes "After you have finished using an Ensemble skill with a partner what should you never do?";
+ next;
+ menu "Use words of appreciation towards the partner",L1_3,"The dance is praised",L1_3,"Invite the partner to dance again",L1_3,"You tell the partner they did an insufficient job",-;
+ set @dcpoint,@dcpoint+10;
+L1_3:
+// *
+ mes "[Bijou]";
+ mes "3.";
+ mes "^00FF00Subject:^000000 Before Dancing";
+ mes "When a partner activates the incorrect dance what should you do?";
+ next;
+ menu "Smile and just continue to dance",L1_4,"Point out the mistake",-,"Cancel the dance and walk away",L1_4,"Hide your smerk",L1_4;
+ set @dcpoint,@dcpoint+10;
+L1_4:
+ mes "[Bijou]";
+ mes "4.";
+ mes "^00FF00Subject:^000000 General Knowledge.";
+ mes "What is the name of the village where you can designate the change of your occupation to that of a dancer?";
+ next;
+ menu "Prontera",L1_5,"Morroc",L1_5,"Al De Baran",L1_5,"Comodo",-;
+ set @dcpoint,@dcpoint+10;
+L1_5:
+ mes "[Bijou]";
+ mes "5.";
+ mes "^00FF00Subject:^000000 Places around Comodo.";
+ mes "How many caves are directally connect to Comodo Village?";
+ next;
+ menu "1",L1_6,"2",L1_6,"3",-,"4",L1_6;
+ set @dcpoint,@dcpoint+10;
+L1_6:
+ mes "[Bijou]";
+ mes "6.";
+ mes "^00FF00Subject:^000000 Pet's.";
+ mes "Which of the following is not able to be tamed?";
+ next;
+ menu "Isis",L1_7,"Argiope",-,"Dokebi",L1_7,"Deviruchi",L1_7;
+ set @dcpoint,@dcpoint+10;
+L1_7:
+ mes "[Bijou]";
+ mes "7.";
+ mes "^00FF00Subject:^000000 General Knowledge.";
+ mes "Who is the best dancer?";
+ next;
+ menu strcharinfo(0),L1_7a,"Bijou",-,"Isis",L1_8,"Flora",L1_8;
+ set @dcpoint,@dcpoint+10;
+ goto L1_8;
+ L1_7a:
+ set @dcpoint,@dcpoint-100;
+ mes ".........";
+ next;
+L1_8:
+// *
+ mes "[Bijou]";
+ mes "8.";
+ mes "^00FF00Subject:^000000 Places around Comodo.";
+ mes "What is one of the main attractions of Comodo?";
+ next;
+ menu "A Church",L1_9,"Exceptionally good shops",L1_9,"The best chicken you can get anywhere",L1_9,"The Casino",-;
+ set @dcpoint,@dcpoint+10;
+L1_9:
+ mes "[...]";
+ mes "9.";
+ mes "^00FF00Subject:^000000 General Knowledge.";
+ mes "What is my name?";
+ next;
+ menu "Gijou",L1_10,"Bijon",L1_10,"Bijou",-,"Bojou",L1_10;
+ set @dcpoint,@dcpoint+10;
+// *
+L1_10:
+ mes "[Bijou]";
+ mes "10.";
+ mes "^00FF00Subject:^000000 Dancer + bard combination playing skill.";
+ mes "What is the effect of ^777777'Lullaby'^000000 ?";
+ next;
+ menu "Put enemy to sleep, in a 5x5 area",Lcheckpt,"Put enemy to sleep, in a 9x9 area",-,"Stun the enemy, in a 5x5 area",Lcheckpt,"Stun the enemy, in a 9x9 area",Lcheckpt;
+ set @dcpoint,@dcpoint+10;
+ goto Lcheckpt;
+//-------
+LQuestion2:
+ mes "[Bijou]";
+ mes "1.";
+ mes "^00FF00Subject:^000000 Dancer skill.";
+ mes "What is the effect of ^777777'Dancing Lessons'^000000? ";
+ next;
+ menu "Your INT is increased",L2_2,"The damage of whip type attacks are raised",-,"The damage of rod type attacks are raised",L2_2,"The damage of ranged type attacks are raised",L2_2;
+ set @dcpoint,@dcpoint+10;
+L2_2:
+ mes "[Bijou]";
+ mes "2.";
+ mes "^00FF00Subject:^000000 Dance Type.";
+ mes "While doing this type of dance, you wear special shoes that make loud sounds";
+ mes "What is this type of dancing called?";
+ next;
+ menu "Tap dance",-,"Improved Concentration",L2_3,"Tango",L2_3,"Salsa",L2_3;
+ set @dcpoint,@dcpoint+10;
+L2_3:
+ mes "[Bijou]";
+ mes "3.";
+ mes "^00FF00Subject:^000000 Dancer feature.";
+ mes "Choose the thing a dancer cannot do";
+ next;
+ menu "Perform Dances",L2_4,"Attack at a long range",L2_4,"Use a Whip",L2_4,"Use a 2-Handed Sword",-;
+ set @dcpoint,@dcpoint+10;
+L2_4:
+ mes "[Bijou]";
+ mes "4.";
+ mes "^00FF00Subject:^000000 General Knowledge.";
+ mes "What is the town where dancers stay the most?";
+ next;
+ menu "Al De Baran",L2_5,"Yuno",L2_5,"Morroc",L2_5,"Comodo",-;
+ set @dcpoint,@dcpoint+10;
+L2_5:
+ mes "[Bijou]";
+ mes "5.";
+ mes "^00FF00Subject:^000000 General Knowledge.";
+ mes "What person can perfrom the most beautiful dances?";
+ next;
+ menu strcharinfo(0),L2_5a,"Bijou",-,"Isis",L2_6,"Emralhandas",L2_6;
+ set @dcpoint,@dcpoint+10;
+ goto L2_6;
+ L2_5a:
+ set @dcpoint,@dcpoint-100;
+L2_6:
+ mes "[Bijou]";
+ mes "6.";
+ mes "^00FF00Subject:^000000 Dancer feature.";
+ mes "The dancer, in comparison with other occupations, has what advantage?";
+ next;
+ menu "Physical strength",L2_7,"Performing skill power",L2_7,"Dance Capability",-,"Magic Capability",L2_7;
+ set @dcpoint,@dcpoint+10;
+L2_7:
+ mes "[Bijou]";
+ mes "7.";
+ mes "^00FF00Subject:^000000 Places around Comodo.";
+ mes "What is the Casino managers name?";
+ next;
+ menu "Martine",L2_8,"Roberto",L2_8,"Moo",-,"Deniroz",L2_8;
+ set @dcpoint,@dcpoint+10;
+L2_8:
+ mes "[Bijou]";
+ mes "8.";
+ mes "^00FF00Subject:^000000 Dancer feature.";
+ mes "As for the item which the dancer cannot equip?";
+ next;
+ menu "Hair band of cat",L2_9,"Two-handed Sword",-,"Sandals",L2_9,"Earring",L2_9;
+ set @dcpoint,@dcpoint+10;
+L2_9:
+ mes "[Bijou]";
+ mes "9.";
+ mes "^00FF00Subject:^000000 Opinion.";
+ mes "Do you think this test is boring?";
+ next;
+ menu "It is",L2_10,"Give me more questions",-;
+ set @dcpoint,@dcpoint+10;
+L2_10:
+ mes "[Bijou]";
+ mes "10.";
+ mes "^00FF00Subject:^000000 Places around Comodo.";
+ mes "How many lighthouses exist on Comodo Island?";
+ next;
+ menu "1",-,"2",Lcheckpt,"3",Lcheckpt;
+ set @dcpoint,@dcpoint+10;
+ goto Lcheckpt;
+//-------
+Lcheckpt:
+ mes "[Bijou]";
+ mes "You have now completed the test, lets see how you did......";
+ next;
+ mes "[Bijou]";
+ mes "You got a total of "+@dcpoint+" points......";
+ if ((@dcpoint >= 80) && (DANC_Q == 5)) goto LpointOK;
+ if ((@dcpoint >= 70) && (DANC_Q == 6)) goto LpointOK;
+ mes "I am going to need to disqualify you, cause you didnt reach the required ammount.";
+ next;
+ mes "[Bijou]";
+ mes "You are allowed to take the test again if you like, for no extra charge.";
+ if (DANC_Q==5) mes "Next time you take the test I will lower the ammount of points you need to pass, to make it easier for you.";
+ mes "Better luck next time, see you around!";
+ set DANC_Q,6;
+ close;
+ LpointOK:
+ if (@dcpoint == 100) mes "That is amazing, 100% correct.";
+ if (@dcpoint != 100) mes "Even though you didnt get all the questions right, you have still passed.";
+ next;
+ mes "[Bijou]";
+ mes "The next thing you need to do is pass a phyical test, of speed and timing";
+ mes "when you are ready for this test talk to me again, I can also tell you more about the test before you take it.";
+ set DANC_Q,7;
+ close;
+LStart2:
+ mes "[Bijou]";
+ mes "Are you ready for this test? or do you want me to talk you through it first?";
+ next;
+ menu "Please Explain it to me",-,"Take me to the test area",Lwarp;
+ mes "[Bijou]";
+ mes "Think of this more as an audition than a test.";
+ mes "We give you ^0000FF1 minute^000000 to impress us.";
+ next;
+ mes "[Bijou]";
+ mes "There can only be ^0000FFone person^000000 at a time dancing on the stage.";
+ next;
+ mes "[Bijou]";
+ mes "If there are people are infront of you stay in the ^0000FFwaiting room^000000 untill you hear the person infront of you has past or fails their test.";
+ next;
+ mes "[Bijou]";
+ mes "Click in the window above the waiting room guide to get sent to the dance stage, if there is someone already on the stage it will not allow you to enter, you will need to wait.";
+ next;
+ mes "[Bijou]";
+ mes "When you get put onto the stage get into a ^0000FFposition which can look around the whole stage^000000.";
+ next;
+ mes "[Bijou]";
+ mes "Once you get onto the stage I will annouce that the time has started.";
+ mes "Then I will start calling out directions for you to take.";
+ next;
+ mes "[Bijou]";
+ mes "You then need to follow them directions as quickly as possible.";
+ mes "^FF0000[ < ]^000000 = Move to the left";
+ mes "^FF0000[ > ]^000000 = Move to the right";
+ mes "^FF0000[ * ]^000000 = Go back to the center of the stage";
+ mes "^FF0000[ \\/ ]^000000 = Move down towards the front of the stage";
+ mes "^FF0000[ /\\ ]^000000 = Move up towards the back of the stage";
+ next;
+ mes "[Bijou]";
+ mes "There are some other things you will need to do, so just be ready will your skills and bow just incase.";
+ next;
+ mes "[Bijou]";
+ mes "Dont worry if you have no experience of dance, that is what this is for, so you dont need to worry.";
+ close;
+ Lwarp:
+ mes "[Bijou]";
+ mes "I will take you back stage so you can take you test!";
+ set DANC_Q,8;
+ close2;
+ warp "job_duncer.gat",104,109;
+ end;
+Ljobchange:
+ mes "[Bijou]";
+ mes "You have done great, you have passed all the tests we have set out for you.";
+ next;
+ mes "[Bijou]";
+ mes "I now think you have sufficient knowledge to become a dancer now!";
+ next;
+ mes "[Bijou]";
+ mes "Now...... please relax as we finish our training here.";
+ next;
+ mes "[Bijou]";
+ mes "It will be your job to bring joy to all the people in Rune Midgard.";
+ next;
+ if (JobLevel == 50) set @item,1;
+ if (JobLevel != 50) set @item,0;
+ mes "[Bijou]";
+ mes "Watch each time you dance from now on.";
+ next;
+ callfunc "Job_Change",Job_Dancer;
+ callfunc "F_ClearJobVar";
+ mes "[Bijou]";
+ mes "The enjoyment of the people watching you perform......";
+ next;
+ mes "[Bijou]";
+ mes "This is present from me!";
+ if (@item == 0) getitem 1950,1;
+ if (@item == 0) mes "Now take this Rope, and be the best dancer you can be!";
+ if (@item == 1) getitem 1953,1;
+ if (@item == 1) mes "Since you are very experienced I have given you a Line, instead of a simple Rope the normal people would get.";
+ if (@item == 1) mes "Now take you Line, and be the best dancer you can be!";
+ close;
+
+}
+//=Start of the 3rd quest is here, once complete you go back to Bijou to change job
+job_duncer.gat,32,152,6 script Guide::dancew 69,{
+ close;
+OnWarp:
+ warpwaitingpc "job_duncer.gat",70,112,1;
+ disablewaitingroomevent;
+ initnpctimer "jobDq";
+ end;
+OnInit:
+ waitingroom "Dance lesson waiting room",20,"dancew::OnWarp",1;
+ end;
+}
+job_duncer.gat,0,0,0 script jobDq -1,{
+ end;
+OnTimer1000:
+ mapannounce "job_duncer.gat","Bijou: The test begins, Total time allowed is 1 minute.",8;
+ end;
+OnTimer3000:
+ mapannounce "job_duncer.gat","Bijou: Step Up! [ /\\ ]",8;
+ callsub L_SUB1,2000;
+ end;
+OnTimer7000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: To the bottom. [ \\/ ]",8;
+ callsub L_SUB5,2000;
+ end;
+OnTimer11000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: To the left. [ < ]",8;
+ callsub L_SUB2,2000;
+ end;
+OnTimer15000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Go to the right. [ > ]",8;
+ callsub L_SUB4,2000;
+ end;
+OnTimer19000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Return to the middle. [ * ]",8;
+ callsub L_SUB3,3000;
+ end;
+OnTimer21000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Stay still!",8;
+ end;
+OnTimer26000:
+ set @skillcheck,Sp;
+ mapannounce "job_duncer.gat","Bijou: Use 'Improved Concentration'!",8;
+ end;
+OnTimer29000:
+ if (@skillcheck==Sp) goto OnTimer80000;
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: To the left. [ < ]",8;
+ callsub L_SUB2,2000;
+ end;
+OnTimer33000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: To the bottom. [ \\/ ]",8;
+ end;
+OnTimer35000:
+ mapannounce "job_duncer.gat","Bijou: Directly the right! [ > ]",8;
+ callsub L_SUB4,3000;
+ end;
+OnTimer38000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Stay still!",8;
+ end;
+OnTimer41000:
+ mapannounce "job_duncer.gat","Bijou: The left * center * right * top [ < ] [ * ] [ > ] [ /\\ ]",8;
+ callsub L_SUB1,0;
+ end;
+OnTimer47000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: To the right. [ > ] ",8;
+ callsub L_SUB4,3000;
+ end;
+OnTimer50000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: The left * center * down * up: [ < ] [ * ] [ \\/ ] [ /\\ ] ",8;
+ callsub L_SUB1,0;
+ end;
+OnTimer56000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Once again, the left * center * down * up: [ < ] [ * ] [ \\/ ] [ /\\ ]",8;
+ callsub L_SUB1,0;
+ end;
+OnTimer62000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Down! [ \\/ ]",8;
+ callsub L_SUB5,2500;
+ end;
+OnTimer65000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: To the left! [ < ]",8;
+ callsub L_SUB2,2500;
+ end;
+OnTimer68000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Return to the middle. [ * ]",8;
+ callsub L_SUB3,2500;
+ end;
+OnTimer71000:
+ donpcevent "::OnDE1";
+ mapannounce "job_duncer.gat","Bijou: Kill the monster using Arrow Shower!",8;
+ set @skillcheck,Sp;
+ monster "job_duncer.gat",69,106,"Poring",1002,1,"jddie";
+ end;
+OnTimer76000:
+ killmonsterall "job_duncer.gat";
+ end;
+OnTimer80000:
+ mapannounce "job_duncer.gat","Dancer: You was a bit too slow, sorry you have failed.",8;
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ disablenpc "middletile";
+ if (getareausers("job_duncer.gat",68,106,70,114) != 0) areawarp "job_duncer.gat",68,106,70,114,"job_duncer.gat",69,102;
+ if (getareausers("job_duncer.gat",65,109,73,111) != 0) areawarp "job_duncer.gat",65,109,73,111,"job_duncer.gat",69,102;
+ stopnpctimer;
+ enablewaitingroomevent "dancew";
+ end;
+L_SUB1:
+ disablenpc "lefttile";
+ disablenpc "middletile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ setnpctimer getarg(0),"jdt1";
+ startnpctimer "jdt1";
+ return;
+L_SUB2:
+ disablenpc "uppertile";
+ disablenpc "middletile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ setnpctimer getarg(0),"jdt2";
+ startnpctimer "jdt2";
+ return;
+L_SUB3:
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ setnpctimer getarg(0),"jdt3";
+ startnpctimer "jdt3";
+ return;
+L_SUB4:
+ disablenpc "lefttile";
+ disablenpc "middletile";
+ disablenpc "uppertile";
+ disablenpc "lowertile";
+ setnpctimer getarg(0),"jdt4";
+ startnpctimer "jdt4";
+ return;
+L_SUB5:
+ disablenpc "lefttile";
+ disablenpc "middletile";
+ disablenpc "righttile";
+ disablenpc "uppertile";
+ setnpctimer getarg(0),"jdt5";
+ startnpctimer "jdt5";
+ return;
+}
+job_duncer.gat,0,0,0 script jddie -1,{
+ if (@skillcheck==Sp) set @check,1;
+ if (@check==0) mapannounce "job_duncer.gat","Dancer: Well done, you were very skillful, and have passed the test.",8;
+ if (@check==1) mapannounce "job_duncer.gat","Dancer: Sorry "+strcharinfo(0)+" the failed to use arrow shower to kill the monster",8;
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ disablenpc "middletile";
+ if (@check==0) set DANC_Q,10;
+ stopnpctimer "jobDq";
+ enablewaitingroomevent "dancew";
+ if (@check==1) set @check,0;
+ warp "job_duncer.gat",69,102;
+ end;
+}
+job_duncer.gat,63,110,4 script Back dancer #1::jdt1 724,{
+ end;
+OnTimer5000:
+ enablenpc "lefttile";
+ enablenpc "middletile";
+ enablenpc "righttile";
+ enablenpc "lowertile";
+ stopnpctimer;
+ end;
+OnDE1:
+ emotion 21;
+ end;
+OnDE2:
+ emotion 23;
+ end;
+}
+job_duncer.gat,66,113,4 script Back dancer #2::jdt2 724,{
+ end;
+OnTimer5000:
+ enablenpc "uppertile";
+ enablenpc "middletile";
+ enablenpc "righttile";
+ enablenpc "lowertile";
+ stopnpctimer;
+ end;
+OnDE1:
+ emotion 21;
+ end;
+OnDE2:
+ emotion 23;
+ end;
+}
+job_duncer.gat,72,113,4 script Back dancer #3::jdt3 724,{
+ end;
+OnTimer5000:
+ enablenpc "lefttile";
+ enablenpc "uppertile";
+ enablenpc "righttile";
+ enablenpc "lowertile";
+ stopnpctimer;
+ end;
+OnDE1:
+ emotion 21;
+ end;
+OnDE2:
+ emotion 23;
+ end;
+}
+job_duncer.gat,75,110,4 script Back dancer #4::jdt4 724,{
+ end;
+OnTimer5000:
+ enablenpc "lefttile";
+ enablenpc "middletile";
+ enablenpc "uppertile";
+ enablenpc "lowertile";
+ stopnpctimer;
+ end;
+OnDE1:
+ emotion 21;
+ end;
+OnDE2:
+ emotion 23;
+ end;
+}
+job_duncer.gat,75,110,4 script jdt5 139,{
+ end;
+OnTimer5000:
+ enablenpc "lefttile";
+ enablenpc "middletile";
+ enablenpc "righttile";
+ enablenpc "uppertile";
+ stopnpctimer;
+ end;
+}
+job_duncer.gat,69,113,4 script uppertile 139,1,1,{
+ end;
+OnTouch:
+ mapannounce "job_duncer.gat","Dancer: Sorry "+strcharinfo(0)+" the failed to make it in time.",8;
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ disablenpc "middletile";
+ enablewaitingroomevent "dancew";
+ stopnpctimer "jobDq";
+ areawarp "job_duncer.gat",68,112,70,114,"job_duncer.gat",69,102;
+ donpcevent "::OnDE2";
+ end;
+OnDE1:
+OnInit:
+ disablenpc "uppertile";
+ end;
+}
+job_duncer.gat,66,110,4 script lefttile 139,1,1,{
+ end;
+OnTouch:
+ mapannounce "job_duncer.gat","Dancer: Sorry "+strcharinfo(0)+" the failed to make it in time.",8;
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ disablenpc "middletile";
+ enablewaitingroomevent "dancew";
+ stopnpctimer "jobDq";
+ areawarp "job_duncer.gat",65,109,67,111,"job_duncer.gat",69,102;
+ donpcevent "::OnDE2";
+ end;
+OnDE1:
+OnInit:
+ disablenpc "lefttile";
+ end;
+}
+job_duncer.gat,69,110,4 script middletile 139,1,1,{
+ end;
+OnTouch:
+ mapannounce "job_duncer.gat","Dancer: Sorry "+strcharinfo(0)+" the failed to make it in time.",8;
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ disablenpc "middletile";
+ enablewaitingroomevent "dancew";
+ stopnpctimer "jobDq";
+ areawarp "job_duncer.gat",68,109,70,111,"job_duncer.gat",69,102;
+ donpcevent "::OnDE2";
+ end;
+OnDE1:
+OnInit:
+ disablenpc "middletile";
+ end;
+}
+job_duncer.gat,72,110,4 script righttile 139,1,1,{
+ end;
+OnTouch:
+ mapannounce "job_duncer.gat","Dancer: Sorry "+strcharinfo(0)+" the failed to make it in time.",8;
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ disablenpc "middletile";
+ enablewaitingroomevent "dancew";
+ stopnpctimer "jobDq";
+ areawarp "job_duncer.gat",71,109,73,111,"job_duncer.gat",69,102;
+ donpcevent "::OnDE2";
+ end;
+OnDE1:
+OnInit:
+ disablenpc "righttile";
+ end;
+}
+job_duncer.gat,69,107,4 script lowertile 139,1,1,{
+ end;
+OnTouch:
+ mapannounce "job_duncer.gat","Dancer: Sorry "+strcharinfo(0)+" the failed to make it in time.",8;
+ disablenpc "uppertile";
+ disablenpc "lefttile";
+ disablenpc "righttile";
+ disablenpc "lowertile";
+ disablenpc "middletile";
+ enablewaitingroomevent "dancew";
+ stopnpctimer "jobDq";
+ areawarp "job_duncer.gat",68,106,70,108,"job_duncer.gat",69,102;
+ donpcevent "::OnDE2";
+ end;
+OnDE1:
+OnInit:
+ disablenpc "lowertile";
+ end;
+}
+//= Some test NPC, activate these if you wanna try out the dance portion of the quest
+//==================================================================
+//job_duncer.gat,69,105,4 script TestDE1 98,{donpcevent "::OnDE1"; close;}
+//job_duncer.gat,69,110,4 script TestDE2 98,{donpcevent "::OnDE2"; close;}
+//job_duncer.gat,66,100,4 script WarpTilesON 98,{disablenpc "uppertile";disablenpc "lefttile";disablenpc "middletile";disablenpc "righttile";disablenpc "lowertile";close;}
+//job_duncer.gat,72,100,4 script WarpTilesOFF 98,{enablenpc "uppertile";enablenpc "lefttile";enablenpc "middletile";enablenpc "righttile";enablenpc "lowertile";close;}
+//==================================================================
+//job_duncer.gat,69,102,4 script Tester NPC 100,{
+// mes "[TEST]";
+// mes "want to take the dancing test?";
+// next;
+// menu "Yes",Lgo,"No",-;
+// close;
+//Lgo:
+// warp "job_duncer.gat",70,112;
+// initnpctimer "jobDq";
+// end;
+//}
diff --git a/npc/jobs/2-2/monk.txt b/npc/jobs/2-2/monk.txt new file mode 100644 index 000000000..d9af5a8e1 --- /dev/null +++ b/npc/jobs/2-2/monk.txt @@ -0,0 +1,1916 @@ +//===== eAthena Script =======================================
+//= Monk Job Quest
+//===== By: ==================================================
+//= Dino9021, Edited / Translated by Celest
+//===== Current Version: =====================================
+//= 1.9
+//===== Compatible With: =====================================
+//= eAthena 1.0 +
+//===== Description: =========================================
+//= Monk Job Quests for Athena 2004.12.30
+//===== Additional Comments: =================================
+//= 1.1 Fixed missing '";'. Now it's loading fine [Lupus]
+//= 1.1+ Edited/Translated 5% [Celest]
+//= 1.2 Made Poetry Quiz passable, Fixed Marathon Part [Lupus]
+//= 1.3 Added Baby Class Support [Lupus]
+//= 1.5 Fixed possible EXP abuse [Lupus]
+//= 1.6 Added a func which prevent advanced classes passing
+//= 2nd Job Quests again. It also guides adv classes where
+//= to go. [Lupus] 1.7 Fixed warps19/20 [Yor]
+//= 1.8 Fixed bugs. Fixed Green Potion exploit. Getting rid of Jfunc mess [Lupus]
+//= 1.9 Added a missing check in Fuhai and fixed a LOT of Engrish. [Zephiris]
+//============================================================
+
+
+prt_monk.gat,55,249,4 script Tohobu the Guarding Monk 139,0,5,{
+ mes "[Tohobu]";
+ mes "Who are you?!";
+ mes "How dare you enter this holy training place without my permission!!";
+ next;
+ mes "[Tohobu]";
+ mes "Get Out!!";
+ close;
+}
+prt_monk.gat,59,247,4 script Master 120,{
+ callfunc "F_BlockHigh",28,"Acolyte High",39,"Champion","Tohobu";
+
+ if(MONK_Q == 1 ) goto Part1;
+ if(MONK_Q == 2 ) goto Part2;
+ if(MONK_Q > 2 ) goto Part3;
+ if(BaseJob == Job_Monk) goto IsMonk;
+ goto L_START;
+
+IsMonk:
+ mes "[Tohobu]";
+ mes "Your presence is not really desired at the ^00FF00St. Capitolina Abbey^000000.";
+ mes "However, since you are here, please do not disturb the Monks in training,";
+ mes "Even if you are a Monk!";
+ close;
+
+L_START:
+ mes "[Tohobu]";
+ mes "Hmmm...? What do you want from me?";
+ mes "Before entering the Training Area,";
+ mes "You shall have to first tell me your Name, Base Level and Job Level.";
+ next;
+ mes "[Tohobu]";
+ mes "Come! What is your name?";
+ next;
+ menu "Ignore him.",-,"Tell him.",L_MENU_1;
+
+ mes "[Tohobu]";
+ mes "You are so impolite! Get out!";
+ warp "prt_fild03.gat",357,256;
+ end;
+L_MENU_1:
+ mes "[Tohobu]";
+ mes "So... Your name is " + strcharinfo(0) + " Right?";
+ mes "...I believe it is pronounced that way.";
+ mes "Let's see... Job Level is " + JobLevel;
+ next;
+ mes "[Tohobu]";
+ mes "Okay! Why have you come to see me, " + strcharinfo(0) + " ?";
+ next;
+ menu "I'd like to see how Monks train themselves.",L_MENU_1_0,"I want to be a Monk.",L_MENU_1_1,"I'd like to rest here.",L_MENU_1_2;
+
+ L_MENU_1_0:
+ mes "[Tohobu]";
+ mes "Oh! I see.";
+ mes "Okay, I hope you'll learn something from our training,";
+ mes "Perhaps it might aid you in becoming a worthy Monk.";
+ set MONK_Q, 1;
+ close;
+
+ L_MENU_1_1:
+ if(BaseJob != Job_Acolyte) goto IsNot4;
+ if(JobLevel >= 40 ) goto SkillPointChk;
+ mes "[Tohobu]";
+ mes "Your Job Level is not high enough to be a Monk.";
+ mes "Come back when your Job Level is at least 40.";
+ next;
+ mes "[Tohobu]";
+ mes "No need to be hasty, there is so much to learn in this world,";
+ mes "Come back when you have met the requirements... Haha!";
+ close;
+
+ SkillPointChk:
+ if(SkillPoint == 0) goto L_GO;
+ mes "[Tohobu]";
+ mes "Well... It seems that you have the ability to be a Monk,";
+ mes "But I believe there are still skills you have yet to learn.";
+ mes "Come back when you have learned all your skills.";
+ close;
+
+ IsNot4:
+ mes "[Tohobu]";
+ mes "Oh! Are you kidding?";
+ close;
+
+ L_GO:
+ mes "[Tohobu]";
+ mes "Well... Seems you have the ability to be a Monk.";
+ mes "Very well then... Go to Wuhai the Elder, He will guide you.";
+ // used to determine what item to get at the end
+ if(JobLevel == 50) set JBLVL, 50; // used to determine what item to get at the end
+ set MONK_Q, 2;
+ close;
+
+ L_MENU_1_2:
+ mes "[Tohobu]";
+ mes "Alright, you do look tired from your travels...";
+ mes "Perhaps it would be good to rest awhile.";
+ mes "Go ahead and rest at the Abbey before leaving!";
+ next;
+ mes "[Tohobu]";
+ mes "Persevering in order to gain more strength is the way of life of the Monks.";
+ mes "I hope that seeing our practises will at least bring you some inner peace.";
+ close;
+Part1:
+ mes "[Tohobu]";
+ mes "Well? Have you changed your mind after looking around here?";
+ next;
+ menu "Nope.",L_MENU_1_0,"I want to be a Monk",L_MENU_1_1,"I need more rest.",L_MENU_1_2;
+
+Part2:
+ mes "[Tohobu]";
+ mes "Hello there! You should go to Wuhai the Elder. He will guide you.";
+ mes "He is in the Monastery Hall, South East from here";
+ close;
+
+Part3:
+ mes "[Tohobu]";
+ mes "Ah, Hello there! How is your training? Surely you're not going to give up?";
+ close;
+}
+
+monk_in.gat,99,58,4 script Elder Wuhai 60,{
+ //Not sure if this is needed, but hopefully it will prevent bugs [Zephiris]
+ if(MONK_Q > 11) set MONK_Q,11;
+
+ if(MONK_Q == 2) goto L_START;
+ if(MONK_Q == 3) goto Part1;
+ if(MONK_Q == 4) goto Part2;
+ if(MONK_Q >= 5 && MONK_Q < 10) goto Part3;
+ if(MONK_Q >= 10 && countitem(506) > 0) goto Part4;//Items: Green_Potion,
+ if(MONK_Q == 11 && countitem(506) == 0) goto Part5;//Items: Green_Potion,
+ if(BaseJob == Job_Monk) goto Part6;
+ if(BaseJob == Job_Acolyte) goto Part7;
+
+ mes "[Elder Wuhai]";
+ mes "May you find God in the Mother Nature!!";
+ mes "Welcome traveler, why do you seek me?";
+ close;
+
+L_START:
+ mes "[Elder Wuhai]";
+ mes "Hmmm... You are the youth who wants to be a Monk, right?";
+ next;
+ menu "Yes.",L_MENU_1,"No.",-;
+ mes "[Elder Wuhai]";
+ mes "Hmmm...? Aren't you?";
+ mes "Maybe I'm getting older, I would've guessed you were.";
+ mes "Very well then... You may go, young one.";
+ close;
+L_MENU_1:
+ mes "[Elder Wuhai]";
+ mes "Oh! So young ones these days still remember us Monks...";
+ mes "Welcome, my child!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "So you want to be a Monk! I'm glad to hear that!";
+ mes "But first, before you can become one, there are a few things you need to know.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "As Monks, we undergo strict training while protecting world peace.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "The strength is for giving aid to the weak in need, and to protect them from harm.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Last but not least, we control our emotions,";
+ mes "More importantly, never be too proud of yourself,";
+ mes "or be blinded by success,";
+ next;
+ mes "[Elder Wuhai]";
+ mes "It might be tough, even painful,";
+ mes "while undergoing this process.";
+ mes "We will test the limits of what you can endure.";
+ mes "You can not become a Monk if you can't even bear this.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "OKay, let's start the test to see if you really have the ability to become a Monk.";
+ next;
+ if(JBLVL == 50) goto IsJOB50;
+ mes "[Elder Wuhai]";
+ mes "Firstly, here's a small exam to test your will to become one of us.";
+ next;
+
+ set MONK_Q, 3;
+ set JOB_MONK_C,rand(1,6);
+L_Collect:
+ if(JOB_MONK_C == 1 ) goto L_Collect1;
+ if(JOB_MONK_C == 2 ) goto L_Collect2;
+ if(JOB_MONK_C == 3 ) goto L_Collect3;
+ if(JOB_MONK_C == 4 ) goto L_Collect4;
+ if(JOB_MONK_C == 5 ) goto L_Collect5;
+ if(JOB_MONK_C == 6 ) goto L_Collect6;
+
+ L_Collect1:
+ mes "[Elder Wuhai]";
+ mes "Please bring these items";
+ mes "10 Teeth of Bat";
+ mes "5 Bears Footskins";
+ mes "20 Poison Spores";
+ if(@collect_tmp != 1) goto L_CollectS;
+ close;
+
+ L_Collect2:
+ mes "[Elder Wuhai]";
+ mes "Please bring these items";
+ mes "5 Porcupine Quills";
+ mes "20 Cobwebs";
+ mes "10 Grasshopper's Legs";
+ if(@collect_tmp != 1) goto L_CollectS;
+ close;
+
+ L_Collect3:
+ mes "[Elder Wuhai]";
+ mes "Please bring these items";
+ mes "30 Stems";
+ mes "5 Jellopies";
+ mes "10 Worm Peelings";
+ if(@collect_tmp != 1) goto L_CollectS;
+ close;
+
+ L_Collect4:
+ mes "[Elder Wuhai]";
+ mes "Please bring these items";
+ mes "5 Sticky Mucus";
+ mes "10 Earthworm Peelings";
+ mes "20 Green Herbs";
+ if(@collect_tmp != 1) goto L_CollectS;
+ close;
+
+ L_Collect5:
+ mes "[Elder Wuhai]";
+ mes "Please bring these items";
+ mes "20 Yoyo Tails";
+ mes "5 Iron Ores";
+ mes "3 Blue Herbs";
+ if(@collect_tmp != 1) goto L_CollectS;
+ close;
+
+ L_Collect6:
+ mes "[Elder Wuhai]";
+ mes "Please bring these items";
+ mes "5 Solid Shells";
+ mes "20 Shells";
+ mes "5 Zargons";
+ if(@collect_tmp != 1) goto L_CollectS;
+ close;
+L_CollectS:
+ next;
+ mes "[Elder Wuhai]";
+ mes "To test your will, you will have to collect these items by yourself";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Come back to me when you have all of them.";
+ mes "Now go, May God's blessings be with you.";
+ close;
+
+IsJOB50:
+ mes "[Elder Wuhai]";
+ mes "Oh, I see that your Job Level is " +JobLevel +" .";
+ mes "That could prove your ability.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Well done!";
+ mes "I think God will agree with me.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Well then.. There is a Monk named Wutao who wants to see you.";
+ mes "He is in the Ancestral Graveyard North of here.";
+ set MONK_Q, 4;
+ close;
+
+Part1:
+ if(JOB_MONK_C == 1 && countitem(913) >= 10 && countitem(948) >= 5 && countitem(7033) >= 20) goto L_CollectS2_1;//Items: Tooth_of_Bat, Bear's_Footskin, Poison_Spore,
+ if(JOB_MONK_C == 2 && countitem(1027) >= 5 && countitem(1025) >= 20 && countitem(940) >= 10) goto L_CollectS2_2;//Items: Porcupine_Quill, Cobweb, Grasshopper's_Leg,
+ if(JOB_MONK_C == 3 && countitem(905) >= 30 && countitem(909) >= 5 && countitem(955) >= 10) goto L_CollectS2_3;//Items: Stem, Jellopy, Worm_Peeling,
+ if(JOB_MONK_C == 4 && countitem(938) >= 5 && countitem(1055) >= 10 && countitem(511) >= 20) goto L_CollectS2_4;//Items: Sticky_Mucus, Earthworm_Peeling, Green_Herb,
+ if(JOB_MONK_C == 5 && countitem(942) >= 20 && countitem(1002) >= 5 && countitem(510) >= 3) goto L_CollectS2_5;//Items: Yoyo_Tail, Iron_Ore, Blue_Herb,
+ if(JOB_MONK_C == 6 && countitem(943) >= 5 && countitem(935) >= 20 && countitem(912) >= 5) goto L_CollectS2_6;//Items: Solid_Shell, Shell, Zargon,
+
+ mes "[Elder Wuhai]";
+ mes "Hmm... Still not ready yet?";
+ mes "Let me tell what you should bring again,";
+ mes "Listen carefully!";
+ next;
+ set @collect_tmp, 1;
+ goto L_Collect;
+
+ L_CollectS2_1:
+ delitem 913, 10;//Items: Tooth_of_Bat,
+ delitem 948, 5;//Items: Bear's_Footskin,
+ delitem 7033, 20;//Items: Poison_Spore,
+ goto L_CollectS2_E;
+ L_CollectS2_2:
+ delitem 1027, 5;//Items: Porcupine_Quill,
+ delitem 1025, 20;//Items: Cobweb,
+ delitem 940, 10;//Items: Grasshopper's_Leg,
+ goto L_CollectS2_E;
+ L_CollectS2_3:
+ delitem 7012, 30;//Items: Tough_Scalelike_Stem,
+ delitem 909, 5;//Items: Jellopy,
+ delitem 955, 10;//Items: Worm_Peeling,
+ goto L_CollectS2_E;
+ L_CollectS2_4:
+ delitem 938, 5;//Items: Sticky_Mucus,
+ delitem 1055, 10;//Items: Earthworm_Peeling,
+ delitem 511, 20;//Items: Green_Herb,
+ goto L_CollectS2_E;
+ L_CollectS2_5:
+ delitem 942, 20;//Items: Yoyo_Tail,
+ delitem 1002, 5;//Items: Iron_Ore,
+ delitem 510, 3;//Items: Blue_Herb,
+ goto L_CollectS2_E;
+ L_CollectS2_6:
+ delitem 943, 5;//Items: Solid_Shell,
+ delitem 935, 20;//Items: Shell,
+ delitem 912, 5;//Items: Zargon,
+ goto L_CollectS2_E;
+
+ L_CollectS2_E:
+ mes "[Elder Wuhai]";
+ mes "Oh! You've brought all of them!";
+ mes "Well done!";
+ mes "Your will to become a Monk is formidable!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Let's see... there is a Monk named.. Ah... Wutao who wants to see you.";
+ mes "He will be in the Ancestral Graveyard North of here.";
+ set MONK_Q, 4;
+ set JOB_MONK_C, 0;
+ close;
+
+Part2:
+ mes "[Elder Wuhai]";
+ mes "Next should be... Questions regarding your job changing?";
+ mes "Go find master Wutao.";
+ mes "He will be in the Ancestral Graveyard North of here.";
+ close;
+Part3:
+ mes "[Elder Wuhai]";
+ mes "Hmm? You're still taking the test...?";
+ mes "Try to do your best then!";
+ close;
+Part4:
+ mes "[Elder Wuhai]";
+ mes "What? You didn't drink the Magic Potion yet?";
+ mes "Then... Hurry up and finish the Green-ish potion!";
+ mes "Otherwise, you will never be able to achieve the spiritual energy level of Monks!";
+ set MONK_Q, 11;
+ close;
+Part5:
+ mes "[Elder Wuhai]";
+ mes "We have done all the steps... Your blood, your mind, your soul...";
+ mes "All are prepared for you to become a Monk.";
+ mes "Even your spiritual energy has increased after drinking the Magic Potion.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Good... you must now be sworn in by an oath.";
+ mes "Afterwards, the job changing will be complete.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Are you willing to dedicate the rest of your life to serving God?";
+ next;
+ menu "Yes.",L_MONK_Q_2,"No.",-;
+
+ mes "[Elder Wuhai]";
+ mes "......What?......";
+ mes "Aren't you ready to become a Monk?";
+ mes "Perhaps you want to run around a bit more,";
+ mes "and shed some more sweat to become more prepared?";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Consider this carefully before coming back!";
+ mes "I do not want to make you a bad Monk.";
+ close;
+L_MONK_Q_2:
+ mes "[Elder Wuhai]";
+ mes "Will you use the powers given to you for your own good?";
+ next;
+ menu "Yes.",-,"No.",L_MONK_Q_3;
+
+ mes "[Elder Wuhai]";
+ mes "...NO NO NO NO NO!! Our training is not for any self benefits!";
+ mes "How could one who protects world peace abuse this advantage for their own selfish means?!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Go and think over the true purpose of a Monk.";
+ mes "Thoughts like that will only make you greedier for power!";
+ mes "The corruption of your soul will only lead to loss of your ability.";
+ close;
+
+L_MONK_Q_3:
+ mes "[Elder Wuhai]";
+ mes "When judging those who have opposed the will of God,";
+ mes "Will you hesitate in punishing them?";
+ next;
+ menu "No.",L_MONK_Q_4,"Yes.",-;
+
+ mes "[Elder Wuhai]";
+ mes "What do you think Monks are?";
+ mes "No matter who they are,";
+ mes "People who harm the weak are like trash!";
+ mes "They do not have the right to live on this world!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Perhaps you should go to people who deny morals in this world,";
+ mes "Come back again when you have a sense of justice.";
+ mes "Then you will know what to do.";
+ close;
+
+L_MONK_Q_4:
+ mes "[Elder Wuhai]";
+ mes "Will you help to eradicate those who oppose God,";
+ mes "And to sacrifice yourself for the better of others?";
+ next;
+ menu "Yes",L_MONK_Q_5,"No",-;
+
+ mes "[Elder Wuhai]";
+ mes "Oh...nonononono....";
+ mes "If sacrificing oneself would be beneficial to your peers,";
+ mes "and more enemies can be vanquished,";
+ mes "then that would be a great and worthy thing to do!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "What does Sacrifice mean? Come back when you've figured it out.";
+ mes "Ah.. Sacrifice can be so simple, yet so difficult!";
+ close;
+
+L_MONK_Q_5:
+ mes "[Elder Wuhai]";
+ mes "Will you train monsters behind you to help others in battle?";
+ next;
+ menu "Yes",-,"No",L_MONK_Q_6;
+
+ mes "[Elder Wuhai]";
+ // he's not making any sense =P [Unknown]
+ // I've reworded this to what I think it probably correct. [Zephiris]
+ mes "That is not right! Training mobs around does not serve the benefit of everyone!";
+ mes "Instead it is a selfish act that violates the rights of others!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Even when you've learned the skill 'Steel Body'";
+ mes "It is only meant to be used in emergency, or when you meet a strong adversary.";
+ mes "But not in such a situation!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "It might feel like you're helping them,";
+ mes "but you are only commiting acts of unjust!";
+ mes "What is the true way of a Monk?";
+ mes "Come back when you have thought it over.";
+ close;
+
+L_MONK_Q_6:
+ mes "[Elder Wuhai]";
+ // mes "Will you spam?";
+ // "will you spam" is just so... un-monkly. ^^;
+ mes "In villages or wilderness, will you say the same lines repeatedly?";
+ next;
+ menu "Yes",-,"No",L_MONK_Q_7;
+
+ mes "[Elder Wuhai]";
+ mes "No! If you do so, then not just Monks, but even the common people";
+ mes "will be disturbed and pay no attention to you!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "It is the same even if you only wanted to spread the words of God.";
+ mes "Think of your behavior. What's right and wrong?";
+ next;
+ mes "I would rather test you again, but I'll let you go this time.";
+ mes "Think carefully about this before returning!";
+ close;
+L_MONK_Q_7:
+ mes "[Elder Wuhai]";
+ mes "Do you feel as if you're a messenger of God, and are willing to die for God?";
+ next;
+ menu "Yes",L_MONK_Q_8,"No",-;
+
+ mes "[Elder Wuhai]";
+ mes "You cannot be a Monk with this kind of will!";
+ mes "As it's said, Death is only temporary. If we have to give our lives";
+ mes "to protect world peace, it would at least be a meaningful action!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Those who oppose God will be condemned while those who listen to God will live.";
+ mes "What is life and death to you?";
+ mes "Ponder that well.";
+ close;
+
+L_MONK_Q_8:
+ mes "[Elder Wuhai]";
+ mes "Lastly, make an oath to swear you will keep to what you have already sworn.";
+ next;
+ menu "I swear.",L_MONK_Q_9,"I refuse.",-;
+
+ mes "[Elder Wuhai]";
+ mes "......";
+ next;
+ mes "[Elder Wuhai]";
+ mes "It seems like... you don't have enough training...";
+ mes "I can't let you become a Monk.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "It is better for you to train more.";
+ mes "Come back when you ready.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "May God be with you.";
+ close;
+
+L_MONK_Q_9:
+ mes "[Elder Wuhai]";
+ mes "Well then, we have completed the oaths.";
+ if (sex == 0) mes "Gather closer now, you are already my sister!";
+ if (sex == 1) mes "Gather closer now, you are already my brother!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Your promise has been transmited to all Monks through our hearts.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Now, let us begin the ceremony!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "I will acupuncture your 365 acupuncture points and open your 1129 arteries and veins";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Ahhhhhhhhh......";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Wuuu... Huuuuuu";
+ next;
+ mes "- He takes a deeply breath -";
+ next;
+ mes "- The acupuncture begins... -";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Ahhhh--- Dadadadadada!!!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "DaBaDaBaDadadadaKaBonTatatata!!!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Ahhhh--- Dadadadadada!!!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "WaLaChuOhhhhhhh!!!";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Wuuu... Huuuuuu";
+ next;
+ mes "[Elder Wuhai]";
+ mes "WowHoooo... It is done! You are now a Monk!";
+
+ setoption 0;
+ callfunc "Job_Change",Job_Monk;
+ next;
+ mes "[Elder Wuhai]";
+ mes "(Cough!) (Cough!)";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Am I that old...? I feel so tired... (-sigh-)";
+ mes "I could have scaled mountains after this before.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Very well... You are now a Monk...";
+ mes "Welcome to the brotherhood.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "But never forget your promise.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Keep it in your mind, and train yourself.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Now go...";
+ mes "Here is a gift from us to congratulate you.";
+ if(JBLVL < 50) getitem 1801, 1;//Items: Waghnakh,
+ if(JBLVL == 50) getitem 1804, 1;//Items: Knuckle_Duster_,
+ callfunc "F_ClearJobVar";
+ close;
+Part6:
+ mes "[Elder Wuhai]";
+ mes "May you find God in Mother Nature!";
+ mes "Welcome young one! What can I do for you?";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Is everything alright?";
+ mes "How is your training?";
+ next;
+ mes "[Elder Wuhai]";
+ mes "If you don't have a strong body, you may not be able to help people when they need you.";
+ mes "If your will is weak, the Evil in this world will lead you down a dark path.";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Never forget it! You are one who protects the weak as well as world peace!";
+ mes "You should always be aware of Evil around you. Don't let it lead you away from the Light!";
+ close;
+
+Part7:
+ mes "[Elder Wuhai]";
+ mes "May you find God in Mother Nature!";
+ mes "Welcome youung one! What can I do for you?";
+ next;
+ mes "[Elder Wuhai]";
+ mes "Oh! You are an Acolyte....";
+ mes "If you want to pray, go to the Prontera Sanctuary!";
+ mes "This is the Monk training area, not a place for you to pray.";
+ mes "Go and find other places to stay if you are not willing to be a Monk.";
+ close;
+}
+
+prt_monk.gat,251,255,4 script Wutao 79,{
+ if(MONK_Q == 4 ) goto L_START;
+ if(MONK_Q == 5 ) goto Part1;
+ if(MONK_Q == 6 ) goto Part2;
+ if(MONK_Q > 6 ) goto Part3;
+
+ mes "[Wutao]";
+ mes "We are Monks!";
+ mes "We have unlimited power!";
+ mes "We have unlimited wisdom!";
+ mes "We use our power and wisdom to protect world peace!";
+ next;
+ mes "[Wutao]";
+ mes "So...";
+ mes "Are you my enemy?";
+ mes "You block my path!!!!";
+ next;
+ mes "[Wutao]";
+ mes "If someone blocks me, I'll fight!!";
+ mes "TaAhhhhhh!!!";
+ next;
+ mes "[Wutao]";
+ mes "HuHaaaaaaaa!!!";
+ next;
+ mes "[Wutao]";
+ mes "If you are not my enemy, then be on your way.";
+ close;
+
+L_START:
+ mes "[Wutao]";
+ mes "What can I do for you?";
+ mes "Do you want to talk about God?";
+ next;
+ mes "[Wutao]";
+ mes "Oh! you are proceeding with the Monk Training!";
+ mes "The spirit you have is like that of a Monk.";
+ next;
+ mes "[Wutao]";
+ mes "It seems your arteries and veins have begun to strengthen.";
+ mes "You must be the one coming from Elder Wuhai, right?";
+ mes "Very well...";
+ next;
+ mes "[Wutao]";
+ mes "Let me inform you about the spirits of Monks and some simple rules that Monks should obey.";
+ mes "After, I'll help you strengthen your mental state to make your body ready for the next test.";
+ next;
+ mes "[Wutao]";
+ mes "Now, remember exactly what I say and repeat it back to me.";
+ mes "Clear your mind... Are you ready?";
+ next;
+ menu "Yes",L_MENU_1,"No",-;
+ mes "[Wutao]";
+ mes "Then come back when you are ready!";
+ close;
+L_MENU_1:
+ mes "[Wutao]";
+ mes "Alright, let's begin.";
+ next;
+ set @JOB_MONK_C2, rand(1,3);
+L_Again:
+ if(@JOB_MONK_C2 == 0) set @JOB_MONK_C2, rand(1,3);
+ if(@JOB_MONK_C2 == 2) goto L_ROOT_2;
+ if(@JOB_MONK_C2 == 3) goto L_ROOT_3;
+
+ set @monk_str0$,"Supported by dragon and phoenix,";
+ set @monk_str1$,"So flies he westward.";
+ set @monk_str2$,"But the phoenix shall fall to the earth.";
+ set @monk_str3$,"And the dragon shall soar to the sky;";
+ set @monk_str4$,"There shall be successes and failures,";
+ set @monk_str5$,"For such is the eternal law.";
+ set @monk_str6$,"See that ye act when occasion offers,";
+ set @monk_str7$,"Lest ye descend to the Nine Golden Springs.'";
+ goto L_MES;
+ L_ROOT_2:
+ set @monk_str0$,"He boasted not a handsome face,";
+ set @monk_str1$,"Nor was his body blessed with grace.";
+ set @monk_str2$,"His words streamed like a waterfall,";
+ set @monk_str3$,"He read a book and knew it all.";
+ set @monk_str4$,"Shu's glories could he well rehearse,";
+ set @monk_str5$,"His lore embraced the universe.";
+ set @monk_str6$,"Or text or note of scholiast";
+ set @monk_str7$,"Once read, his memory held fast.";
+ goto L_MES;
+ L_ROOT_3:
+ set @monk_str0$,"Seek ye a noble one? Then take ye the way of Jieliang,";
+ set @monk_str1$,"Watch ye how all people revere Guan Yu,";
+ set @monk_str2$,"Each excelling others to honor him,";
+ set @monk_str3$,"Him, one of the three brothers of the Peach Garden Oath,";
+ set @monk_str4$,"Who have won sacrifices, as emperor and king.";
+ set @monk_str5$,"Incomparable their aura spreads through the world;";
+ set @monk_str6$,"They are resplendent as the great lights of the firmament;";
+ set @monk_str7$,"Temples to our Lord Guan Yu abound, no village lacks one,";
+ set @monk_str8$,"Their venerable trees at sundown are the resting places for birds.";
+
+L_MES:
+ mes "[Wutao]";
+ mes "Listen carefully!";
+ next;
+ mes "[Wutao]";
+ mes @monk_str0$;
+ next;
+ mes "[Wutao]";
+ mes @monk_str1$;
+ next;
+ mes "[Wutao]";
+ mes @monk_str2$;
+ next;
+ mes "[Wutao]";
+ mes @monk_str3$;
+ next;
+ mes "[Wutao]";
+ mes @monk_str4$;
+ next;
+ mes "[Wutao]";
+ mes @monk_str5$;
+ next;
+ mes "[Wutao]";
+ mes @monk_str6$;
+ next;
+ mes "[Wutao]";
+ mes @monk_str7$;
+ if(@JOB_MONK_C2 < 3) goto L_MES_1;
+ next;
+ mes "[Wutao]";
+ mes @monk_str8$;
+
+L_MES_1:
+ next;
+ mes "[Wutao]";
+ mes "Now " + strcharinfo(0) + ", it's your turn.";
+ next;
+ set @mnk_score, 0;
+ if(@JOB_MONK_C2 == 2) goto L_MONK_Q2_1;
+ if(@JOB_MONK_C2 == 3) goto L_MONK_Q3_1;
+
+L_MONK_Q1_1:
+
+ menu "And the dragon shall soar to the sky;",L_MONK_Q1_2,
+ "But the phoenix shall fall to the earth.",L_MONK_Q1_2,
+ "For such is the eternal law.",L_MONK_Q1_2,
+ "See that ye act when occasion offers,",L_MONK_Q1_2,
+ "There shall be successes and failures,",L_MONK_Q1_2,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_Q1_2,
+ "Supported by dragon and phoenix,",-,
+ "So flies he westward.",L_MONK_Q1_2;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q1_2:
+
+ menu "But the phoenix shall fall to the earth.",L_MONK_Q1_3,
+ "See that ye act when occasion offers,",L_MONK_Q1_3,
+ "Supported by dragon and phoenix,",L_MONK_Q1_3,
+ "There shall be successes and failures,",L_MONK_Q1_3,
+ "So flies he westward.",-,
+ "And the dragon shall soar to the sky;",L_MONK_Q1_3,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_Q1_3,
+ "For such is the eternal law.",L_MONK_Q1_3;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q1_3:
+
+ menu "There shall be successes and failures,",L_MONK_Q1_4,
+ "But the phoenix shall fall to the earth.",-,
+ "And the dragon shall soar to the sky;",L_MONK_Q1_4,
+ "So flies he westward.",L_MONK_Q1_4,
+ "For such is the eternal law.",L_MONK_Q1_4,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_Q1_4,
+ "See that ye act when occasion offers,",L_MONK_Q1_4,
+ "Supported by dragon and phoenix,",L_MONK_Q1_4;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q1_4:
+
+ menu "And the dragon shall soar to the sky;",-,
+ "Supported by dragon and phoenix,",L_MONK_Q1_5,
+ "But the phoenix shall fall to the earth.",L_MONK_Q1_5,
+ "So flies he westward.",L_MONK_Q1_5,
+ "For such is the eternal law.",L_MONK_Q1_5,
+ "There shall be successes and failures,",L_MONK_Q1_5,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_Q1_5,
+ "See that ye act when occasion offers,",L_MONK_Q1_5;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q1_5:
+
+ menu "For such is the eternal law.",L_MONK_Q1_6,
+ "And the dragon shall soar to the sky;",L_MONK_Q1_6,
+ "So flies he westward.",L_MONK_Q1_6,
+ "Supported by dragon and phoenix,",L_MONK_Q1_6,
+ "But the phoenix shall fall to the earth.",L_MONK_Q1_6,
+ "See that ye act when occasion offers,",L_MONK_Q1_6,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_Q1_6,
+ "There shall be successes and failures,",-;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q1_6:
+
+ menu "Supported by dragon and phoenix,",L_MONK_Q1_7,
+ "So flies he westward.",L_MONK_Q1_7,
+ "For such is the eternal law.",-,
+ "But the phoenix shall fall to the earth.",L_MONK_Q1_7,
+ "There shall be successes and failures,",L_MONK_Q1_7,
+ "And the dragon shall soar to the sky;",L_MONK_Q1_7,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_Q1_7,
+ "See that ye act when occasion offers,",L_MONK_Q1_7;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q1_7:
+
+ menu "So flies he westward.",L_MONK_Q1_8,
+ "Supported by dragon and phoenix,",L_MONK_Q1_8,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_Q1_8,
+ "There shall be successes and failures,",L_MONK_Q1_8,
+ "For such is the eternal law.",L_MONK_Q1_8,
+ "But the phoenix shall fall to the earth.",L_MONK_Q1_8,
+ "And the dragon shall soar to the sky;",L_MONK_Q1_8,
+ "See that ye act when occasion offers,",-;
+
+ set @mnk_score, @mnk_score + 2;
+L_MONK_Q1_8:
+
+ menu "Supported by dragon and phoenix,",L_MONK_QUEST_END,
+ "See that ye act when occasion offers,",L_MONK_QUEST_END,
+ "But the phoenix shall fall to the earth.",L_MONK_QUEST_END,
+ "Lest ye descend to the Nine Golden Springs.",L_MONK_QUEST_1_2,
+ "And the dragon shall soar to the sky;",L_MONK_QUEST_END,
+ "So flies he westward.",L_MONK_QUEST_END,
+ "There shall be successes and failures,",L_MONK_QUEST_END,
+ "For such is the eternal law.",L_MONK_QUEST_END;
+
+L_MONK_Q2_1:
+
+ menu "Nor was his body blessed with grace.",L_MONK_Q2_2,
+ "He read a book and knew it all.",L_MONK_Q2_2,
+ "His words streamed like a waterfall,",L_MONK_Q2_2,
+ "He boasted not a handsome face,",-,
+ "Shu's glories could he well rehearse,",L_MONK_Q2_2,
+ "Once read, his memory held fast.",L_MONK_Q2_2,
+ "His lore embraced the universe.",L_MONK_Q2_2,
+ "Or text or note of scholiast",L_MONK_Q2_2;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q2_2:
+
+ menu "His lore embraced the universe.",L_MONK_Q2_3,
+ "He boasted not a handsome face,",L_MONK_Q2_3,
+ "His words streamed like a waterfall,",L_MONK_Q2_3,
+ "He read a book and knew it all.",L_MONK_Q2_3,
+ "Or text or note of scholiast",L_MONK_Q2_3,
+ "Once read, his memory held fast.",L_MONK_Q2_3,
+ "Shu's glories could he well rehearse,",L_MONK_Q2_3,
+ "Nor was his body blessed with grace.",-;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q2_3:
+
+ menu "His words streamed like a waterfall,",-,
+ "His lore embraced the universe.",L_MONK_Q2_4,
+ "He read a book and knew it all.",L_MONK_Q2_4,
+ "Shu's glories could he well rehearse,",L_MONK_Q2_4,
+ "Nor was his body blessed with grace.",L_MONK_Q2_4,
+ "Or text or note of scholiast",L_MONK_Q2_4,
+ "He boasted not a handsome face,",L_MONK_Q2_4,
+ "Once read, his memory held fast.",L_MONK_Q2_4;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q2_4:
+
+ menu "Nor was his body blessed with grace.",L_MONK_Q2_5,
+ "Once read, his memory held fast.",L_MONK_Q2_5,
+ "Shu's glories could he well rehearse,",L_MONK_Q2_5,
+ "Or text or note of scholiast",L_MONK_Q2_5,
+ "He boasted not a handsome face,",L_MONK_Q2_5,
+ "He read a book and knew it all.",-,
+ "His lore embraced the universe.",L_MONK_Q2_5,
+ "His words streamed like a waterfall,",L_MONK_Q2_5;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q2_5:
+
+ menu "Once read, his memory held fast.",L_MONK_Q2_6,
+ "Or text or note of scholiast",L_MONK_Q2_6,
+ "He read a book and knew it all.",L_MONK_Q2_6,
+ "His words streamed like a waterfall,",L_MONK_Q2_6,
+ "Nor was his body blessed with grace.",L_MONK_Q2_6,
+ "He boasted not a handsome face,",L_MONK_Q2_6,
+ "His lore embraced the universe.",L_MONK_Q2_6,
+ "Shu's glories could he well rehearse,",-;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q2_6:
+
+ menu "Or text or note of scholiast",L_MONK_Q2_7,
+ "He read a book and knew it all.",L_MONK_Q2_7,
+ "Shu's glories could he well rehearse,",L_MONK_Q2_7,
+ "His words streamed like a waterfall,",L_MONK_Q2_7,
+ "His lore embraced the universe.",-,
+ "He boasted not a handsome face,",L_MONK_Q2_7,
+ "Nor was his body blessed with grace.",L_MONK_Q2_7,
+ "Once read, his memory held fast.",L_MONK_Q2_7;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q2_7:
+
+ menu "Nor was his body blessed with grace.",L_MONK_Q2_8,
+ "Or text or note of scholiast",-,
+ "His words streamed like a waterfall,",L_MONK_Q2_8,
+ "Once read, his memory held fast.",L_MONK_Q2_8,
+ "He boasted not a handsome face,",L_MONK_Q2_8,
+ "He read a book and knew it all.",L_MONK_Q2_8,
+ "Shu's glories could he well rehearse,",L_MONK_Q2_8,
+ "His lore embraced the universe.",L_MONK_Q2_8;
+
+ set @mnk_score, @mnk_score + 2;
+L_MONK_Q2_8:
+
+ menu "He boasted not a handsome face,",L_MONK_QUEST_END,
+ "Nor was his body blessed with grace.",L_MONK_QUEST_END,
+ "Shu's glories could he well rehearse,",L_MONK_QUEST_END,
+ "Or text or note of scholiast",L_MONK_QUEST_END,
+ "His lore embraced the universe.",L_MONK_QUEST_END,
+ "He read a book and knew it all.",L_MONK_QUEST_END,
+ "His words streamed like a waterfall,",L_MONK_QUEST_END,
+ "Once read, his memory held fast.",L_MONK_QUEST_1_2;
+
+L_MONK_Q3_1:
+
+ menu "Watch ye how all people revere Guan Yu,",L_MONK_Q3_2,
+ "Seek ye a noble one? Then take ye the way of Jieliang,",-,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_Q3_2,
+ "Each excelling others to honor him,",L_MONK_Q3_2,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_2,
+ "Incomparable their aura spreads through the world;",L_MONK_Q3_2,
+ "They are resplendent as the great lights of the firmament;",L_MONK_Q3_2,
+ "Who have won sacrifices, as emperor and king.",L_MONK_Q3_2,
+ "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_Q3_2;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_2:
+
+ menu "Each excelling others to honor him,",L_MONK_Q3_3,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_Q3_3,
+ "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_Q3_3,
+ "Incomparable their aura spreads through the world;",L_MONK_Q3_3,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_3,
+ "Who have won sacrifices, as emperor and king.",L_MONK_Q3_3,
+ "Watch ye how all people revere Guan Yu,",-,
+ "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_Q3_3,
+ "They are resplendent as the great lights of the firmament;",L_MONK_Q3_3;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_3:
+
+ menu "They are resplendent as the great lights of the firmament;",L_MONK_Q3_4,
+ "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_Q3_4,
+ "Each excelling others to honor him,",-,
+ "Watch ye how all people revere Guan Yu,",L_MONK_Q3_4,
+ "Who have won sacrifices, as emperor and king.",L_MONK_Q3_4,
+ "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_Q3_4,
+ "Incomparable their aura spreads through the world;",L_MONK_Q3_4,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_Q3_4,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_4;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_4:
+
+ menu "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_Q3_5,
+ "Each excelling others to honor him,",L_MONK_Q3_5,
+ "Incomparable their aura spreads through the world;",L_MONK_Q3_5,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_Q3_5,
+ "Him, one of the three brothers of the Peach Garden Oath,",-,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_5,
+ "They are resplendent as the great lights of the firmament;",L_MONK_Q3_5,
+ "Who have won sacrifices, as emperor and king.",L_MONK_Q3_5,
+ "Watch ye how all people revere Guan Yu,",L_MONK_Q3_5;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_5:
+
+ menu "They are resplendent as the great lights of the firmament;",L_MONK_Q3_6,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_Q3_6,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_6,
+ "Who have won sacrifices, as emperor and king.",-,
+ "Watch ye how all people revere Guan Yu,",L_MONK_Q3_6,
+ "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_Q3_6,
+ "Incomparable their aura spreads through the world;",L_MONK_Q3_6,
+ "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_Q3_6,
+ "Each excelling others to honor him,",L_MONK_Q3_6;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_6:
+
+ menu "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_Q3_7,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_7,
+ "Watch ye how all people revere Guan Yu,",L_MONK_Q3_7,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_Q3_7,
+ "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_Q3_7,
+ "Incomparable their aura spreads through the world;",-,
+ "Each excelling others to honor him,",L_MONK_Q3_7,
+ "They are resplendent as the great lights of the firmament;",L_MONK_Q3_7,
+ "Who have won sacrifices, as emperor and king.",L_MONK_Q3_7;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_7:
+
+ menu "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_Q3_8,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_8,
+ "They are resplendent as the great lights of the firmament;",-,
+ "Watch ye how all people revere Guan Yu,",L_MONK_Q3_8,
+ "Each excelling others to honor him,",L_MONK_Q3_8,
+ "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_Q3_8,
+ "Who have won sacrifices, as emperor and king.",L_MONK_Q3_8,
+ "Incomparable their aura spreads through the world;",L_MONK_Q3_8,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_Q3_8;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_8:
+
+ menu "Temples to our Lord Guan Yu abound, no village lacks one,",-,
+ "Incomparable their aura spreads through the world;",L_MONK_Q3_9,
+ "Their venerable trees at sundown are the resting places for birds.",L_MONK_Q3_9,
+ "They are resplendent as the great lights of the firmament;",L_MONK_Q3_9,
+ "Who have won sacrifices, as emperor and king.",L_MONK_Q3_9,
+ "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_Q3_9,
+ "Watch ye how all people revere Guan Yu,",L_MONK_Q3_9,
+ "Each excelling others to honor him,",L_MONK_Q3_9,
+ "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_Q3_9;
+
+ set @mnk_score, @mnk_score + 1;
+L_MONK_Q3_9:
+
+ menu "Him, one of the three brothers of the Peach Garden Oath,",L_MONK_QUEST_END,
+ "Each excelling others to honor him,",L_MONK_QUEST_END,
+ "Watch ye how all people revere Guan Yu,",L_MONK_QUEST_END,
+ "Who have won sacrifices, as emperor and king.",L_MONK_QUEST_END,
+ "Incomparable their aura spreads through the world;",L_MONK_QUEST_END,
+ "Seek ye a noble one? Then take ye the way of Jieliang,",L_MONK_QUEST_END,
+ "They are resplendent as the great lights of the firmament;",L_MONK_QUEST_END,
+ "Temples to our Lord Guan Yu abound, no village lacks one,",L_MONK_QUEST_END,
+ "Their venerable trees at sundown are the resting places for birds.",-;
+
+L_MONK_QUEST_1_2:
+ set @mnk_score, @mnk_score + 1;
+L_MONK_QUEST_END:
+
+ if(@mnk_score < 9) goto L_C2_FAIL;
+
+L_C2_DONE:
+ set @mnk_score, 0;
+ next;
+ mes "[Wutao]";
+ mes "Hmmm...";
+ next;
+ mes "[Wutao]";
+ mes "...Well Done!! It's perfect!";
+ next;
+ mes "[Wutao]";
+ mes "However, don't be happy just yet. There is still much to do before you can become a Monk.";
+ next;
+ mes "[Wutao]";
+ mes "DaAhaaaa...";
+ next;
+ mes "[Wutao]";
+ mes "ShuKeeee.....";
+ next;
+ mes "[Wutao]";
+ mes "SouKouuuuu....";
+ next;
+ mes "[Wutao]";
+ mes "PaYennnn....";
+ next;
+ mes "[Wutao]";
+ mes "As I promised, your mental state is now that of a Monk.";
+ next;
+ mes "[Wutao]";
+ mes "Now go! Seek ^000080Fuhai^000000 for further guidance.";
+ set MONK_Q, 6;
+ close;
+
+L_C2_FAIL:
+ mes "[" + strcharinfo(0) + "]";
+ mes "Well...";
+ next;
+ mes "[Wutao]";
+ mes "Hmmm... ";
+ next;
+ mes "[Wutao]";
+ mes "Hummm...";
+ next;
+ mes "[Wutao]";
+ mes "That not correct! You didn't memorize it all!";
+ next;
+ mes "[Wutao]";
+ mes "Do you doubt yourself? Do you really have the ability to be a Monk?";
+ mes "...That was really....";
+ next;
+ mes "[Wutao]";
+ mes "Well...That's fine, do you want to try it again?";
+ next;
+ mes "[Wutao]";
+ mes "Of course you do! Since you did not pass this test, you can't take the next test.";
+ set MONK_Q, 5;
+ close;
+
+Part1:
+ mes "[Wutao]";
+ mes "Very well. Let's try it again.";
+ next;
+ goto L_Again;
+
+Part2:
+ mes "[Wutao]";
+ mes "What? You forget whom you should seek for?";
+ next;
+ mes "[Wutao]";
+ mes "......You are so.......";
+ next;
+ mes "[Wutao]";
+ mes "...Are you testing my patient?";
+ next;
+ mes "[Wutao]";
+ mes "...Okay, I'll tell you again...";
+ mes "Go and seek ^000080Fuhai^000000 for further guidance.";
+ close;
+Part3:
+ mes "[Wutao]";
+ mes "May God be with you.";
+ close;
+}
+
+prt_monk.gat,57,179,4 script Fuhai 110,{
+
+ if(@Choice_mission == 1 ) goto Part1;
+ if(@Choice_mission == 2 ) goto Part2;
+ if(MONK_Q == 6) goto L_START;
+ if(MONK_Q == 7) goto L_MENU_1_1_2;
+
+ mes "[Fuhai]";
+ mes "HaAhhhhh....!!!";
+ next;
+ mes "- Seems like he is thinking something -";
+ close;
+
+L_START:
+ mes "[Fuhai]";
+ mes "...";
+ next;
+ mes "[Fuhai]";
+ mes "......";
+ next;
+ mes "[Fuhai]";
+ mes ".........";
+ next;
+ mes "[Fuhai]";
+ mes "............";
+ next;
+ menu "Hello there?",-;
+
+ mes "[Fuhai]";
+ mes "...what...WHAT?";
+ mes "How dare you interupt my training!";
+ mes "If it is not very important...";
+ next;
+ mes "[Fuhai]";
+ mes "......";
+ mes "I can't promise you will see the sun tomorrow...";
+ next;
+ mes "[Fuhai]";
+ mes "Why are you here?";
+ mes "Explain!";
+ next;
+ menu "Some one named [Wutao] sent me here.",L_MENU_1,"Well...Nothing...",-;
+
+ mes "[Fuhai]";
+ mes "......";
+ mes "...How about digging a grave for yourself?";
+ close;
+ L_MENU_1:
+ mes "[Fuhai]";
+ mes "Hmmm...Is that so?";
+ mes "That's...";
+ next;
+ mes "[Fuhai]";
+ mes "Oh...Your mental state...";
+ mes "Ha! Very well...";
+ next;
+ mes "[Fuhai]";
+ mes "However, what did you learn from [Wutao]?";
+ next;
+ menu "Hmmm...Well...It's...",-,
+ "I repeated what he said, and he sent me here.",L_MENU_1_1,
+ "He tested my mental status and sent me here.",-;
+
+ mes "[Fuhai]";
+ mes "Foolish!";
+ mes "Don't bother me! Go away!";
+ close;
+ L_MENU_1_1:
+ mes "[Fuhai]";
+ mes "Well...Then?";
+ mes "Did he do anything for you?";
+ next;
+ menu "Ah...It's...I can't tell...",-,
+ "Checked my body",L_MENU_1_1_1,
+ "Told me some rules to obey",L_MENU_1_1_1,
+ "Strengthened my mental state",L_MENU_1_1_2;
+
+ mes "[Fuhai]";
+ mes "Foolish!";
+ mes "Don't bother me! Go away!";
+ close;
+ L_MENU_1_1_1:
+ mes "[Fuhai]";
+ mes "That's quite true, but not the point.";
+ mes "Think! Use your brain!";
+ close;
+
+ L_MENU_1_1_2:
+ set MONK_Q, 7;
+ mes "[Fuhai]";
+ mes "Very well. At least you know what has been changed in your body.";
+ mes "Now, let us begin the next test.";
+ next;
+ mes "[Fuhai]";
+ mes "I'll give you a chance to choose what kind of test you want to take.";
+ mes "Now, make your own choice.";
+ next;
+ menu "Mushroom Collecting",-,"A Marathon",L_ROOT_2;
+
+ mes "[Fuhai]";
+ mes "Mushroom Collecting? Good choice!";
+ mes "That would make you appreciate the value of patience and realize the meaning of the great willpower that following the path of God will give you.";
+ mes "Now go prepare yourself! Come back when you are ready.";
+ set @Choice_mission, 1;
+ close;
+ L_ROOT_2:
+ mes "[Fuhai]";
+ mes "A Marathon? Good choice!";
+ mes "That would make you appreciate the value of willpower and realize the meaning of the great patient that following the path of God will give you.";
+ mes "Now go prepare yourself! Come back when you are ready.";
+ set @Choice_mission, 2;
+ close;
+Part1:
+ mes "[Fuhai]";
+ mes "Are you ready?";
+ mes "Actually, you don't need to prepare anything if you believe in yourself.";
+ next;
+ mes "[Fuhai]";
+ mes "Mushroom Collecting is your choice.";
+ mes "It is a test of your patience.";
+ next;
+ mes "[Fuhai]";
+ mes "Now, go into the building located in the center of this training area.";
+ next;
+ mes "[Fuhai]";
+ mes "You will pass the test when you collect enough mushrooms.";
+ mes "Now, what are waiting for? Go!";
+ close;
+Part2:
+ mes "[Fuhai]";
+ mes "Are you ready?";
+ mes "Actually, you don't need to prepare anything if you believe in yourself.";
+ next;
+ mes "[Fuhai]";
+ mes "A Marathon is your choice.";
+ mes "It's a test of your willpower.";
+ next;
+ mes "[Fuhai]";
+ mes "Now, go into the building located in the center of this training area.";
+ next;
+ mes "[Fuhai]";
+ mes "You will pass the test when you can run enough laps.";
+ mes "Now, what are waiting for? Go!";
+ close;
+
+}
+
+prt_monk.gat,199,169,4 script Guard 746,{
+ if(MONK_Q == 7) goto L_START;
+ if(MONK_Q > 6) goto Part1;
+
+ mes "[Guard ChaoLi]";
+ mes "This is...";
+ mes "Monk Training Area";
+ next;
+ mes "[Guard ChaoLi]";
+ mes "Please be quiet in this area.";
+ close;
+
+L_START:
+ mes "[Guard ChaoLi]";
+ mes "This is...";
+ mes "Monk Training Area";
+ next;
+ mes "[Guard ChaoLi]";
+ mes strcharinfo(0) + "... Right?!";
+ next;
+ mes "[Guard ChaoLi]";
+ mes "Go ahead! Quickly!";
+ mes "There is another test waiting for you!";
+ close;
+
+Part1:
+ mes "[Guard ChaoLi]";
+ mes "Please be quiet in this area.";
+ close;
+}
+
+monk_test.gat,329,61,4 script Bashu 753,{
+ if(MONK_Q == 7) goto L_START;
+
+ mes "[Bashu]";
+ mes "Welcome to ^00FF00St. Capitolina Abbey^000000, the Monk Training Area.";
+ mes "May the light shine on your path.";
+ mes "You can find Monk Daowen, the judge of a Monk's training progress, when you go inside";
+ next;
+ mes "[Bashu]";
+ mes "Never the less, don't touch anything inside and be quiet in front of Monk Daowen.";
+ close;
+L_START:
+ if(@Choice_mission == 0) goto L_MISSB;
+ if(@Choice_mission == 2) goto L_MISS2;
+ mes "[Bashu]";
+ mes "As I know, you choose to collect mushrooms as your test.";
+ goto L_MISSC;
+L_MISSB:
+ mes "[Bashu]";
+ mes "Please select a test.";
+ goto L_MISSC;
+L_MISS2:
+ mes "[Bashu]";
+ mes "As I know, you choose the Marathon as your test.";
+L_MISSC:
+ mes "However, if you cannot complete it, you may switch to the other whenever you feel like it.";
+ next;
+ menu "A Monk's patience - Mushroom Collecting",-,
+ "A Monk's willpower - The Marathon",L_MENU_1;
+
+ mes "[Bashu]";
+ mes "The test you choose is Monk's patience - Mushroom Collecting";
+ next;
+ warp "job_monk.gat",225,179;
+ end;
+
+L_MENU_1:
+ mes "[Bashu]";
+ mes "The test you choose is Monk's willpower - Marathon";
+ next;
+ warp "monk_test.gat",387,345;
+ end;
+}
+
+monk_test.gat,387,347,4 script Musha 110,{
+ mes "[Musha]";
+ mes "Wel...Welcome...!";
+ mes "This...This is the area for testing the wi...willpower of those who want to be a Monk.";
+ next;
+ mes "[Musha]";
+ mes "You should just...just run!";
+ mes "Until we tell you to stop.";
+ mes "Run...Run! " + strcharinfo(0) + "! Run!";
+ next;
+ mes "[Musha]";
+ mes "Just Run!! Run Quickly!!";
+ next;
+ mes "[Musha]";
+ mes "One Day, I'll become a Monk!";
+ mes "I.....will......Become...a......MONK!!!";
+ next;
+ mes "[Musha]";
+ mes "Do...Do you...want to give......give up? or...con...continue?";
+ mes "Give up?";
+ next;
+ menu "I want to giveup!",-,"I want to run!!",L_MENU_1;
+
+ mapannounce "monk_test.gat","Musha: " + strcharinfo(0) + " has give...given up on the test...! Gave up on the Marathon test... No...No willpower.....HaHaHaHa!!!...",8;
+ mes "[Musha]";
+ mes strcharinfo(0) + "...give...give up the test...";
+ mes "Give up the Marathon test...";
+ mes "No...No willpower.....HaHaHaHa!!!...";
+ next;
+ warp "prt_monk.gat",196,168;
+ end;
+L_MENU_1:
+ next;
+ mes "[Musha]";
+ mes "Until we give you an order to stop....";
+ mes "Run...Run! " + strcharinfo(0) + "! Run!";
+ //if(@runtimes == 0)
+ set @runtimes, rand(8,10);
+ set @run, 0;
+ close;
+}
+
+monk_test.gat,390,387,0 script monk_warp 45,1,1,{
+ set @run, @run + 1;
+ if(@run == (@runtimes-1)) mapannounce "monk_test.gat","Musha: Cheer up! The next lap is the last!",8;
+ if(@run == @runtimes) goto L_DONE;
+ warp "monk_test.gat",388,348;
+ end;
+L_DONE:
+ mapannounce "monk_test.gat","Musha: Con....Congratulations!!" + strcharinfo(0)+ " Passes!! Please go to [Daowen], he is deep inside the building.",8;
+ set MONK_Q, 8;
+ warp "prt_monk.gat",196,168;
+ end;
+}
+
+function script MnkTraps {
+ mapannounce "monk_test.gat","trap: " + strcharinfo(0)+ " , you fell into a trap! We will warp you to the starting line.",8;
+ warp "monk_test.gat",388,348;
+}
+//---------------------
+monk_test.gat,386,164,0 script monk1-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,386,165,0 script monk1-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,387,164,0 script monk1-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,387,165,0 script monk1-4 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,388,164,0 script monk1-5 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,388,165,0 script monk1-6 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,389,164,0 script monk1-7 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,389,165,0 script monk1-8 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,386,42,0 script monk2-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,386,43,0 script monk2-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,387,42,0 script monk2-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,387,43,0 script monk2-4 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,388,42,0 script monk2-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,388,43,0 script monk2-4 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,389,42,0 script monk2-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,389,43,0 script monk2-4 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,184,11,0 script monk3-1 139,0,3,{callfunc "MnkTraps";}
+monk_test.gat,185,11,0 script monk3-2 139,0,3,{callfunc "MnkTraps";}
+monk_test.gat,186,11,0 script monk3-3 139,0,3,{callfunc "MnkTraps";}
+monk_test.gat,187,11,0 script monk3-4 139,0,3,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,70,10,0 script monk4-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,70,11,0 script monk4-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,70,12,0 script monk4-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,70,13,0 script monk4-4 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,71,10,0 script monk4-5 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,71,11,0 script monk4-6 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,71,12,0 script monk4-7 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,71,13,0 script monk4-8 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,8,30,0 script monk5-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,8,31,0 script monk5-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,9,30,0 script monk5-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,9,31,0 script monk5-4 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,10,30,0 script monk5-5 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,10,31,0 script monk5-6 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,11,30,0 script monk5-7 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,11,31,0 script monk5-8 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,12,30,0 script monk5-9 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,12,31,0 script monk5-10 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,13,30,0 script monk5-11 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,13,31,0 script monk5-12 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,14,30,0 script monk5-13 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,14,31,0 script monk5-14 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,15,30,0 script monk5-15 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,15,31,0 script monk5-16 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,10,158,0 script monk6-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,10,159,0 script monk6-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,11,158,0 script monk6-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,11,159,0 script monk6-4 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,12,158,0 script monk6-5 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,12,159,0 script monk6-6 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,13,158,0 script monk6-7 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,13,159,0 script monk6-8 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,38,386,0 script monk7-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,38,387,0 script monk7-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,38,388,0 script monk7-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,38,389,0 script monk7-4 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,39,386,0 script monk7-5 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,39,387,0 script monk7-6 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,39,388,0 script monk7-7 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,39,389,0 script monk7-8 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,82,390,0 script monk8-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,82,391,0 script monk8-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,83,390,0 script monk8-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,83,391,0 script monk8-4 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+monk_test.gat,82,384,0 script monk8-1 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,82,385,0 script monk8-2 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,83,384,0 script monk8-3 139,0,0,{callfunc "MnkTraps";}
+monk_test.gat,83,385,0 script monk8-4 139,0,0,{callfunc "MnkTraps";}
+//---------------------
+
+prt_monk.gat,225,179,4 script XuanWu 89,{
+ mes "[XuanWu]";
+ mes "To see the growing of crops, I deeply appreciate the grace of God.";
+ next;
+ mes "[XuanWu]";
+ mes "Never the less, to see those crops grown by the strong Monks.";
+ mes "I think it's the most beautiful picture!";
+ next;
+ mes "[XuanWu]";
+ mes "Frankly speeking, farmers are the greatest people in the world.";
+ mes "The Blue Potion you drink must be made of God's will and by the farmer.";
+ next;
+ mes "[XuanWu]";
+ mes "We should always be grateful.";
+ next;
+ mes "[XuanWu]";
+ mes "God gives you everything, even the farmer.";
+ next;
+ mes "[XuanWu]";
+ mes "The farmer is the root of world. That is quite true.";
+ close;
+}
+job_monk.gat,225,179,4 script XuanWu 89,{
+
+ if(MONK_Q == 8 ) goto Part2;
+ if(@mission_start == 1 ) goto Part1;
+
+ mes "[XuanWu]";
+ mes "Welcome! I'm in charge here with the Mushroom Collecting.";
+ mes "My Name is XuanWu";
+ next;
+ mes "[XuanWu]";
+ mes "From now, you should take it for granted that all the suffering is training.";
+ mes "Understand?";
+ next;
+ mes "[XuanWu]";
+ mes "For Monk's lives, we should always offer our efforts as a tribute.";
+ mes "Growing crops is also a kind of training.";
+ next;
+ mes "[XuanWu]";
+ mes "We think it is the best way to realize the will of God.";
+ mes "Therefore, we have started growing some kind of mushrooms that smell foul";
+ next;
+ mes "[XuanWu]";
+ mes "All you have to do is destroy those mushrooms and bring something to prove that you did.";
+ mes "What is that something? The ^ff0000Orange Gooey Mushrooms and Orange Net Mushrooms^000000";
+ next;
+ mes "[XuanWu]";
+ mes "If you want to increase your strength and become a Monk, go and destroy them.";
+ mes "Bring as many as you can, I won't tell you the amount I need.";
+ mes "Now go!";
+ next;
+ mes "[XuanWu]";
+ mes "Or...Do you want to give up?";
+ next;
+ menu "Start Mushroom Collecting",L_MENU_1,"I'll give up",L_MENU_2;
+
+L_MENU_2:
+ mapannounce "monk_test.gat","XuanWu: ......Another one without patience...",8;
+ mes "[XuanWu]";
+ mes "Another one without patience...";
+ set @mission_start, 0;
+ getitem 1069, 1;//Items: Orange_Net_Mushroom,
+ delitem 1069, countitem(1069);//Items: Orange_Net_Mushroom,
+ getitem 1070, 1;//Items: Orange_Gooey_Mushroom,
+ delitem 1070, countitem(1070);//Items: Orange_Gooey_Mushroom_,
+ next;
+ warp "prt_monk.gat",196,168;
+ end;
+L_MENU_1:
+ mes "[XuanWu]";
+ mes "Then what are you waiting for? Go Go Go!!";
+ set @mission_start, 1;
+ close;
+
+Part1:
+ if(countitem(1069) >= 30 && countitem(1070) >0 ) goto L_DONE;//Items: Orange_Net_Mushroom, Orange_Gooey_Mushroom_,
+ if(countitem(1070) >= 30 && countitem(1069) >0 ) goto L_DONE;//Items: Orange_Gooey_Mushroom_, Orange_Net_Mushroom,
+ mes "[XuanWu]";
+ mes "Hmmm... Is that all you can do? I don't think it's enough.";
+ next;
+ mes "[XuanWu]";
+ mes "Or...Do you want to give up?";
+ next;
+ menu "Continue Mushroom Collecting",-,"I'll give up",L_MENU_2;
+ close;
+L_DONE:
+ set MONK_Q, 8;
+ mes "[XuanWu]";
+ mes "Well... I think you can do better...";
+ mes "However, I would say you pass the test.";
+ set @mission_start, 0;
+ delitem 1069, countitem(1069);//Items: Orange_Net_Mushroom,
+ delitem 1070, countitem(1070);//Items: Orange_Gooey_Mushroom_,
+ next;
+ mes "[XuanWu]";
+ mes "Now go to [Daowen], he is deep inside the building.";
+ close;
+Part2:
+ mes "[XuanWu]";
+ mes "Are you testing my patience??";
+ mes "Go to [Daowen], he is in deep inside the building.";
+ close;
+}
+job_monk.gat,191,172,4 script job_monk_warp 45,1,1,{
+ warp "monk_test.gat",329,57;
+ end;
+}
+
+job_monk.gat,199,169,4 script Guard ChaoLi 746,{
+ mes "[Guard ChaoLi]";
+ mes "Silence in test area!";
+ close;
+}
+
+monk_test.gat,319,139,4 script Daowen 52,{
+ if(MONK_Q == 8) goto L_START;
+ if(MONK_Q == 9) goto Part1;
+ if(MONK_Q == 10) goto Part2;
+
+ mes "[Daowen]";
+ mes "Go through it quietly...";
+ mes "HuWuWuuuu......";
+ next;
+ mes "[Daowen]";
+ mes "This is St. Capitolina Abbey. If anything goes wrong, all we have done might become nothing.";
+ next;
+ mes "[Daowen]";
+ mes "Leave! If you don't want to die, don't bother me.";
+ close;
+L_START:
+ mes "[Daowen]";
+ mes "Oh! Finally!";
+ mes "This is the last test, and I am in charge here";
+ mes "My name is 'Daowen'";
+ next;
+ mes "[Daowen]";
+ mes "Well... What should I say?";
+ mes "Those who block your way? Fight them!";
+ next;
+ mes "[Daowen]";
+ mes "Fight! Slash! When you're lost and an enemy blocks your way!";
+ mes "Tell them the will of God!";
+ next;
+ mes "[Daowen]";
+ mes "Don't compare yourself with the weak priest!";
+ mes "We are always strong Monks.";
+ next;
+ mes "[Daowen]";
+ mes "We are different from the weak priests that always run away!";
+ next;
+ mes "[Daowen]";
+ mes "Now! Clench your fist! Go and fight!";
+ next;
+ mes "[Daowen]";
+ mes "Do your best!";
+ mes "HaHaHaHaHa.....!!";
+ next;
+ warp "monk_test",88,73;
+ end;
+
+Part1:
+ mes "[Daowen]";
+ mes "Well done!! HaHaHaHa....!!";
+ mes "I knew you could do it!";
+ mes "I'll give you a special potion that will increase your power.";
+ next;
+ set MONK_Q, 10;
+ if(countitem(506) == 0){//Items: Green_Potion,
+ getitem 506, 1;//Items: Green_Potion,
+ mes "[Daowen]";
+ mes "Drink it, and your internal organs will become strong enough to be a Monk.";
+ next;
+ }else{
+ emotion e_what;
+ mes "[Daowen]";
+ mes "What....!! You already have this special green potion!";
+ mes "Drink all of them, and your internal organs will become strong enough to be a Monk.";
+ next;
+ }
+Part2:
+ mes "[Daowen]";
+ mes "Go to Wuhai - the first one you met here.";
+ close;
+}
+
+monk_test.gat,88,91,4 script Test Assistant 52,{
+ mes "[Test Assistant]";
+ mes "Are you ready for training in the dispersement of evil?";
+ next;
+ mes "[Test Assistant]";
+ mes "The test area is a maze with invisible walls.";
+ mes "The exit point is on the opposite side of the starting point.";
+ next;
+ mes "[Test Assistant]";
+ mes "Of course, there will be some monsters spawned in the maze. You'll have to fight with them.";
+ mes "Good luck! May God be with you.";
+ next;
+ if(getareausers("monk_test.gat",126,161,165,199) > 0) goto L_WAIT;
+ killmonster "monk_test.gat","monk_mob1";
+ enablenpc "monk_mob1_1";
+ enablenpc "monk_mob1_2";
+ enablenpc "monk_mob1_3";
+ enablenpc "monk_mob1_3";
+ warp "monk_test.gat",127,179;
+ end;
+L_WAIT:
+ mes "[Test Assistant]";
+ mes "Oh... There is someone else taking the test. Please wait a minute then try again.";
+ close;
+}
+monk_test.gat,129,180,4 script monk_mob1_1 139,0,19,{
+ monster "monk_test.gat",130,183,"--ja--",1015,1,"monk_mob1";
+ monster "monk_test.gat",130,177,"--ja--",1015,1,"monk_mob1";
+//~ disablenpc "monk_mob1_1";
+ end;
+}
+monk_test.gat,133,180,4 script monk_mob1_2 139,0,19,{
+ monster "monk_test.gat",134,183,"--ja--",1015,1,"monk_mob1";
+ monster "monk_test.gat",134,177,"--ja--",1015,1,"monk_mob1";
+//~ disablenpc "monk_mob1_2";
+ end;
+}
+monk_test.gat,145,180,4 script monk_mob1_3 139,0,19,{
+ monster "monk_test.gat",145,180,"--ja--",1041,1,"monk_mob1";
+//~ disablenpc "monk_mob1_3";
+ end;
+}
+monk_test.gat,155,180,4 script monk_mob1_4 139,0,19,{
+ monster "monk_test.gat",157,183,"--ja--",1015,1,"monk_mob1";
+ monster "monk_test.gat",157,177,"--ja--",1015,1,"monk_mob1";
+//~ disablenpc "monk_mob1_4";
+ end;
+}
+monk_test.gat,165,179,4 script monk_mob3_warp 45,1,1,{
+ set MONK_Q, 9;
+ mapannounce "monk_test.gat","Congratulations!!" + strcharinfo(0)+ " Passes!! Please go to [Daowen], he is deep inside the building.",8;
+ killmonster "monk_test.gat","monk_mob1";
+ warp "monk_test.gat",317,142;
+ end;
+}
+
+monk_test.gat,1,1,1 script monk_mob1 -1,{
+ end;
+}
+
+monk_test.gat,95,85,4 script Test Assistant 79,{
+ mes "[Test Assistant]";
+ mes "Are you ready for training in the dispersement of evil?";
+ next;
+ mes "[Test Assistant]";
+ mes "The test area is a maze with invisible walls.";
+ mes "The exit point is on the opposite side of the starting point.";
+ next;
+ mes "[Test Assistant]";
+ mes "Of course, there will be some monsters spawned in the maze. You'll have to fight with them.";
+ mes "Good luck! May God be with you.";
+ next;
+ if(getareausers("monk_test.gat",126,262,165,300) > 0) goto L_WAIT;
+ killmonster "monk_test.gat","monk_mob2";
+ enablenpc "monk_mob2_1";
+ enablenpc "monk_mob2_2";
+ enablenpc "monk_mob2_3";
+ enablenpc "monk_mob2_4";
+ warp "monk_test.gat",127,278;
+ end;
+
+L_WAIT:
+ mes "[Test Assistant]";
+ mes "Oh... There is someone else taking the test. Please wait a minute then try again.";
+ close;
+
+}
+monk_test.gat,129,281,4 script monk_mob2_1 139,0,19,{
+ monster "monk_test.gat",130,278,"--ja--",1015,1,"monk_mob2";
+ monster "monk_test.gat",130,284,"--ja--",1015,1,"monk_mob2";
+//~ disablenpc "monk_mob2_1";
+ end;
+}
+monk_test.gat,136,281,4 script monk_mob2_2 139,0,19,{
+ monster "monk_test.gat",139,278,"--ja--",1015,1,"monk_mob2";
+ monster "monk_test.gat",139,284,"--ja--",1015,1,"monk_mob2";
+//~ disablenpc "monk_mob2_2";
+ end;
+}
+monk_test.gat,144,281,4 script monk_mob2_3 139,0,19,{
+ monster "monk_test.gat",145,281,"--ja--",1041,1,"monk_mob2";
+//~ disablenpc "monk_mob2_3";
+ end;
+}
+monk_test.gat,153,281,4 script monk_mob2_4 139,0,19,{
+ monster "monk_test.gat",155,278,"--ja--",1015,1,"monk_mob2";
+ monster "monk_test.gat",155,284,"--ja--",1015,1,"monk_mob2";
+//~ disablenpc "monk_mob2_4";
+ end;
+}
+monk_test.gat,165,278,4 script monk_mob2_warp 45,1,1,{
+ set MONK_Q, 9;
+ mapannounce "monk_test.gat","Congratulations!!" + strcharinfo(0)+ " Passes!! Please go to [Daowen], he is deep inside the building.",8;
+ killmonster "monk_test.gat","monk_mob2";
+ warp "monk_test.gat",317,142;
+ end;
+}
+
+monk_test.gat,1,1,1 script monk_mob2 -1,{
+ end;
+}
+
+monk_test.gat,82,85,4 script Test Assistant 95,{
+ mes "[Test Assistant]";
+ mes "Are you ready for training in the dispersement of evil?";
+ next;
+ mes "[Test Assistant]";
+ mes "The test area is a maze with invisible walls.";
+ mes "The exit point is on the opposite side of the starting point.";
+ next;
+ mes "[Test Assistant]";
+ mes "Of course, there will be some monsters spawned in the maze. You'll have to fight with them.";
+ mes "Good luck! May God be with you.";
+ next;
+ if(getareausers("monk_test.gat",233,262,269,300) > 0) goto L_WAIT;
+ killmonster "monk_test.gat","monk_mob3";
+ enablenpc "monk_mob3_1";
+ enablenpc "monk_mob3_2";
+ enablenpc "monk_mob3_3";
+ enablenpc "monk_mob3_4";
+ warp "monk_test.gat",231,279;
+ end;
+
+L_WAIT:
+ mes "[Test Assistant]";
+ mes "Oh... There is someone else taking the test. Please wait a minute then try again.";
+ close;
+}
+
+monk_test.gat,234,281,4 script monk_mob3_1 139,0,19,{
+ monster "monk_test.gat",235,277,"--ja--",1015,1,"monk_mob3";
+ monster "monk_test.gat",235,284,"--ja--",1015,1,"monk_mob3";
+//~ disablenpc "monk_mob3_1";
+ end;
+}
+monk_test.gat,239,281,4 script monk_mob3_2 139,0,19,{
+ monster "monk_test.gat",240,277,"--ja--",1015,1,"monk_mob3";
+ monster "monk_test.gat",240,284,"--ja--",1015,1,"monk_mob3";
+//~ disablenpc "monk_mob3_2";
+ end;
+}
+monk_test.gat,248,281,4 script monk_mob3_3 139,0,19,{
+ monster "monk_test.gat",249,281,"--ja--",1041,1,"monk_mob3";
+//~ disablenpc "monk_mob3_3";
+ end;
+}
+monk_test.gat,260,281,4 script monk_mob3_4 139,0,19,{
+ monster "monk_test.gat",261,277,"--ja--",1015,1,"monk_mob3";
+ monster "monk_test.gat",261,284,"--ja--",1015,1,"monk_mob3";
+//~ disablenpc "monk_mob3_4";
+ end;
+}
+monk_test.gat,269,279,4 script monk_mob3_warp 45,1,1,{
+ set MONK_Q, 9;
+ mapannounce "monk_test.gat","Congratulations!!" + strcharinfo(0)+ " Passes!! Please go to [Daowen], he is deep inside the building.",8;
+ killmonster "monk_test.gat","monk_mob3";
+ warp "monk_test.gat",317,142;
+ end;
+}
+
+
+//==============================================================================
+// Monsters of Mushroom Collecting
+//==============================================================================
+job_monk.gat,0,0,0,0 monster Thief Mushroom 1182,170,0,0,0
+job_monk.gat,0,0,0,0 monster Thief Bug Larva 1051,120,0,0,0
+
+//==============================================================================
+// warps
+//==============================================================================
+prt_monk.gat,192,172,0 warp monk15 1,1,monk_test.gat,329,50
+monk_test.gat,329,47,0 warp monk16 1,1,prt_monk.gat,193,166
+monk_test.gat,329,76,0 warp monk17 1,1,monk_test.gat,259,118
+monk_test.gat,259,115,0 warp monk18 1,1,monk_test.gat,329,71
+monk_test.gat,271,126,0 warp monk19 1,1,monk_test.gat,301,127
+monk_test.gat,298,127,0 warp monk20 1,1,monk_test.gat,268,126
+
+//==============================================================================
+// mapflag
+//==============================================================================
+monk_test.gat mapflag nomemo
+monk_test.gat mapflag noteleport
+monk_test.gat mapflag nosave SavePoint
+monk_test.gat mapflag nopenalty
+monk_test.gat mapflag nobranch
+monk_test.gat mapflag noexp
+monk_test.gat mapflag noloot
diff --git a/npc/jobs/2-2/rogue.txt b/npc/jobs/2-2/rogue.txt new file mode 100644 index 000000000..2825d4071 --- /dev/null +++ b/npc/jobs/2-2/rogue.txt @@ -0,0 +1,758 @@ +//===== eAthena Script =======================================
+//= Rogue Job Quest
+//===== By: ==================================================
+//= kobra_k88
+//===== Current Version: =====================================
+//= 1.6
+//===== Compatible With: =====================================
+//= eAthena 1.0 +
+//===== Description: =========================================
+//= Rogue job quest based off of official iRO Rogue quest.
+//= There are some differences from official quest due to scripting issues.
+//= Missing some message text.
+//===== Additional Comments: =================================
+//= 1.1 fixed 3 wrong questions, added missing lines [Lupus]
+//= 1.3 Baby Class Support + 40/50 JobLevel Item fix [Lupus]
+//= 1.5 Fixed possible EXP abuse [Lupus]
+//= 1.6 Added a func which prevent advanced classes passing
+//= 2nd Job Quests again. It also guides adv classes where
+//= to go. [Lupus]
+//============================================================
+
+
+//=======================================================================================================//
+// Markie: Test 1 and Jobchange //
+//***********************************************************************************************************************************************************//
+in_rogue.gat,363,123,3 script Markie 747,{
+ callfunc "F_BlockHigh",30,"Thief High",41,"Stalker","Markie";
+
+ mes "[Markie]";
+ if(BaseJob == Job_Thief) goto L_Thief;
+ if(BaseJob == Job_Rogue) goto L_Rogue;
+
+L_JobOther:
+ mes "I don't know how you found this place, but I think you better leave..........";
+ close;
+
+L_Rogue:
+ mes "Nice to see you again sweetie. You must be having so much fun as Rogue huh? Teh he he....";
+ close;
+
+L_Thief:
+ if(JobLevel >= 40) goto L_Start;
+ mes "Oh hi there. If you want to become a Rogue I'm afraid you'll have to come back after you've trained a little more.";
+ mes "Only Thieves with a ^5533FFJob level of at least 40^000000 can become Rogues.";
+ close;
+
+L_Start:
+ if(ROGUE_Q == 1) goto L_ReTest;
+ if(ROGUE_Q == 2) goto L_Test2;
+ if(ROGUE_Q == 3) goto L_Test3;
+ if(ROGUE_Q == 4) goto L_Test4;
+ if(ROGUE_Q == 5) goto L_Change;
+ mes "Hmm? What brings you down here? Oh I see now... You want to become a rogue don't you sweetie?";
+ next;
+ mes "[Markie]";
+ mes "Well it's nice to meet you. My name is Markie, what's yours?";
+ next;
+ mes "[Markie]";
+ mes strcharinfo(0) + "..... Te he, you've got a nice name there honey. By the way, how come you decided to become a Rogue?";
+ next;
+ mes "[Markie]";
+ mes "Well since you were honest with me and gave me your real name I guess it doesn't really matter.";
+ mes "But for future reference, a Rogue never reveals his/her true identity to anybody.";
+ next;
+ mes "[Markie]";
+ mes "It's a Rogue's number 1 rule shuga, so from now on you'd better be careful about that.";
+ mes "By the way, here's an application form..... please fill out all the necessary information.....";
+ next;
+ mes "(you fill out the form and hand it back)";
+ set JBLVL, 40; // used to determine what item to get at the end
+ if(JobLevel == 50) set JBLVL, 50; // used to determine what item to get at the end
+ next;
+ mes "[Markie]";
+ mes "Okay honey.... looks good, I'll accept your application.";
+ mes "Now that that's been taken care of, how about I conduct a short interview with you?";
+ next;
+ mes "[Markie]";
+ mes "Oh, you don't have to be nervous about it sweetie.... I'm just want to find out how much you know about Rogues.";
+ mes "I do this with all of the Rogue candidates. Shall we begin?";
+ next;
+ menu "Ok.",L_Test1, "Hold on... I need some time.",-;
+
+ mes "[Markie]";
+ mes "Okay honey, just take your time. When you're ready come back.";
+ close;
+
+
+//=================================================================
+L_Test1:
+//=======
+ mes "[Markie]";
+ mes "I am going to ask you a few questions. Listen carefully and choose what you think is the best answer okay?";
+ next;
+ callfunc "RogQ_check";
+ if(@score< 90) goto sL_Failed;
+ if(@score<100) goto sL_Passed;
+
+ sL_Perfect:
+ mes "A perfect score! I knew you had what it takes to be a Rogue.....";
+ mes "But don't get ahead of yourself honey cause there is still plenty more.....";
+ next;
+ mes "[Markie]";
+ set ROGUE_Q, 2;
+ goto L_Test2;
+
+ sL_Passed:
+ mes "Good, good. You did a good job shuga. But there is still more so don't get excited just yet.....";
+ next;
+ mes "[Markie]";
+ set ROGUE_Q, 2;
+ goto L_Test2;
+ return;
+
+ sL_Failed:
+ mes "*sigh*..... this is not the type of score I was expecting......";
+ mes "What can I say excecpt, with a score like this you're definitely not cut out to be a Rogue..........";
+ emotion 4;
+ next;
+ mes "[Markie]";
+ mes "Why don't you go do some more training shuga..... you need it..... *mumbles ( what a waste of my time...)*";
+ close;
+
+L_ReTest:
+ mes "You again? Are you sure you're ready this time?...... Okay honey, just relax....";
+ next;
+ goto L_Test1;
+
+L_Test2:
+ mes "Your second test will be given by ^5533FFMr. Smith^000000.";
+ mes "I have to warn you though, Mr. Smith can be difficult and hard to please. So be careful how you act around him.";
+ close;
+L_Test3:
+ mes "I know those guys are hard to find. Just be patient and keep on searching. Make sure you have the correct password as well..";
+ close;
+L_Test4:
+ mes "What are you doing here? I hope your not trying to skip the last test?.........";
+ emotion 1;
+ next;
+ mes "[Markie]";
+ mes "Your almost finished so just keep trying. I know you can do it.";
+ close;
+
+
+//=======================================================================
+L_Change:
+//===========
+ mes "Oh, you're back and your in one piece! It looks like you've passed all of the tests sweetie.";
+ mes "You have proven that you are ready to become a Rogue!";
+ emotion 5;
+ next;
+ if(SkillPoint != 0) goto L_SkillP;
+ mes "[Markie]";
+ mes "Tada! Congratulations on becoming a Rogue. You showed a lot of effort and deserve a reward for it......";
+ setlook 7,0;
+ callfunc "Job_Change",Job_Rogue;
+ emotion 46;
+ next;
+ mes "[Markie]";
+ mes "Now that you are a Rogue you are free to go where ever you want to and do what ever you want.";
+ if(JBLVL != 50) getitem 1219,1; // 2 slott gladius
+ if(JBLVL == 50) getitem 1220,1; // 3 slott gladius
+ callfunc "F_ClearJobVar";
+ next;
+ mes "[Markie]";
+ mes "Just keep in mind that freedom requires responsibility. Treat people the way you expect to be treated.";
+ next;
+ mes "[Markie]";
+ mes "Have fun shuga! See ya around!";
+ close;
+
+//=======================================================================
+L_SkillP:
+//===========
+ mes "[Markie]";
+ mes "Oh but one thing honey... you have leftover skill points!";
+ mes "Finish them first and come back, 'kay?";
+ close;
+}
+
+
+
+//=======================================================================================================//
+// Mr. Smith: Tests 2 and 3 //
+//***********************************************************************************************************************************************************//
+in_rogue.gat,376,23,3 script Mr. Smith 57,{
+
+ mes "[Mr. Smith]";
+ if(BaseJob == Job_Thief) goto L_Thief;
+ if(BaseJob == Job_Rogue) goto L_Rogue;
+
+L_OtherJob:
+ mes "Go away! I'm busy.....";
+ close;
+L_Rogue:
+ mes "Looking good there my Rogue friend";
+ close;
+L_Thief:
+ if(ROGUE_Q == 2) goto L_Test2;
+ if(ROGUE_Q == 3) goto L_Test3;
+ if(ROGUE_Q > 3) goto L_Done;
+ mes "Ok ok.... one... two.... three.... Where do you do you business... is it.... Morroc... Geffen.... Comodo??.......";
+ next;
+ mes "[Mr. Smith]";
+ mes "Uhh..... this is giving me a headache.......";
+ next;
+ mes "[Mr. Smith]";
+ mes "Huh? Who are you? If you want to become a rogue go talk to ^5533FFMarkie^000000....";
+ next;
+ mes "[Mr. Smith]";
+ mes "...... CRAP! I forgot what I was counting!!";
+ emotion 16;
+ close;
+
+//----------------------------------------------------------------------------------------------------
+L_Test2:
+//--------------
+ if(ROGUE_Q2 > 0) goto L_Check2;
+ mes "So you're here to take the second test.... good.......";
+ next;
+ mes "[Mr. Smith]";
+ mes "Before we get started, let me tell you about the test application fee.";
+ mes "Our guild is involved in alot of business *cough* 'transactions' *cough* and therefore we are in constant needs of funds.";
+ next;
+ mes "[Mr. Smith]";
+ mes "This is why we require a fee of ^5533FF10,000 zeny^000000 to be paid when taking the Rogue tests.";
+ mes "The fee will be collected when you have completed this second test so don't have to worry if you don't have it now.";
+ next;
+ mes "[Mr. Smith]";
+ mes "Now for your test..... You will be required to collect the following items:";
+ next;
+ mes "[Mr. Smith]";
+ set ROGUE_Q2, rand(1,3);
+ if(ROGUE_Q2 == 1) callsub sF2_R1;
+ if(ROGUE_Q2 == 2) callsub sF2_R2;
+ if(ROGUE_Q2 == 3) callsub sF2_R3;
+ next;
+ mes "[Mr. Smith]";
+ mes "Once you have ALL of these items and 10,000 zeny, come back and see me okay? Good.";
+ close;
+
+ sF2_R1:
+ mes "^5533FF6 Blue Herbs,";
+ mes "10 Skel Bones,";
+ mes "10 Decayed Nails,";
+ mes "10 Horrendous Mouths^000000.";
+ return;
+ sF2_R2:
+ mes "^5533FF10 Green Herbs,";
+ mes "10 Garlets,";
+ mes "10 Snake Scales";
+ mes "10 Crab Shells.^000000";
+ return;
+ sF2_R3:
+ mes "^5533FF10 Yellow Herbs,";
+ mes "10 Bear's Footskin,";
+ mes "10 Shells";
+ mes "10 Grasshopper's Legs^000000.";
+ return;
+
+L_Check2:
+ set @count, 0;
+ if(ROGUE_Q2 == 2) goto L_2;
+ if(ROGUE_Q2 == 3) goto L_3;
+
+ L_1:
+ set @R, 1;
+ if(countitem(510)<6 || countitem(932)<10 || countitem(957)<10 || countitem(958)<10 || Zeny < 10000) goto L_NotEnuf;
+ delitem 510,6;
+ delitem 932,10;
+ delitem 957,10;
+ delitem 958,10;
+ goto L_Done2;
+
+ L_2:
+ set @R, 2;
+ if(countitem(511)<10 || countitem(910)<10 || countitem(926)<10 || countitem(964)<10 || Zeny < 10000) goto L_NotEnuf;
+ delitem 511,10;
+ delitem 910,10;
+ delitem 926,10;
+ delitem 964,10;
+ goto L_Done2;
+
+ L_3:
+ set @R, 3;
+ if(countitem(508)<10 || countitem(948)<10 || countitem(935)<10 || countitem(940)<10 || Zeny < 10000) goto L_NotEnuf;
+ delitem 508,10;
+ delitem 948,10;
+ delitem 935,10;
+ delitem 940,10;
+
+ L_Done2:
+ mes "Let's see here.... application fee.... check..... items....... check...... Alright, everything looks in order. You've passed the second test.";
+ next;
+ mes "[Mr. Smith]";
+ mes "When you are ready to take the next test let me know.";
+ set Zeny, Zeny - 10000;
+ set ROGUE_Q, 3;
+ set ROGUE_Q2, 0;
+ close;
+
+ L_NotEnuf:
+ mes ".... What the f@&#!?!? You don't have all of the items? Then why did you come back?? Don't tell me you forgot what to get.....";
+ emotion 1;
+ next;
+ mes "[Mr. Smith]";
+ mes "Write this down! You need ^5533FF10,000^000000 zeny and:";
+ if(ROGUE_Q2 == 1) callsub sF2_R1;
+ if(ROGUE_Q2 == 2) callsub sF2_R2;
+ if(ROGUE_Q2 == 3) callsub sF2_R3;
+ next;
+ mes "[Mr. Smith]";
+ mes "Got it? DON'T come back until you have everything.........";
+ emotion 32;
+ close;
+
+
+//----------------------------------------------------------------------------------------------
+L_Test3:
+//---------------
+ if(ROGUE_Q2 > 0) goto L_Check3;
+ mes "Let me see..... Who should I have you go find........ hmm.........";
+ emotion 20;
+ next;
+ mes "[Mr. Smith]";
+ mes "Ah I know! Alright, in the previous test I had you go find some items. For this test you will need to find a specific person.";
+ emotion 5;
+ next;
+ mes "[Mr. Smith]";
+ set ROGUE_Q2, rand(1,3);
+ if(ROGUE_Q2 == 1) callsub sF3_R1;
+ if(ROGUE_Q2 == 2) callsub sF3_R2;
+ if(ROGUE_Q2 == 3) callsub sF3_R3;
+ next;
+ mes "[Mr. Smith]";
+ mes "Good luck to you. Try to finish this test as soon as possible. Getting things done quickly is one of a Rogue's traits.";
+ close;
+
+ sF3_R1:
+ mes "You will have to go and find ^5533FFAragham Junior^000000.";
+ next;
+ mes "[Mr. Smith]";
+ mes "He lives in a little house somewhere ^5533FFSouthWest^000000 of the Fortress of Sandarman.";
+ mes "That area is located ^5533FFone map East^000000 from here and is on the ^000000SouthWestern land mass^000000.";
+ next;
+ mes "[Mr. Smith]";
+ mes "He's a really nice guy who works real hard and is very good at collecting unpaid debts.";
+ mes "Unfortunately people were trying to kill him because of something his father had done in the past.";
+ next;
+ mes "[Mr. Smith]";
+ mes "When he joined the Rogue guild, he decided he was going to keep low which is why he's in his current hiding place.";
+ mes "No one is supposed to know where he is except for those of us at the Rogue Guild.";
+ next;
+ mes "[Mr. Smith]";
+ mes "That's why you will need this password in order to talk to him.";
+ mes "The password is: '^5533FFAragham never hoarded upgrade items.^000000'";
+ return;
+ sF3_R2:
+ mes "You will have to go and find ^5533FFHollgrehen Junior^000000.";
+ next;
+ mes "[Mr. Smith]";
+ mes "He lives in a little house somewhere ^5533FFSouthEast^000000 of the Fortress of Sandarman.";
+ mes "That area is located ^5533FFone map East^000000 from here and is on the ^5533FFEastern land mass^000000.";
+ next;
+ mes "[Mr. Smith]";
+ mes "He's a really nice guy who works real hard and is very good at collecting unpaid debts.";
+ mes "Unfortunately people were trying to kill him because of something his father had done in the past.";
+ next;
+ mes "[Mr. Smith]";
+ mes "When he joined the Rogue guild, he decided he was going to keep low which is why he's in his current hiding place.";
+ mes "No one is supposed to know where he is except for those of us at the Rogue Guild.";
+ next;
+ mes "[Mr. Smith]";
+ mes "That's why you will need this password in order to talk to him.";
+ mes "The password is: '^5533FFMy Father never hoarded upgrade items.^000000'";
+ return;
+ sF3_R3:
+ mes "You will have to go and find ^5533FFAntonio Junior.^000000.";
+ next;
+ mes "[Mr. Smith]";
+ mes "He lives in a little hut somewhere on the ^5533FFEastern end of Kokomo Beach^000000.";
+ mes "That area is located ^5533FF1 map North, and 1 map West^000000 from here.";
+ next;
+ mes "[Mr. Smith]";
+ mes "He's a really nice guy who works real hard and is very good at collecting unpaid debts.";
+ mes "Unfortunately people were trying to kill him because of something his father had done in the past.";
+ next;
+ mes "[Mr. Smith]";
+ mes "When he joined the Rogue guild, he decided he was going to keep low which is why he's in his current hiding place.";
+ mes "No one is supposed to know where he is except for those of us at the Rogue Guild.";
+ next;
+ mes "[Mr. Smith]";
+ mes "That's why you will need this password in order to talk to him.";
+ mes "The password is: '^5533FFAntonio doesn't like breaking refining material.^000000'";
+ return;
+
+
+L_Check3:
+ mes "What!?! Did you just say you forgot where to go?........";
+ emotion 1;
+ next;
+ mes "[Mr. Smith]";
+ mes "GRRRR!!! That's why you need to WRITE down important things! Geez......";
+ emotion 6;
+ next;
+ mes "[Mr. Smith]";
+ if(ROGUE_Q2 == 1) callsub sF3_R1;
+ if(ROGUE_Q2 == 2) callsub sF3_R2;
+ if(ROGUE_Q2 == 3) callsub sF3_R3;
+ close;
+
+//-------------------------------------------------------------------------------------------------
+L_Done:
+//----------------
+ mes "I have no more busisness with you.........";
+ close;
+}
+
+
+//===========================================================
+// Guildsman that need to be found
+//===========================================================
+
+//------------------------------------------------------------------------------
+in_rogue.gat,272,136,3 script Hermanthorn Jr. 85,{
+ mes "[Hermanthorn Jr.]";
+ mes "Huh? Wha.... who are you?! You're not from the Rogue guild!! Get out of here!";
+ emotion 1;
+ next;
+ mes "[Hermanthorn Jr.]";
+ mes "You're..... I see! You're one of them!!! You've come here to kill me haven't you??!! No... NO!! I'm not ready to die yet!";
+ emotion 0;
+ next;
+ mes "[Hermanthorn Jr.]";
+ mes "Aaaaaaaaaaaaaahhhh!! Go away! Get lost! Otherwise I am gonna KILL YOU!!!";
+ emotion 16;
+ close;
+}
+
+// --------------------------------------------------------------------------
+cmd_fild09.gat,106,195,0 script Aragham Junior 45,1,1,{
+ callfunc "F_RogueTest3", 1, "Aragham", "never", "hoarded", "upgrade items.", 244, 24;
+}
+
+// -----------------------------------------------------------------------------
+cmd_fild09.gat,335,143,0 script Hollgrehen Junior 45,1,1,{
+ callfunc "F_RogueTest3", 2, "My father", "never", "hoarded", "upgrade items.", 168, 34;
+}
+
+// ------------------------------------------------------------------------------
+cmd_fild04.gat,304,179,0 script Antonio Junior 45,1,1,{
+ callfunc "F_RogueTest3", 3, "Antonio", "doesn't like", "breaking", "refining materials.", 165, 104;
+}
+
+// Function for Guildsman ===================================
+function script F_RogueTest3 {
+
+ mes "[???]";
+ mes "Who's there?!!!";
+ mes "Who dares to trespass on my territory?";
+ if(BaseJob!=Job_Thief || ROGUE_Q<3 || ROGUE_Q2==0) close;
+L_Start:
+ deletearray @choice$[1], 4;
+ next;
+ menu "My father",M_1a, "Aragham",M_1b, "Antonio",M_1c, "Legolas",M_1d;
+
+ M_1a:
+ set @choice$[1], "My father";
+ goto M_Menu2;
+ M_1b:
+ set @choice$[1], "Aragham";
+ goto M_Menu2;
+ M_1c:
+ set @choice$[1], "Antonio";
+ goto M_Menu2;
+ M_1d:
+ set @choice$[1], "Legolas";
+
+ M_Menu2:
+ callsub sF_Password;
+ menu "did not",M_2a, "doesn't like",M_2b, "never",M_2c, "ever",M_2d;
+
+ M_2a:
+ set @choice$[2], "did not";
+ goto M_Menu3;
+ M_2b:
+ set @choice$[2], "doesn't like";
+ goto M_Menu3;
+ M_2c:
+ set @choice$[2], "never";
+ goto M_Menu3;
+ M_2d:
+ set @choice$[2], "ever";
+
+ M_Menu3:
+ callsub sF_Password;
+ menu "hoard",M_3a, "hoarded",M_3b, "hide",M_3c, "took",M_3d, "breaking",M_3e;
+
+ M_3a:
+ set @choice$[3], "hoard";
+ goto M_Menu4;
+ M_3b:
+ set @choice$[3], "hoarded";
+ goto M_Menu4;
+ M_3c:
+ set @choice$[3], "hide";
+ goto M_Menu4;
+ M_3d:
+ set @choice$[3], "took";
+ goto M_Menu4;
+ M_3e:
+ set @choice$[3], "breaking";
+
+ M_Menu4:
+ callsub sF_Password;
+ menu "upgrade items.",M_4a, "forging items.",M_4b, "refining materials.",M_4c, "upgrade equipment.",M_4d;
+
+ M_4a:
+ set @choice$[4], "upgrade items.";
+ goto L_Check;
+ M_4b:
+ set @choice$[4], "forging items.";
+ goto L_Check;
+ M_4c:
+ set @choice$[4], "refining materials.";
+ goto L_Check;
+ M_4d:
+ set @choice$[4], "upgrade equipment.";
+
+L_Check:
+ callsub sF_Password;
+ if(ROGUE_Q2 != getarg(0)) goto L_Wrong;
+ if((@choice$[1] != getarg(1)) || (@choice$[2] != getarg(2)) || (@choice$[3] != getarg(3)) || (@choice$[4] != getarg(4))) goto L_Wrong;
+ mes "~ creeek ~";
+ mes "You hear the door begining to open........";
+ next;
+ deletearray @choice$[1], 4;
+ warp "in_rogue.gat", getarg(5), getarg(6);
+ end;
+
+ L_Wrong:
+ mes "[???]";
+ mes "Get lost!!";
+ close;
+sF_Password:
+ mes "[^5533FF" + strcharinfo(0) + "^000000]";
+ mes @choice$[1];
+ mes @choice$[2];
+ mes @choice$[3];
+ mes @choice$[4];
+ next;
+ return;
+}
+
+
+//=======================================================================================================//
+// Test 4: Last Test //
+//***********************************************************************************************************************************************************//
+// Other path
+// warp "in_rogue.gat", 11, 388;
+// 390,389 end warp
+// 9,9 -> 9,21
+//===============================================
+// Guildsman
+//===============================================
+//---------------------------------------------------------------------------
+in_rogue.gat,244,39,4 script Aragham Junior 99,{
+ callfunc "F_RogueTest4", "Aragham Junior", 245, 27;
+}
+//---------------------------------------------------------------------------
+in_rogue.gat,152,27,6 script Hollgrehen Junior 85,{
+ callfunc "F_RogueTest4", "Hollgrehen Junior", 160, 32;
+}
+//---------------------------------------------------------------------------
+in_rogue.gat,183,105,4 script Antonio Junior 88,{
+ callfunc "F_RogueTest4", "Antonio Junior", 175, 107;
+}
+
+// Function for Guildsman =============================
+function script F_RogueTest4 {
+
+ if(ROGUE_Q == 4) goto L_Restart;
+ mes "[" + getarg(0) + "]";
+ mes "Hello there... You must be from the Rogue guild. My name is " + getarg(0) + "...... I am the Rogue of the Desert..............";
+ next;
+ mes "[" + getarg(0) + "]";
+ mes "Aww who am I kidding...... Let's cut the crap. So are you ready to become a rogue?";
+ emotion 4;
+ next;
+ mes "[" + getarg(0) + "]";
+ mes "You see, the Rogue motto is...... ^5533FF'Avoid the strong! Be malicious to the weak!'^000000";
+ mes "This simple rule applys to fighting monsters as well.";
+ next;
+ mes "[" + getarg(0) + "]";
+ mes "The very last thing you will have to do before you can become a Rogue, is to walk through an underground passage to the Rogue Guild.";
+ next;
+ mes "[" + getarg(0) + "]";
+ mes "Sounds easy huh? Well it's not! But don't worry....";
+ mes "If you stay true to the Rogue motto and use a lot of hide, and do a lot of running, you should be just fine.";
+
+ M_Menu:
+ next;
+ mes "[" + getarg(0) + "]";
+ mes "Ok, are you ready to go?";
+ next;
+ menu "As ready as I'll ever be.",-, "Actually I'm kinda scared...",M_End;
+
+ mes "[" + getarg(0) + "]";
+ mes "Good luck then.";
+ next;
+ set ROGUE_Q, 4;
+ killmonsterall "in_rogue.gat";
+ savepoint "in_rogue.gat", getarg(1), getarg(2);
+ warp "in_rogue.gat", 15, 105;
+ end;
+
+ M_End:
+ mes "[" + getarg(0) + "]";
+ mes ".....................";
+ next;
+ mes "[" + getarg(0) + "]";
+ mes "Well take your time then...... I guess.......";
+ close;
+
+L_Restart:
+ mes "[" + getarg(0) + "]";
+ mes "....... Looks like you got creamed.......";
+ emotion 4;
+ next;
+ mes "[" + getarg(0) + "]";
+ mes "If you're up for it, I'll send you back in. Failure has a way of teaching success.... yada yada yada....";
+ percentheal 100,100;
+ goto M_Menu;
+}
+
+//================================================
+// Monster Spawns
+//================================================
+in_rogue.gat,15,185,0 script rogue_mob1 139,8,0,{
+ monster "in_rogue.gat",14,188,"Zombie",1015,1;
+ monster "in_rogue.gat",15,188,"Zombie",1015,1;
+ monster "in_rogue.gat",16,188,"Zombie",1015,1;
+ monster "in_rogue.gat",14,189,"Zombie",1015,1;
+ monster "in_rogue.gat",15,189,"Zombie",1015,1;
+ monster "in_rogue.gat",16,189,"Zombie",1015,1;
+ end;
+}
+in_rogue.gat,15,245,0 script rogue_mob2 139,8,0,{
+ monster "in_rogue.gat",14,247,"Mummy",1041,1;
+ monster "in_rogue.gat",15,247,"Mummy",1041,1;
+ monster "in_rogue.gat",16,247,"Mummy",1041,1;
+ monster "in_rogue.gat",14,248,"Mummy",1041,1;
+ monster "in_rogue.gat",15,248,"Mummy",1041,1;
+ monster "in_rogue.gat",16,248,"Mummy",1041,1;
+ end;
+}
+in_rogue.gat,15,328,0 script rogue_mob3 139,8,0,{
+ monster "in_rogue.gat",14,331,"Zombie",1015,1;
+ monster "in_rogue.gat",15,331,"Zombie",1015,1;
+ monster "in_rogue.gat",16,331,"Zombie",1015,1;
+ monster "in_rogue.gat",14,332,"Zombie",1015,1;
+ monster "in_rogue.gat",15,332,"Zombie",1015,1;
+ monster "in_rogue.gat",16,332,"Zombie",1015,1;
+ end;
+}
+in_rogue.gat,35,342,0 script rogue_mob4 139,0,8,{
+ monster "in_rogue.gat",38,340,"Mummy",1041,1;
+ monster "in_rogue.gat",37,342,"Abyss Knight",1219,1;
+ monster "in_rogue.gat",39,342,"Ghoul",1036,1;
+ monster "in_rogue.gat",38,344,"Mummy",1041,1;
+ end;
+}
+in_rogue.gat,57,306,0 script rogue_mob5 139,4,0,{
+ monster "in_rogue.gat",59,301,"Khalitzburg",1132,1;
+ end;
+}
+in_rogue.gat,96,333,0 script rogue_mob6 139,0,4,{
+ monster "in_rogue.gat",92,325,"Khalitzburg",1132,1;
+ end;
+}
+in_rogue.gat,139,313,0 script rogue_mob7 139,4,0,{
+ monster "in_rogue.gat",139,309,"Abyss Knight",1219,1;
+ end;
+}
+in_rogue.gat,135,246,0 script rogue_mob8 139,0,4,{
+ monster "in_rogue.gat",139,245,"Zombie",1015,2;
+ monster "in_rogue.gat",139,246,"Zombie",1015,2;
+ monster "in_rogue.gat",139,247,"Zombie",1015,2;
+ end;
+}
+in_rogue.gat,62,302,0 script rogue_mob9 139,0,4,{
+ monster "in_rogue.gat",57,305,"Khalitzburg",1132,1;
+ end;
+}
+in_rogue.gat,199,218,0 script rogue_mob10 139,0,8,{
+ monster "in_rogue.gat",157,218,"Zombie",1015,10;
+ monster "in_rogue.gat",157,218,"Abyss Knight",1219,1;
+ monster "in_rogue.gat",157,218,"Ghoul",1036,1;
+ monster "in_rogue.gat",157,218,"Archer Skeleton",1016,1;
+ end;
+}
+in_rogue.gat,86,187,0 script rogue_mob11 139,0,8,{
+ monster "in_rogue.gat",88,186,"Mummy",1041,1;
+ monster "in_rogue.gat",88,187,"Mummy",1041,1;
+ monster "in_rogue.gat",88,188,"Mummy",1041,1;
+ end;
+}
+in_rogue.gat,225,187,0 script rogue_mob12 139,0,8,{
+ monster "in_rogue.gat",232,191,"Abyss Knight",1219,1;
+ monster "in_rogue.gat",233,190,"Abyss Knight",1219,1;
+ monster "in_rogue.gat",234,189,"Abyss Knight",1219,1;
+ end;
+}
+in_rogue.gat,252,320,0 script rogue_mob13 139,0,8,{
+ monster "in_rogue.gat",252,319,"Mummy",1041,1;
+ monster "in_rogue.gat",252,321,"Mummy",1041,1;
+ monster "in_rogue.gat",252,319,"Ghoul",1036,1;
+ monster "in_rogue.gat",252,321,"Ghoul",1036,1;
+ monster "in_rogue.gat",257,320,"Archer Skeleton",1016,1;
+ monster "in_rogue.gat",248,320,"Archer Skeleton",1016,1;
+ end;
+}
+
+//================================================
+// End Warp
+//================================================
+in_rogue.gat,370,320,0 script rogue04 45,1,1,{
+ set ROGUE_Q, 5;
+ killmonsterall "in_rogue.gat";
+ warp "in_rogue.gat",378,113;
+ end;
+}
+
+//================================================
+// Timer: Keeps monsters from overspawning
+//================================================
+- script RogueTest3 -1,{
+ end;
+
+OnMinute10:
+OnMinute20:
+OnMinute30:
+OnMinute40:
+OnMinute50:
+OnMinute60:
+ killmonsterall "in_rogue.gat";
+ end;
+}
+
+//==============================================================================
+// mapflag
+//==============================================================================
+in_rogue.gat mapflag nomemo
+in_rogue.gat mapflag noteleport
+in_rogue.gat mapflag nosave SavePoint
+in_rogue.gat mapflag nopenalty
+in_rogue.gat mapflag nobranch
+in_rogue.gat mapflag noexp
+in_rogue.gat mapflag noloot
diff --git a/npc/jobs/2-2/sage.txt b/npc/jobs/2-2/sage.txt new file mode 100644 index 000000000..44645f94c --- /dev/null +++ b/npc/jobs/2-2/sage.txt @@ -0,0 +1,2180 @@ +//===== eAthena Script =======================================
+//= Sage Job Quest
+//===== By: ==================================================
+//= jAthena (0.9) - I guess
+//= Unknown Translator (1.0)
+//= Darkchild (1.2)
+//===== Current Version: =====================================
+//= 1.7a
+//===== Compatible With: =====================================
+//= eAthena 1.0 +
+//===== Description: =========================================
+//= Sage job quest based off of official servers.
+//===== Additional Comments: =================================
+//= Script mostly based on translated jA script
+//= Written test questions/answers weren't translated 100% corectly
+//= So a lot of those are based upon mRO site and my own info
+//= IF you by excident have (or can get) screenshots of these questions
+//= Then PLEASE send them to Darkchild
+//= 1.3 Baby class Support added [Lupus] 1.5 Fixed possible EXP abuse [Lupus]
+//= 1.6 Added a func which prevent advanced classes passing
+//= 2nd Job Quests again. It also guides adv classes where to go. [Lupus]
+//= 1.7 Fixed tuition fee. Fixed some answers, names & typos, added missing labels [Lupus]
+//= 1.7a Moved JFunc back in the main file, fixed typos [Lupus]
+//============================================================
+
+
+//==================================
+//Sage Castle
+//==================================
+yuno_in02.gat,38,61,4 script Magic Academy Headmaster 743,{
+ callfunc "F_BlockHigh",26,"High Mage",40,"Professor","Keiron";
+ if(BaseJob == 16) goto L_Menu3_3;
+ if(BaseJob != 2) goto L_Menu2_1;
+ if(SAGE_Q == 11) goto L_Menu3_1;
+ if(SAGE_Q >= 3) goto L_Menu2_2;
+ mes "[Keiron]";
+ mes "All who appreciate the fine art";
+ mes "of magic are welcome here.";
+ mes "How can I help you?";
+ next;
+ menu "Change class to Sage",L_Menu1_1,"About the Sage class",-,"Just looking around",L_Menu1_2;
+ mes "[Keiron]";
+ mes "So you're interested in being a Sage?";
+ mes "Well, I can't just make you one straight away.";
+ next;
+ mes "[Keiron]";
+ mes "In order to become a Sage, you'll need to file an application for entry into the Shubaichul Magic Academy and take the placement test.";
+ next;
+ mes "[Keiron]";
+ mes "Once you're placed, you'll need to complete coursework and finally write and defend a thesis.";
+ next;
+ mes "[Keiron]";
+ mes "If you successfully complete the requirements, you'll be granted a Sage license.";
+ next;
+ mes "[Keiron]";
+ mes "If you wish to apply, go see Mathias in the Shubaichul Magic Academy.";
+ mes "Tell him I sent you.";
+ close;
+L_Menu1_1:
+ mes "[Keiron]";
+ mes "A Sage?";
+ mes "Well...";
+ mes "In order to change you way of living, you have to change your way of thinking.";
+ next;
+ mes "[Keiron]";
+ mes "Sages actively contribute knowledge to the kingdom through rigorous research.";
+ mes "They also help society through its worst problems.";
+ mes "Just because you dress as a Sage doesn't mean you're a Sage.";
+ next;
+ mes "[Keiron]";
+ mes "To become a Sage, please apply for entry into the Shubaichul Magic Academy.";
+ mes "The admissions officer will explain the educational requirements.";
+ close;
+L_Menu1_2:
+ mes "[Keiron]";
+ mes "Excellent. If you have some free time, why not peruse a a volume from our library?";
+ mes "Our library is truly a bastion of knowledge.";
+ next;
+ mes "[Keiron]";
+ mes "Of course, there is much that can't be learned from reading books, but it's a good start.";
+ close;
+L_Menu2_1:
+ mes "[Keiron]";
+ mes "We Sages do a lot of research about the world on our own,";
+ mes "but to maximize our knowledge,";
+ mes "we regularly form interdisciplinary research teams.";
+ next;
+ mes "[Keiron]";
+ mes "You should talk to our Sages and share any research you may have been doing within your own profession.";
+ close;
+L_Menu2_2:
+ mes "[Keiron]";
+ mes "The road to becoming a Sage isn't easy.";
+ mes "You need to have a strong dedication to mastering magic.";
+ next;
+ mes "[Keiron]";
+ mes "You need to keep plugging away at that thesis.";
+ mes "Good luck!";
+ close;
+L_Menu3_1:
+ if(countitem(1550) >= 1) goto L_Menu3_2;
+ mes "[Keiron]";
+ mes "Where's your thesis?";
+ mes "I'm eager to evaulate it.";
+ next;
+ mes "[Keiron]";
+ mes "Did you forget it?";
+ mes "In any case, please bring it post-haste.";
+ close;
+L_Menu3_2:
+ mes "[Keiron]";
+ mes "It looks like you have a thesis to present. Let's have a look...";
+ next;
+ mes "[Keiron]";
+ mes "Hmmm...";
+ next;
+ mes "[Keiron]";
+ mes "Yes....";
+ next;
+ mes "[Keiron]";
+ mes "Interesting...";
+ next;
+ mes "[Keiron]";
+ mes "It's not stylistically";
+ mes "cohesive, but your zeal for research is amply proven by your thesis. I approve.";
+ next;
+ if(SkillPoint == 0) goto LCHANGE;
+ mes "[Keiron]";
+ mes "Well you are all set for the jobchange except for 1 thing!";
+ mes "You have unused Skill Points!!!";
+ mes "Please use those first!";
+ close;
+
+ LCHANGE:
+ callfunc "Job_Change",Job_Sage;
+ callfunc "F_ClearJobVar";
+ mes "[Keiron]";
+ mes "Congratulations!";
+ mes "You're a Sage now.";
+ mes "Don't let that passion for research ever be dampened.";
+ next;
+ mes "[Keiron]";
+ mes "Keep your thesis around, since it may be useful in a publish-or-perish environment later on.";
+ next;
+ mes "[Keiron]";
+ mes "Some day, you'll be a bastion of knowledge all by yourself!";
+ close;
+L_Menu3_3:
+ mes "[Keiron]";
+ mes "Hmmm? What's up?";
+ mes "Just because you're a Sage doesn't mean you should quit your studies.";
+ next;
+ mes "[Keiron]";
+ mes "In order to maintain our role as the kingdom's gatherers and dissemenators of knowledge, we can never miss an opportunity to gather data.";
+ close;
+}
+
+//===============================
+//Biotech Lab
+//===============================
+yuno_in03.gat,244,31,3 script Physics Professor 120,{
+ if(BaseJob == 16) goto L_Menu3_2;
+ if(BaseJob != 2) goto L_Menu1_1;
+ if(SAGE_Q == 11) goto L_Menu3_1;
+ if(SAGE_Q2 == 8) goto L_Menu2_1;
+ if(SAGE_Q2 == 9) goto L_Menu2_3;
+ if(SAGE_Q2 == 10) goto L_Menu2_5;
+ if(SAGE_Q2 == 11) goto L_ThesisStart1;
+ if(SAGE_Q == 9) goto L_Menu1_2;
+ mes "[Ebeshi]";
+ mes "What?";
+ next;
+ mes "[Ebeshi]";
+ mes "Did you come to study under my guidance?";
+ next;
+ mes "[Ebeshi]";
+ mes "Well, you need to enroll first.";
+ mes "Heheheheh...";
+ close;
+L_Menu1_1:
+ mes "[Ebeshi]";
+ mes "Eh???????????????????????????????";
+ next;
+ mes "[Ebeshi]";
+ mes "I don't think there's anything someone like you can learn from me.";
+ next;
+ mes "[Ebeshi]";
+ mes "Are you disappointed?";
+ mes "Hehehehe....";
+ close;
+L_Menu1_2:
+ set SAGE_Q2,8;
+ mes "[Ebeshi]";
+ mes "Well, I'm glad to meet another fine student such as yourself.";
+ next;
+ mes "[Ebeshi]";
+ mes "Aren't you excited that you're going to study under me?!";
+ mes "Hehehehe....";
+ next;
+ mes "[Ebeshi]";
+ mes "I hate to be intrusive, but could you get something for me before I start my class?";
+ next;
+ mes "[Ebeshi]";
+ mes "I need ^3051FD30x Stone^000000 as part of the class materials.";
+ mes "Can you get that?";
+ next;
+ mes "[Ebeshi]";
+ mes "If you really want to get stones quick,";
+ mes "you should look up a friendly thief to assist you! Thanks for helping out.";
+ close;
+L_Menu2_1:
+ if(countitem(7049) >= 30) goto L_Menu2_2;
+ mes "[Ebeshi]";
+ mes "Hey, what are you up to?";
+ mes "Are you trying to slack off?";
+ mes "Come on, set your eyes on the goal.";
+ next;
+ mes "[Ebeshi]";
+ mes "I need ^3051FD30x Stone^000000 to proceed.";
+ mes "With all the stones lying around,";
+ mes "shouldn't they be easy to find?";
+ close;
+ L_Menu2_2:
+ mes "[Ebeshi]";
+ mes "Awesome! You've got all the stones I need.";
+ mes "Now, watch this!";
+ next;
+ mes "[Ebeshi]";
+ mes "Abracadabra!!";
+ next;
+ mes "[Ebeshi]";
+ mes "Abracadabra!!";
+ next;
+ mes "[Ebeshi]";
+ mes "Abracadabra!!";
+ next;
+ delitem 7049,30;
+ set SAGE_Q2,9;
+ mes "[Ebeshi]";
+ mes "You see that?";
+ mes "I created three elemental stones!";
+ next;
+ mes "[Ebeshi]";
+ mes "Pretty cool, don't you think?";
+ mes "Have them for yourself!";
+ next;
+ getitem 991,1;
+ getitem 993,1;
+ getitem 992,1;
+ mes "[Ebeshi]";
+ mes "Now, for your next lesson, you need to synthesize some different kinds of arrows with those stones.";
+ next;
+ mes "[Ebeshi]";
+ mes "Specifically...";
+ mes "^3051FD50x Crystal Arrow^000000";
+ mes "^3051FD50x Stone Arrow^000000";
+ mes "^3051FD50x Wind Arrow^000000";
+ next;
+ mes "[Ebeshi]";
+ mes "An archer friend can help you make the arrows.";
+ mes "Give it a try!";
+ close;
+ L_Menu2_3:
+ if((countitem(1754) >= 50) && (countitem(1756) >= 50) && (countitem(1755) >= 50)) goto L_Menu2_4;
+ mes "[Ebeshi]";
+ mes "Hmmm?";
+ mes "What did you do with those stones I gave you?";
+ mes "You didn't sell them, I hope...";
+ next;
+ mes "[Ebeshi]";
+ mes "You need to use them to make";
+ mes "^3051FD50x Crystal Arrow^000000";
+ mes "^3051FD50x Stone Arrow^000000";
+ mes "^3051FD50x Wind Arrow^000000";
+ mes "An archer friend can help you make the arrows.";
+ close;
+ L_Menu2_4:
+ mes "[Ebeshi]";
+ mes "You made the arrows! Good job.";
+ mes "Now, to continue with the lesson...";
+ next;
+ mes "[Ebeshi]";
+ mes "This lesson covers the Elemental Affinity chapter in your textbook.";
+ next;
+ mes "[Ebeshi]";
+ mes "The first affinity is really easy.";
+ mes "Water magic is very effective against fire.";
+ mes "It's easy to remember.";
+ mes "All you need to remember is water being splashed on fire.";
+ next;
+ mes "[Ebeshi]";
+ mes "Wind magic will decimate water-based monsters.";
+ mes "Observe what happens when a lake is struck by lightning.";
+ next;
+ mes "[Ebeshi]";
+ mes "Earth magic will crush wind-based monsters easily.";
+ mes "Don't you build a house on a strong foundation to keep the wind away?";
+ next;
+ mes "[Ebeshi]";
+ mes "Fire magic mercilessly scorches the earth.";
+ mes "Won't a tree burn if a fire breaks out?";
+ mes "Same with an earth-based monster.";
+ next;
+ mes "[Ebeshi]";
+ mes "Do you understand?";
+ mes "Here's some homework for next time...";
+ next;
+ delitem 1754,50;
+ delitem 1756,50;
+ delitem 1755,50;
+ set SAGE_Q2,10;
+ mes "[Ebeshi]";
+ mes "Next time you come, bring ^3051FD1x Holy Water^000000.";
+ mes "We'll need it for the lesson.";
+ mes "It will be easy to acquire if you have contacts in the church.";
+ close;
+ L_Menu2_5:
+ if(countitem(523) >= 1) goto L_Menu2_6;
+ mes "[Ebeshi]";
+ mes "Ooops!";
+ mes "Did you forget about the item I asked you to bring?";
+ next;
+ mes "[Ebeshi]";
+ mes "I need ^3051FD1x Holy Water^000000 for the lesson.";
+ mes "Ask an Acolyte to help you make it.";
+ mes "Hehehehe...";
+ close;
+ L_Menu2_6:
+ mes "[Ebeshi]";
+ mes "Alright, you have the Holy Water!";
+ mes "Let's continue the lesson!";
+ next;
+ mes "[Ebeshi]";
+ mes "Please take good notes about this part.";
+ mes "It will be on the test.";
+ next;
+ mes "[Ebeshi]";
+ mes "Water magic sucks against wind!";
+ mes "Would a lightning bolt care if it was frozen?";
+ mes "Heheheheh....";
+ next;
+ mes "[Ebeshi]";
+ mes "Wind magic is totally useless against the earth.";
+ mes "Will a tree suffer permanent damage if it's blown about?";
+ next;
+ mes "[Ebeshi]";
+ mes "Earth magic is ineffective against fire.";
+ mes "If you put some leaves on a fire, will the fire go out?";
+ mes "No, just the opposite will happen.";
+ next;
+ mes "[Ebeshi]";
+ mes "Fire won't do much against water.";
+ mes "If you heat water, doesn't it just become more dangerous?";
+ next;
+ mes "[Ebeshi]";
+ mes "That was a pretty informative lecture!";
+ mes "You think so too, right?";
+ next;
+ delitem 523,1;
+ set SAGE_Q2,11;
+ mes "[Ebeshi]";
+ mes "Now, you have enough knowledge to prepare a defensible thesis.";
+ mes "Hehehehehe!";
+ next;
+ mes "[Ebeshi]";
+ mes "To put the thesis together, you'll need:";
+ mes "^3051FD1x Feather of Birds^000000 for your writing instrument.";
+ mes "^3051FD1x Animal Skin^000000 for the pages.";
+ mes "^3051FD1x Trunk^000000 to bind the pages.";
+ mes "^3051FD1x Squid Ink^000000 for your ink.";
+ mes "^3051FD1x Empty Bottle^000000 to store your ink.";
+ next;
+ mes "[Ebeshi]";
+ mes "Come and see me once you've gotten all of these items together.";
+ close;
+ L_ThesisStart1:
+ if((countitem(916) >= 1) && (countitem(919) >= 1) && (countitem(1019) >= 1) && (countitem(1024) >= 1) && (countitem(713) >= 1)) goto L_ThesisStart2;
+ mes "[Ebeshi]";
+ mes "Hmmm?";
+ mes "You can't forget important things like this!";
+ next;
+ mes "[Ebeshi]";
+ mes "You need these items to start your thesis:";
+ mes "^3051FD1x Feather of Birds^000000 for your writing instrument.";
+ mes "^3051FD1x Animal Skin^000000 for the pages.";
+ mes "^3051FD1x Trunk^000000 to bind the pages.";
+ mes "^3051FD1x Squid Ink^000000 for your ink.";
+ mes "^3051FD1x Empty Bottle^000000 to store your ink.";
+ next;
+ mes "[Ebeshi]";
+ mes "Do you have some friends that might be able to help you gather the materials?";
+ mes "That will make it a simple task!";
+ close;
+ L_ThesisStart2:
+ delitem 916,1;
+ delitem 919,1;
+ delitem 1019,1;
+ delitem 1024,1;
+ delitem 713,1;
+ mes "[Ebeshi]";
+ mes "Alright...";
+ mes "You need to write this yourself.";
+ mes "I'm simply your research advisor!";
+ mes "Hehehehe...";
+ next;
+ mes "......";
+ next;
+ mes "......";
+ next;
+ mes "......";
+ next;
+ mes "Elemental magic is divided into four types...";
+ menu "...called Fire, Wind, Water, and Earth",L_ThesisMenu1_1,"...named Fire, Wind, Water, and Earth",L_ThesisMenu1_2,"...that oppose each other: Fire, Wind, Water, and Earth",L_ThesisMenu1_3;
+ L_ThesisMenu1_1:
+ mes "...called Fire, Wind, Water, and Earth";
+ goto L_Thesis2;
+ L_ThesisMenu1_2:
+ mes "...named Fire, Wind, Water, and Earth";
+ goto L_Thesis2;
+ L_ThesisMenu1_3:
+ mes "...that oppose each other: Fire, Wind, Water, and Earth";
+ goto L_Thesis2;
+ L_Thesis2:
+ mes "Each attribute has certain properties.";
+ menu "Wind conquers water...",L_ThesisMenu2_1,"Water douses fire...",L_ThesisMenu2_2,"Fire scorches Earth...",L_ThesisMenu2_3;
+ L_ThesisMenu2_1:
+ mes "Wind conquers Water and Earth attacks Wind";
+ goto L_Thesis3;
+ L_ThesisMenu2_2:
+ mes "Water douses fire, while Wind zaps Water";
+ goto L_Thesis3;
+ L_ThesisMenu2_3:
+ mes "Fire scorches Earth, and Water douses Fire.";
+ goto L_Thesis3;
+ L_Thesis3:
+ menu "But weaknesses exist, too",L_ThesisMenu3_1,"You can customize your weapon element, also",L_ThesisMenu3_2,"Elemental affinity varies by monster type, also",L_ThesisMenu3_3;
+ L_ThesisMenu3_1:
+ mes "But weaknesses exist, too";
+ goto L_Thesis4;
+ L_ThesisMenu3_2:
+ mes "You can customize your weapon element, also";
+ goto L_Thesis4;
+ L_ThesisMenu3_3:
+ mes "Elemental affinity varies by monster type, also";
+ goto L_Thesis4;
+ L_Thesis4:
+ menu "You need to be circumspect when facing monsters...",L_ThesisMenu4_1,"So, you should customize your weapon to the situation",L_ThesisMenu4_2,"Red Potions have a delicious strawberry flavor",L_ThesisMenu4_3;
+ L_ThesisMenu4_1:
+ mes "You need to be circumspect when facing monster with an unfamiliar affinity.";
+ goto L_Thesis5;
+ L_ThesisMenu4_2:
+ mes "You should customize your weapon to the situation.";
+ goto L_Thesis5;
+ L_ThesisMenu4_3:
+ mes "Red Potions have a delicious strawberry flavor.";
+ goto L_Thesis5;
+ L_Thesis5:
+ next;
+ menu "Eimi of Prontera is hot",L_ThesisMenu5_1,"I wonder how Red Potions are made",L_ThesisMenu5_2,"The complexity of magic exceeds man's capacity to learn",L_ThesisMenu5_3;
+ L_ThesisMenu5_1:
+ mes "Eimi of Prontera is hot.";
+ goto L_Thesis6;
+ L_ThesisMenu5_2:
+ mes "I wonder how Red Potions are made.";
+ goto L_Thesis6;
+ L_ThesisMenu5_3:
+ mes "The complexity of magic exceeds man's capacity to learn.";
+ goto L_Thesis6;
+ L_Thesis6:
+ menu "The women in Morok are hot, too",L_ThesisMenu6_1,"Maybe it's a secret recipe",L_ThesisMenu6_2,"It's dangerous to depend on magic too much...",L_ThesisMenu6_3;
+ L_ThesisMenu6_1:
+ mes "The women in Morok are hot, too.";
+ goto L_Thesis7;
+ L_ThesisMenu6_2:
+ mes "Maybe it's a secret recipe.";
+ goto L_Thesis7;
+ L_ThesisMenu6_3:
+ mes "It's dangerous to depend on magic too much...";
+ goto L_Thesis7;
+ L_Thesis7:
+ menu "I wish I had a Bunny Band",L_ThesisMenu7_1,"That taste of a White potion...",L_ThesisMenu7_2,"...if you want to stay safe. power...",L_ThesisMenu7_3;
+ L_ThesisMenu7_1:
+ mes "I wish I had a Bunny Band.";
+ goto L_Thesis8;
+ L_ThesisMenu7_2:
+ mes "The taste of a White Potion...";
+ goto L_Thesis8;
+ L_ThesisMenu7_3:
+ mes "...if you want to stay safe. power...";
+ goto L_Thesis8;
+ L_Thesis8:
+ menu "That would make me happy",L_ThesisMenu8_1,"...is difficult to imagine",L_ThesisMenu8_2,"In the interest of a safe battle...",L_ThesisMenu8_3;
+ L_ThesisMenu8_1:
+ mes "That would make me happy.";
+ goto L_Thesis9;
+ L_ThesisMenu8_2:
+ mes "...is difficult to imagine";
+ goto L_Thesis9;
+ L_ThesisMenu8_3:
+ mes "In the interest of a safe battle...";
+ goto L_Thesis9;
+ L_Thesis9:
+ menu "Bunny Bands make great Acolyte accessories",L_ThesisMenu9_1,"It makes me wonder if...",L_ThesisMenu9_2,"...you should bring along friends",L_ThesisMenu9_3;
+ L_ThesisMenu9_1:
+ mes "Bunny Bands make great Acolyte accessories.";
+ goto L_Thesis10;
+ L_ThesisMenu9_2:
+ mes "It makes me wonder if...";
+ goto L_Thesis10;
+ L_ThesisMenu9_3:
+ mes "...you should bring along friends.";
+ goto L_Thesis10;
+ L_Thesis10:
+ menu "I wonder if a Knight could wear one, too",L_ThesisMenu10_1,"...people might drink them when they're not hurt",L_ThesisMenu10_2,"It's the responsible thing to do",L_ThesisMenu10_3;
+ L_ThesisMenu10_1:
+ mes "I wonder if a Knight could wear one, too.";
+ next;
+ goto L_ThesisEnd;
+ L_ThesisMenu10_2:
+ mes "...people might drink them when they're not hurt";
+ next;
+ goto L_ThesisEnd;
+ L_ThesisMenu10_3:
+ mes "It's the responsible thing to do.";
+ next;
+ goto L_ThesisEnd;
+ L_ThesisEnd:
+ mes "......";
+ next;
+ mes "......";
+ next;
+ mes "......";
+ next;
+ set SAGE_Q,11;
+ getitem 1550,1;
+ mes "[Ebeshi]";
+ mes "Alright!";
+ mes "You've finished! It looks pretty good!";
+ next;
+ mes "[Ebeshi]";
+ mes "You should take that to the Headmaster!";
+ mes "He'll decide whether you graduate or not.";
+ mes "Hehehehehe....";
+ close;
+L_Menu3_1:
+ mes "[Ebeshi]";
+ mes "What's up? Did you forget something?!";
+ next;
+ mes "[Ebeshi]";
+ mes "You should see the Headmaster and present your thesis so you can graduate!";
+ close;
+L_Menu3_2:
+ mes "[Ebeshi]";
+ mes "Good afternoon!";
+ mes "It's good to meet other Sages and exchange information.";
+ mes "Heheheheh!!";
+ next;
+ mes "[Ebeshi]";
+ mes "Even though company is good sometimes, I need to continue my magical research!";
+ next;
+ mes "[Ebeshi]";
+ mes "Do you want to continue your study here?";
+ mes "Please feel free to talk to the other professors and read the literature here.";
+ mes "Hehehehe!";
+ close;
+}
+
+//==================================
+//Monster Museum
+//==================================
+
+yuno_in03.gat,32,102,0 script Biology Professor 755,{
+ if(BaseJob == 16) goto L_Menu5_4;
+ if(BaseJob != 2) goto L_Menu1_1;
+ if(SAGE_Q == 11) goto L_Menu5_3;
+ if((SAGE_Q2 >= 1) && (SAGE_Q2 <= 3)) goto L_Menu3_1;
+ if((SAGE_Q2 >= 4) && (SAGE_Q2 <= 6)) goto L_Menu4_1;
+ if(SAGE_Q2 == 7) goto L_Menu5_1;
+ if(SAGE_Q == 8) goto L_Menu2_1;
+ mes "[Lucias]";
+ mes "I have a headache...";
+ mes "I've got too many things going on at once!";
+ next;
+ mes "[Lucias]";
+ mes "Of course, I'll teach people about biology even with a headache!";
+ close;
+L_Menu1_1:
+ mes "[Lucias]";
+ mes "Hmmm? Are you just poking around?";
+ next;
+ mes "[Lucias]";
+ mes "That's fine, but please don't touch anything.";
+ mes "We keep dangerous bioagents in here!";
+ next;
+ mes "[Lucias]";
+ mes "If you have information about rare monsters, we'll pay you handsomely.";
+ close;
+L_Menu2_1:
+ mes "[Lucias]";
+ mes "Oh, you've taken the placement test?";
+ mes "I'm Lucias, a preeminent researcher in the biological sciences.";
+ next;
+ mes "[Lucias]";
+ mes "What's your name, young one?";
+ next;
+ menu "I'm " + strcharinfo(0) + "!",-;
+ mes "[Lucias]";
+ mes "That's a nice name.";
+ mes "Now, let me explain about our research objectives.";
+ next;
+ mes "[Lucias]";
+ mes "My area of expertise is monsters.";
+ mes "I'm sure that you've encountered and defeated many monsters by now.";
+ mes "Am I right?";
+ next;
+ menu "You're quite right",-,"Well, not really...",L_Menu2_2;
+ mes "[Lucias]";
+ mes "Really?";
+ mes "I hope your background knowledge is diverse.";
+ mes "My class isn't a cakewalk by any means.";
+ next;
+ goto L_Menu2_3;
+ L_Menu2_2:
+//==================================
+//If you respond negatively
+ mes "[Lucias]";
+ mes "You might be at a disadvantage.";
+ mes "My coursework assumes a lot of background knowledge.";
+ mes "My class wasn't designed to be a cakewalk...";
+ next;
+//==================================
+L_Menu2_3:
+ mes "[Lucias]";
+ mes "So, shall we get started?";
+ mes "You'll learn a lot in this class if you're vigilant.";
+ next;
+ set @sagerand,0;
+ set @sagerand,rand(3);
+ mes "[Lucias]";
+ mes "So, first, you need to collect ";
+ if(@sagerand == 1) goto L_Menu2_4;
+ if(@sagerand == 2) goto L_Menu2_5;
+ set SAGE_Q2,1;
+ mes "^3051FD5x Tendons^000000";
+ mes "^3051FD5x Nippers^000000";
+ mes "^3051FD5x Sharp Scales^000000";
+ next;
+ goto L_Menu2_6;
+ L_Menu2_4:
+ set SAGE_Q2,2;
+//==================================
+//mes–¢‰ñŽû
+ mes "^3051FD5x Clam Flesh^000000";
+ mes "^3051FD5x Nippers^000000";
+ mes "^3051FD5x Heart of Mermaid^000000";
+ next;
+ goto L_Menu2_6;
+ L_Menu2_5:
+ set SAGE_Q2,3;
+ mes "^3051FD5x Single Cells^000000";
+ mes "^3051FD5x Tentacles^000000";
+ mes "^3051FD5x Fish Tails^000000";
+//==================================
+ next;
+ L_Menu2_6:
+ mes "[Lucias]";
+ mes "We'll continue once you've gathered those.";
+ close;
+L_Menu3_1:
+ if((countitem(1050) >= 5) && (countitem(960) >= 5) && (countitem(963) >= 5) && (SAGE_Q2 == 1)) goto L_Menu3_4;
+ if((countitem(966) >= 5) && (countitem(960) >= 5) && (countitem(950) >= 5) && (SAGE_Q2 == 2)) goto L_Menu3_4;
+ if((countitem(1052) >= 5) && (countitem(962) >= 5) && (countitem(1023) >= 5) && (SAGE_Q2 == 3)) goto L_Menu3_4;
+ mes "[Lucias]";
+ mes "You don't have the necessary items.";
+ mes "Let me repeat what you need:";
+ next;
+ mes "[Lucias]";
+ if(SAGE_Q2 == 2) goto L_Menu3_2;
+ if(SAGE_Q2 == 3) goto L_Menu3_3;
+ mes "^3051FD5x Tendon^000000";
+ mes "^3051FD5x Nipper^000000";
+ mes "^3051FD5x Sharp Scale^000000";
+ close;
+ L_Menu3_2:
+ mes "^3051FD5x Clam Flesh^000000";
+ mes "^3051FD5x Nipper^000000";
+ mes "^3051FD5x Heart of Mermaid^000000";
+ close;
+ L_Menu3_3:
+ mes "^3051FD5x Single Cell^000000";
+ mes "^3051FD5x Tentacle^000000";
+ mes "^3051FD5x Fish Tail^000000";
+ close;
+L_Menu3_4:
+ mes "[Lucias]";
+ mes "Well, you have the items, but I can't be sure if you bought them or collected them yourself.";
+ next;
+ mes "[Lucias]";
+ mes "There is a similarity in the characteristics of the monsters that drop those items.";
+ mes "Do you know what it is?";
+ next;
+ menu "Water element affinity",L_Menu3_5,"They're fish and shells",L_Menu3_6,"They were quite active",-,"They're monsters",-;
+//==================================
+ mes "[Lucias]";
+ mes "...I'm disappointed in you.";
+ mes "The correct answer is that all of the monsters have water element affinity.";
+ mes "Monsters that live in an aquatic environment have evolved bodies adapted to that environment.";
+//==================================
+ next;
+ goto L_Menu3_6;
+ L_Menu3_5:
+ mes "[Lucias]";
+ mes "Right!";
+ mes "Most aquatic monsters have water element affinity because they're adapted to their environment.";
+ mes "Fish and shells evolved in a logical way.";
+ next;
+ L_Menu3_6:
+ mes "[Lucias]";
+ mes "Not every fish and shell has water element affinity, but you can count on it as a general rule.";
+ mes "Now, which type of magic do you think would be most effective against them?";
+ next;
+ menu "Lightning Bolt",L_Menu3_7,"Firebolt",-,"Thunderstorm",L_Menu3_8,"Frost Nova",-;
+//==================================
+//mes–¢‰ñŽû
+ mes "[Lucias]";
+ mes "That's not correct.";
+ mes "You need to use magic like Lightning Bolt or Thunderstorm.";
+ mes "Check the elemental affinity matrix again.";
+ next;
+//==================================
+ goto L_Menu3_9;
+ L_Menu3_7:
+ mes "[Lucias]";
+ mes "Great! That's right!";
+ mes "Using Lightning Bolt is an easy way to victory.";
+ next;
+ mes "[Lucias]";
+ mes "You need to be careful of monsters like the Penomena and Aster because their attribute is different.";
+ next;
+ goto L_Menu3_9;
+ L_Menu3_8:
+ mes "[Lucias]";
+ mes "Great! That's right!";
+ mes "Using Thunderstorm is an easy way to victory.";
+ next;
+ mes "[Lucias]";
+ mes "You need to be careful of monsters like the Penomena and Aster because their attribute is different.";
+ next;
+ L_Menu3_9:
+ mes "[Lucias]";
+ mes "Next, let's turn our attention to insectoid monsters.";
+ next;
+ set @sagerand,rand(3);
+ mes "[Lucias]";
+ mes "Next, you need to collect ";
+ if(@sagerand == 1) goto L_Menu3_10;
+ if(@sagerand == 2) goto L_Menu3_11;
+ set SAGE_Q2,4;
+ mes "^3051FD5x Cobweb^000000";
+ mes "^3051FD5x Shell^000000";
+ mes "^3051FD5x Insect Feeler^000000";
+ next;
+ goto L_Menu2_6;
+ L_Menu3_10:
+ set SAGE_Q2,5;
+//==================================
+//mes–¢‰ñŽû
+ mes "^3051FD5x Moth Dust^000000";
+ mes "^3051FD5x Snail's Shell^000000";
+ mes "^3051FD5x Horn^000000";
+ next;
+ goto L_Menu2_6;
+ L_Menu3_11:
+ set SAGE_Q2,6;
+ mes "^3051FD5x Mantis Leg^000000";
+ mes "^3051FD5x Worm Peeling^000000";
+ mes "^3051FD5x Rainbow Shell^000000";
+//==================================
+ next;
+ goto L_Menu2_6;
+L_Menu4_1:
+ if((countitem(1025) >= 5) && (countitem(935) >= 5) && (countitem(928) >= 5) && (SAGE_Q2 == 4)) goto L_Menu4_4;
+ if((countitem(1057) >= 5) && (countitem(946) >= 5) && (countitem(947) >= 5) && (SAGE_Q2 == 5)) goto L_Menu4_4;
+ if((countitem(1031) >= 5) && (countitem(955) >= 5) && (countitem(1013) >= 5) && (SAGE_Q2 == 6)) goto L_Menu4_4;
+ mes "[Lucias]";
+ mes "You forgot what you're supposed to gather?";
+ mes "Listen carefully this time! You need to gather:";
+ next;
+ mes "[Lucias]";
+ if(SAGE_Q2 == 5) goto L_Menu4_2;
+ if(SAGE_Q2 == 6) goto L_Menu4_3;
+ mes "^3051FD5x Cobweb^000000";
+ mes "^3051FD5x Shell^000000";
+ mes "^3051FD5x Insect Feeler^000000";
+ close;
+ L_Menu4_2:
+ mes "^3051FD5x Moth Dust^000000";
+ mes "^3051FD5x Snail's Shell^000000";
+ mes "^3051FD5x Horn^000000";
+ close;
+ L_Menu4_3:
+ mes "^3051FD5x Mantis Leg^000000";
+ mes "^3051FD5x Worm Peeling^000000";
+ mes "^3051FD5x Rainbow Shell^000000";
+ close;
+L_Menu4_4:
+ set SAGE_Q2,7;
+ mes "[Lucias]";
+ mes "Excellent. You've done well.";
+ mes "I hope you were also dilligent in observing your surroundings when you collected the items.";
+ next;
+ mes "[Lucias]";
+ mes "With insects, you'll need to carefully consider which magic to use, since insects have affinity with a variety of elements.";
+ next;
+ mes "[Lucias]";
+ mes "You should also be aware that Thief hiding and Assassin cloaking aren't effective against some insects.";
+ next;
+ mes "[Lucias]";
+ mes "Insects can also act in groups.";
+ mes "Often the insect bosses will have considerable numbers of subordinates.";
+ next;
+ mes "[Lucias]";
+ mes "Ant Lord Maya...";
+ mes "Queen Bee Mistress...";
+ mes "Goblin Chief Goldfinger...";
+ next;
+ mes "[Lucias]";
+ mes "If you face a boss monster alone, you had best prepare to die.";
+ mes "You ought to take a group of friends to face these creatures down.";
+ next;
+ mes "[Lucias]";
+ mes "Well, you've studied quite a bit.";
+ mes "Now you need to write a thesis.";
+ mes "You need some materials before you can begin writing it, however.";
+ mes "They are:";
+ next;
+ mes "[Lucias]";
+ mes "^3051FD1x Feather of Birds^000000 for your writing instrument.";
+ mes "^3051FD1x Animal Skin^000000 for the pages.";
+ mes "^3051FD1x Trunk^000000 to bind the pages.";
+ mes "^3051FD1x Squid Ink^000000 for your ink.";
+ mes "^3051FD1x Empty Bottle^000000 to store your ink.";
+ next;
+ mes "[Lucias]";
+ mes "We can get started when you return.";
+ close;
+L_Menu5_1:
+ if((countitem(916) >= 1) && (countitem(919) >= 1) && (countitem(1019) >= 1) && (countitem(1024) >= 1) && (countitem(713) >= 1) && (SAGE_Q2 == 7)) goto L_Menu5_2;
+ mes "[Lucias]";
+ mes "You need to gather those items first.";
+ mes "They are:";
+ next;
+ mes "[Lucias]";
+ mes "^3051FD1x Feather of Birds^000000 for your writing instrument.";
+ mes "^3051FD1x Animal Skin^000000 for the pages.";
+ mes "^3051FD1x Trunk^000000 to bind the pages.";
+ mes "^3051FD1x Squid Ink^000000 for your ink.";
+ mes "^3051FD1x Empty Bottle^000000 to store your ink.";
+ next;
+ mes "[Lucias]";
+ mes "You've done great so far.";
+ mes "Just a little more and you can graduate.";
+ close;
+L_Menu5_2:
+ delitem 916,1;
+ delitem 919,1;
+ delitem 1019,1;
+ delitem 1024,1;
+ delitem 713,1;
+ mes "[Lucias]";
+ mes "Looks like you have everything.";
+ next;
+ mes "[Lucias]";
+ mes "Now, you need to write this yourself.";
+ mes "I'm only taking an advisory role.";
+ next;
+ mes "[Lucias]";
+ mes "Are you ready to begin?";
+ mes "Let's see if you've acquired enough knowledge to write a coherent thesis.";
+ next;
+ mes "......";
+ next;
+ mes "......";
+ next;
+ mes "......";
+ next;
+ menu "Monsters come in different types",-;
+ mes "Monsters come in different types.";
+ menu "They have different elemental affinities",-;
+ mes "They have different elemental affinities.";
+ menu "If you know the monster's element beforehand...",-;
+ mes "If you know the monster's element beforehand...";
+ menu "...you can optimize your battle experience",-;
+ mes "...you can optimize your battle experience";
+ menu "You should especially be careful of...",-;
+ mes "You should especially be careful of...";
+ menu "...monsters with Holy and Darkness affinity",-;
+ mes "...monsters with Holy and Darkness affinity";
+ next;
+ mes "......";
+ next;
+ mes "......";
+ next;
+ mes "......";
+ next;
+ set SAGE_Q,11;
+ getitem 1550,1;
+ mes "[Lucias]";
+ mes "This is pretty good!";
+ mes "I'm proud of you!";
+ next;
+ mes "[Lucias]";
+ mes "Show this to the Headmaster and you'll be sure to graduate.";
+ mes "Good luck.";
+ close;
+L_Menu5_3:
+ mes "[Lucias]";
+ mes "Hmmm? What's the matter?";
+ mes "You need to show your thesis to the Headmaster.";
+ close;
+L_Menu5_4:
+ mes "[Lucias]";
+ mes "Are you confused about something?";
+ mes "I'm pretty busy, so you need to make an appointment a week in advance.";
+ next;
+ mes "[Lucias]";
+ mes "Hahaha...Once you've been a Sage for awhile, you'll be saying the same thing.";
+ next;
+ mes "[Lucias]";
+ mes "Also, if you have some spare time,";
+ mes "you should head over to the dungeon and lie down on the floor.";
+ mes "Look up and study the ceiling.";
+ mes "You might learn something.";
+ close;
+}
+
+//=================================
+//Academy Interior
+//=================================
+
+yuno_in03.gat,154,35,4 script Academy Staff 742,{
+ callfunc "F_BlockHigh",26,"High Mage",40,"Professor","Mathias";
+
+ if(BaseJob == 16) goto L_Menu6_4;
+ if(BaseJob != 2) goto L_Menu1_1;
+ if(SAGE_Q == 11) goto L_Menu6_3;
+ if(SAGE_Q >= 4) goto L_Menu6_2;
+ if(SAGE_Q == 3) goto L_Menu6_1;
+ if(SAGE_Q == 2) goto L_Menu5_1;
+ mes "[Mathias]";
+ mes "Hello.";
+ mes "This is the Shubaichul Magic Academy?";
+ mes "You seem to be a Magician.";
+ mes "How can I help you?";
+ next;
+ menu "Sage class-change information",-,"I want to apply for admission to the Academy",L_Menu3_1,"Forget it",L_Menu2;
+ mes "[Mathias]";
+ mes "You want to change class to Sage?";
+ mes "I can't just change your class right here.";
+ next;
+ mes "[Mathias]";
+ mes "You need to complete a program of rigorous coursework and research.";
+ next;
+ mes "[Mathias]";
+ mes "Once you graduate from the academy,";
+ mes "you can change class.";
+ mes "In order to proceed, you need to pay tuition and take the placement test.";
+ next;
+ mes "[Mathias]";
+ mes "Only those who have an ^3051FDOld Magic Book^000000 and a ^3051FDNecklace Of Wisdom^000000 can have tuition waived.";
+ next;
+ mes "[Mathias]";
+ mes "Once you've paid the fee, you first take the placement test.";
+ mes "If you score highly enough to be placed in our program, you then perform research according to your placement.";
+ mes "Finally, you must prepare and defend a thesis.";
+ next;
+ mes "[Mathias]";
+ mes "The Headmaster decides whether or not the thesis meets standards for graduation.";
+ mes "If he approves, you can formally begin your career as a Sage.";
+ next;
+ mes "[Mathias]";
+ mes "If you're interested, you need only file an application to get started.";
+ mes "Have a good day.";
+ close;
+L_Menu2:
+ mes "[Mathias]";
+ mes "Oh?";
+ mes "Are you hesitant?";
+ mes "See you later, then.";
+ close;
+L_Menu1_1:
+ mes "[Mathias]";
+ mes "Welcome.";
+ mes "This is Shubaichul Magic Academy.";
+ next;
+ mes "[Mathias]";
+ mes "We do research on magic and monsters here.";
+ mes "We also train fledgling Sages.";
+ next;
+ mes "[Mathias]";
+ mes "Any Magician who is at or above class level 40 can apply for admission to the Academy.";
+ mes "Once you complete our prescribed process for degree acquisition, you can become a Sage.";
+ next;
+ mes "[Mathias]";
+ mes "Good bye.";
+ close;
+L_Menu3_1:
+ mes "[Mathias]";
+ mes "You want to apply? Wonderful!";
+ next;
+ mes "[Mathias]";
+ mes "In order to enter the Academy,";
+ mes "you need to be a Magician of class level 40 or above.";
+ mes "You will also need to pay tuition to cover instruction and materials.";
+ next;
+ mes "[Mathias]";
+ mes "Tuition is 70,000Zeny.";
+ mes "If you have an ^3051FDOld Magic Book^000000 or a ^3051FDNecklace Of Wisdom^000000, the tuition fee will be waived.";
+ next;
+ mes "[Mathias]";
+ mes "So, you would like to apply for admission?";
+ next;
+ menu "Yes, I would",L_Menu5_5,"Tuition is too expensive!",-,"I'll try again later",L_Menu3_2;
+ mes "[Mathias]";
+ mes "Well...we need the tuition money to cover instruction and materials...";
+ next;
+ menu "Isn't there another way?",-,"I'll try again later.",L_Menu3_2;
+ set SAGE_Q,2;
+ mes "[Mathias]";
+ mes "Well...Perhaps there is. I can lower the tuition to 30000 Zeny if you can bring us some materials we need for our research department:";
+ next;
+ mes "[Mathias]";
+ mes "Specifically, we need:";
+ mes "^3051FD50x Feather of Birds^000000";
+ mes "^3051FD50x Fluff^000000";
+ mes "^3051FD50x Clover^000000";
+ mes "^3051FD50x Feathers^000000";
+ next;
+ mes "[Mathias]";
+ mes "If you can get all that, I'll discount the fee to 30000 Zeny.";
+ mes "Please do your best to collect them.";
+ next;
+ mes "[Mathias]";
+ mes "Of course, you can also acquire 70000 Zeny instead of gathering the items if you wish.";
+ next;
+ mes "[Mathias]";
+ mes "Please do your best to collect the items.";
+ mes "See you later.";
+ close;
+ L_Menu3_2:
+ mes "[Mathias]";
+ mes "Oh, alright.";
+ mes "Take your time.";
+ mes "Thanks for stopping by.";
+ close;
+L_Menu5_1:
+ mes "[Mathias]";
+ mes "So, would you like to apply for admission?";
+ next;
+ if(JobLevel < 40) goto L_Menu5_9;
+ if(countitem(1006) > 0) goto L_Menu5_4;
+ if(countitem(1007) > 0) goto L_Menu5_4_;
+ if(Zeny < 70000) goto L_Menu5_2;
+ set Zeny,Zeny-70000;
+ set SAGE_Q,3;
+ mes "[Mathias]";
+ mes "I see you have 70000 Zeny.";
+ mes "I'll take that for tuition. You are now enrolled into the school.";
+ next;
+ L_Menu5_5:
+ if(JobLevel < 40) goto L_Menu5_9;
+ mes "[Mathias]";
+ mes "We need your signature on this form to proceed.";
+ mes "Please sign at the X.";
+ next;
+ menu "" + strcharinfo(0) + "",-;
+ mes "[Mathias]";
+ mes "Alright, so you're ";
+ mes "" + strcharinfo(0) + ".";
+ mes "That's a nice name.";
+ next;
+ if(JobLevel == 50) goto L_JobMax;
+ if(SAGE_Q == 3) goto L_Menu5_6;
+ if(countitem(1006) > 0) goto L_Menu5_7;
+ if(countitem(1007) > 0) goto L_Menu5_7_;
+ if(Zeny < 70000) goto L_Menu5_2;
+ set Zeny,Zeny-70000;
+ set SAGE_Q,3;
+
+ mes "[Mathias]";
+ mes "I see you have 70000 Zeny.";
+ mes "I'll take that for tuition.";
+ mes "You are now enrolled into the school.";
+ next;
+
+ L_Menu5_6:
+ mes "[Mathias]";
+ mes "First, you need to take the placement test from Professor Kreitos.";
+ next;
+ mes "[Mathias]";
+ mes "Professor Kreitos is in the Academy library.";
+ mes "It's on the far left side of the building.";
+ next;
+ mes "[Mathias]";
+ mes "Good luck on the test.";
+ close;
+ L_JobMax:
+ set SAGE_Q,3;
+ mes "[Mathias]";
+ mes "You've trained yourself up to the maximum class level for Magicians!";
+ mes "In that case, I'll give you a full scholarship!";
+ next;
+ mes "[Mathias]";
+ mes "Now, all you need to do is go take the placement test.";
+ next;
+ mes "[Mathias]";
+ mes "Go see Professor Kreitos in the library on the far left side of the building.";
+ close;
+ L_Menu5_2:
+ if(SAGE_Q != 2) goto L_Menu5_8;
+ if((countitem(916) >= 50) && (countitem(914) >= 50) && (countitem(949) >= 50) && (countitem(705) >= 50)) goto L_Menu5_3;
+ mes "[Mathias]";
+ mes "You don't seem to have the materials yet.";
+ next;
+ mes "[Mathias]";
+ mes "You need to gather:";
+ mes "^3051FD50x Feather of Birds^000000";
+ mes "^3051FD50x Fluff^000000";
+ mes "^3051FD50x Clover^000000";
+ mes "^3051FD50x Feathers^000000";
+ next;
+ mes "[Mathias]";
+ mes "If you can get all that, I'll discount the fee to 30000 Zeny.";
+ mes "Please do your best to collect them.";
+ close;
+ L_Menu5_3:
+//==================================
+ if(Zeny < 30000) goto L_Menu5_8;
+ delitem 916,50;
+ delitem 914,50;
+ delitem 705,50;
+ delitem 949,50;
+ set Zeny,Zeny-30000;
+ set SAGE_Q,3;
+ mes "[Mathias]";
+ mes "It seems like you have the materials I asked for and 30000 Zeny.";
+ mes "Congratulations.";
+ mes "You're now enrolled in the Academy.";
+ set SAGE_Q,3;
+ next;
+ goto L_Menu5_5;
+ L_Menu5_4:
+ delitem 1006,1;
+ set SAGE_Q,3;
+ mes "[Mathias]";
+ mes "Oh, you have a ^3051FDOld Magic Book^000000.";
+ mes "I'll accept it in lieu of tuition.";
+ next;
+ goto L_Menu5_5;
+ L_Menu5_4_:
+ delitem 1007,1;
+ set SAGE_Q,3;
+ mes "[Mathias]";
+ mes "Oh, you have a ^3051FDNecklace Of Wisdom^000000.";
+ mes "I'll accept it in lieu of tuition.";
+ next;
+ goto L_Menu5_5;
+ L_Menu5_7:
+ delitem 1006,1;
+ set SAGE_Q,3;
+ mes "[Mathias]";
+ mes "Oh, you have a ^3051FDOld Magic Book^000000.";
+ mes "I'll accept it in lieu of tuition.";
+ next;
+ goto L_Menu5_6;
+ L_Menu5_7_:
+ delitem 1007,1;
+ set SAGE_Q,3;
+ mes "[Mathias]";
+ mes "Oh, you have a ^3051FDNecklace Of Wisdom^000000.";
+ mes "I'll accept it in lieu of tuition.";
+ next;
+ goto L_Menu5_6;
+ L_Menu5_8:
+ mes "[Mathias]";
+ mes "You don't seem to have enough money.";
+ mes "Please earn some money and return here.";
+ close;
+ L_Menu5_9:
+ mes "[Mathias]";
+ mes "Your class level is too low.";
+ mes "Complete some more training and return here.";
+ close;
+//==================================
+L_Menu6_1:
+ mes "[Mathias]";
+ mes "Hmmm? Did you forget what you need to do next?";
+ mes "Head over and see Professor Kreitos on the left side of the building.";
+ close;
+L_Menu6_2:
+ mes "[Mathias]";
+ mes "Oh, forgive me. I have so much to do that I can't help you at the moment.";
+ mes "Again, I apologize...";
+ close;
+L_Menu6_3:
+ mes "[Mathias]";
+ mes "Oh! Did you finish your thesis?";
+ mes "You need to see Headmaster Keiron so he can evaluate it.";
+ next;
+ mes "[Mathias]";
+ mes "If he approves, you can graduate!";
+ mes "Good luck.";
+ close;
+L_Menu6_4:
+ mes "[Mathias]";
+ mes "Welcome, colleague.";
+ mes "How is your research coming along?";
+ next;
+ mes "[Mathias]";
+ mes "In order to be a truly great researcher, you need to supplement your book-based research with encounters with real monsters.";
+ next;
+ mes "[Mathias]";
+ mes "If you know others with what it takes to become a Sage, please send them here.";
+ mes "Give my regards to my other colleagues, also.";
+ close;
+}
+
+yuno_in03.gat,169,180,4 script Test Professor 755,{
+ if(BaseJob == 16) goto L_Menu4_5;
+ if(BaseJob != 2) goto L_Menu1_1;
+ if(SAGE_Q == 5) goto L_Menu2_1;
+ if(SAGE_Q == 6) goto L_Menu2_3;
+ if(SAGE_Q == 7) goto L_Menu3_1;
+ if(SAGE_Q == 8) goto L_Menu4_1;
+ if(SAGE_Q == 9) goto L_Menu4_2;
+ if(SAGE_Q == 11) goto L_Menu4_4;
+ mes "[Hermes]";
+ mes "Hello, I'm Hermes. I am part of the skill testing staff.";
+ mes "Are you a Sage candidate?";
+ next;
+ if(SAGE_Q == 3) goto L_Menu1_2;
+ if(SAGE_Q >= 3) goto L_Menu1_2;
+ mes "[Hermes]";
+ mes "Oh, alright.";
+ mes "First you need to enroll and take the placement test.";
+ close;
+L_Menu1_1:
+ mes "[Hermes]";
+ mes "This is Shubaichul Magic Academy.";
+ next;
+ mes "[Hermes]";
+ mes "There are Sages that are less magicians than researchers.";
+ mes "Having a party supporting this kind of person is extremely important.";
+ next;
+ mes "[Hermes]";
+ mes "Keep supporting your party to the best of your ability.";
+ mes "That's all you need to do.";
+ close;
+L_Menu1_2:
+ mes "[Hermes]";
+ mes "You need to take the placement test from Kreitos before you can take my test.";
+ close;
+L_Menu2_1:
+ set SAGE_Q,6;
+ mes "[Hermes]";
+ mes "Oh? You took and passed the placement test?";
+ mes "Now you need to take the skill test from me.";
+ next;
+ mes "[Hermes]";
+ mes "The rules for the skill test are simple.";
+ mes "You need to kill all the monsters within the prescribed time limit.";
+ next;
+ mes "[Hermes]";
+ mes "There's an old proverb that one experience is worth a hundred words, so why not try it once?";
+ next;
+ menu "Sounds good",-,"I'm not ready yet",L_Menu2_2;
+ mes "[Hermes]";
+ mes "Well, let's get started.";
+ mes "Do your best!";
+ next;
+ warp "job_sage",50,154;
+ end;
+ L_Menu2_2:
+ mes "[Hermes]";
+ mes "Okay.";
+ mes "Please prepare quickly.";
+ close;
+L_Menu2_3:
+ mes "[Hermes]";
+ mes "Are you ready to take the skill test?";
+ mes "It's not too tough.";
+ next;
+ mes "[Hermes]";
+ mes "How about it?";
+ next;
+ menu "Sounds good",-,"I'm not ready yet",L_Menu2_2;
+ mes "[Hermes]";
+ mes "Well, let's get started.";
+ mes "Do your best!";
+ next;
+ warp "job_sage",50,154;
+ next;
+ warp "job_sage",50,154;
+ end;
+L_Menu3_1:
+ mes "[Hermes]";
+ mes "Good job! You passed";
+ mes "the skill test! Now you can proceed to the research phase!";
+ next;
+ mes "[Hermes]";
+ mes "Before I decide your research concentration, let's look at your score on the placement test and the amount of time you spent in the skill test.";
+ next;
+ mes "[Hermes]";
+ mes "Hmmm...";
+ mes "Looking good.";
+ next;
+
+//It's not clear how the script decides
+
+ if(sagecheck >= 12) goto L_Menu3_2;
+ set SAGE_Q,8;
+ mes "[Hermes]";
+ mes "It looks like monster research would be your best bet.";
+ next;
+ mes "[Hermes]";
+ mes "In order to gain the necessary information to put together a coherent research paper,";
+ mes "you should take the biology course from Professor Lucias.";
+ next;
+ goto L_Menu3_4;
+L_Menu3_2:
+ set SAGE_Q,9;
+ mes "[Hermes]";
+ mes "It looks like we have a budding elemental magic researcher here.";
+ mes "This field is fundamental to the advancement of magical knowledge.";
+ next;
+ mes "[Hermes]";
+ mes "You need to take a course from Professor Ebeshi in the biotech lab to gain a deeper understanding of elemental magic.";
+ next;
+L_Menu3_4:
+ mes "[Hermes]";
+ mes "I hope the coursework goes well.";
+ close;
+L_Menu4_1:
+ mes "[Hermes]";
+ mes "Weren't you listening?";
+ mes "You need to see Professor Lucias so you can begin your study of monster biology.";
+ close;
+L_Menu4_2:
+ mes "[Hermes]";
+ mes "Weren't you listening?";
+ mes "You need to see Professor Ebeshi so you can begin your study of elemental magic.";
+ close;
+L_Menu4_4:
+ mes "[Hermes]";
+ mes "Great job on completing your thesis, but you need to show it to the Headmaster.";
+ mes "He's the one who will judge whether or not you graduate.";
+ close;
+L_Menu4_5:
+ mes "[Hermes]";
+ mes "How are you?";
+ mes "Your face reveals that you've endured a lot of stress lately.";
+ next;
+ mes "[Hermes]";
+ mes "As stressful as hands-on research is,";
+ mes "it is still fundamentally different from research using abstract concepts.";
+ next;
+ mes "[Hermes]";
+ mes "Of course, if you go to difficult dungeons,";
+ mes "there's no shame in bringing a friend or five to help you out.";
+ close;
+}
+
+yuno_in03.gat,62,176,3 script History Professor 109,{
+ if(BaseJob == 16) goto L_Menu2_2;
+ if(BaseJob != 2) goto L_Menu1_1;
+ if(SAGE_Q == 11) goto L_Menu2_1;
+ mes "[Sapien]";
+ mes "You don't seem sure of your intended direction of study.";
+ mes "Perhaps you should consider it...";
+ close;
+L_Menu1_1:
+ mes "[Sapien]";
+ mes "Yes, I teach history.";
+ next;
+ mes "[Sapien]";
+ mes "As the present fades into memory, it becomes the past.";
+ mes "The kwoledge we have acquired in the past is the bridge between the present and the future.";
+ next;
+ mes "[Sapien]";
+ mes "You should study your own past, too.";
+ mes "By understanding what's happened to you already,";
+ mes "you can blaze a trail into the future unhindered by unresolved problems.";
+ close;
+L_Menu2_1:
+ mes "[Sapien]";
+ mes "What are you doing?";
+ mes "Hurry up and show the Headmaster your thesis before you lose it!";
+ close;
+L_Menu2_2:
+ mes "[Sapien]";
+ mes "Yes...?";
+ mes "Ah, it's a former student here.";
+ mes "Congratulations on graduating.";
+ next;
+ mes "[Sapien]";
+ mes "The present can only be understood by understanding the past.";
+ mes "Such understanding allows us to envision our future.";
+ next;
+ mes "[Sapien]";
+ mes "You should study your own past, too.";
+ mes "By understanding what's happened to you already,";
+ mes "you can blaze a trail into the future unhindered by unresolved problems.";
+ close;
+}
+
+yuno_in03.gat,105,177,4 script Placement Test Professor 754,{
+ if(BaseJob == 16) goto L_Menu3_4;
+ if(BaseJob != 2) goto L_Menu1_1;
+ if(SAGE_Q == 11) goto L_Menu3_3;
+ if(SAGE_Q >= 6) goto L_Menu3_2;
+ if(SAGE_Q == 3) goto L_Menu1_2;
+ if(SAGE_Q == 4) goto L_Menu2_1;
+ if(SAGE_Q == 5) goto L_Menu3_1;
+ mes "[Kreitos]";
+ mes "You have that look in your eye...";
+ mes "You want to be a Sage, I take it.";
+ next;
+ mes "[Kreitos]";
+ mes "You need to formally enroll in the Academy before I can help you any further.";
+ close;
+L_Menu1_1:
+ mes "[Kreitos]";
+ mes "Oh, you're not interested in our brand of magic?";
+ mes "That's alright...";
+ next;
+ mes "[Kreitos]";
+ mes "Anyone who teaches others and has a good heart is of value to society.";
+ mes "Please keep that in mind.";
+ close;
+L_Menu1_2:
+ set SAGE_Q,4;
+ set sagecheck,10;
+ mes "[Kreitos]";
+ mes "It looks like you've enrolled in the Shubaichul Magic Academy.";
+ mes "Is that right?";
+ next;
+ mes "[Kreitos]";
+ mes "So, let me find your paperwork...";
+ mes "You're " + strcharinfo(0) + ",";
+ mes "right?";
+ mes "Let's start the placement test.";
+ next;
+ mes "[Kreitos]";
+ mes "This test consists of twenty questions concerning the entire world.";
+ mes "If you score at least 80 points, you'll be placed in our program.";
+ mes "Each correct answer is worth 5 points.";
+ next;
+ mes "[Kreitos]";
+ mes "If you cancel, you'll have to start over, so be careful.";
+ next;
+ goto L_Menu2_2;
+ L_Menu2_1:
+ mes "[Kreitos]";
+ mes "Are you ready to try again?";
+ mes "Have you studied hard?";
+ next;
+ mes "[Kreitos]";
+ mes "The passing grade is as before.";
+ mes "You need to score 80 points, with each question being worth 5 points.";
+ next;
+ mes "[Kreitos]";
+ mes "So, let's get started.";
+ mes "Give it your best effort.";
+ mes "As before, if you cancel,";
+ mes "you'll have to start over.";
+ next;
+ L_Menu2_2:
+
+ set @sage_test2,0;
+ set @sage_test1,rand(3);
+ if (@sage_test1 == 1) goto L_Test2_1;
+ if (@sage_test1 == 2) goto L_Test3_1;
+
+//==================================
+//Written Test: Route 1.
+//==================================
+ mes "1. Which one isn't sold in Morocc's jewel shop?";
+ next;
+ menu "Topaz",L_Test1_1,"Garnet",-,"Diamond",L_Test1_1,"Sapphire",L_Test1_1;
+ set @sage_test2,@sage_test2+5;
+ goto L_Test1_1;
+ L_Test1_1:
+ mes "2. In which town can you not buy monster food?";
+ next;
+ menu "Prontera",L_Test1_2,"Morocc",L_Test1_2,"Aldebaran",-,"Alberta",L_Test1_2;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_2:
+ mes "3. Which town is closest to the forest maze?";
+ next;
+ menu "Prontera",-,"Morocc",L_Test1_3,"Geffen",L_Test1_3,"Payon",L_Test1_3;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_3:
+ mes "4. Which of these monsters is of a different race than the other three?";
+ next;
+ menu "Muka",L_Test1_4,"Drops",L_Test1_4,"Plankton",L_Test1_4,"Penomena",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_4:
+ mes "5. All these monsters except one have the same elemental affinity.";
+ mes "Which one has the different affinity?";
+ next;
+ menu "Dokebi",L_Test1_5,"Isis",L_Test1_5,"Giearth",-,"Deviruchi",L_Test1_5;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_5:
+ mes "6. Which one differs in approximate size from the others?";
+ next;
+ menu "Male Thief Bug",L_Test1_6,"Horn",L_Test1_6,"Metaller",L_Test1_6,"Argos",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_6:
+ mes "7. Which of these monsters doesn't drop the Iggydrasil leaf?";
+ next;
+ menu "Marduk",-,"Baphomet Jr.",L_Test1_7,"Angeling",L_Test1_7,"Wander Man",L_Test1_7;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_7:
+ mes "8. Which of these people isn't related to someone who can perform a class change to priest?";
+ next;
+ menu "Peter S. Alberto",-,"Thomas Bishop",L_Test1_8,"Windser Banedict",L_Test1_8,"Sesil Magrita",L_Test1_8;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_8:
+ mes "9. Which doesn't live in Morocc?";
+ next;
+ menu "Muda Armani",L_Test1_9,"Aragham",L_Test1_9,"Antonio",-,"Abldul",L_Test1_9;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_9:
+ mes "10. Which Kapra has the pretty blue hair?";
+ next;
+ menu "Pavianne",-,"Debril",L_Test1_10,"Claris",L_Test1_10,"Tayelin",L_Test1_10;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_10:
+ mes "11. Which one isn't necessary to unlock the Fire Wall skill?";
+ next;
+ menu "Firebolt Lv4",L_Test1_11,"Napalm Beat Lv4",-,"Fireball Lv5",L_Test1_11,"Sight Lv1",L_Test1_11;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_11:
+ mes "12. When the skill 'SP Restoration Lv6' is active, how much SP does the skill restore every ten seconds?";
+ next;
+ menu "14 sp",L_Test1_12,"16 sp",L_Test1_12,"18 sp",-,"21 sp",L_Test1_12;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_12:
+ mes "13. If you are a magician with job lv. 33, how many additional stat points will you get for int?";
+ next;
+ menu "7",L_Test1_13,"6",L_Test1_13,"5",L_Test1_13,"4",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_13:
+ mes "14. If the Archer skill 'Concentration Up Lv5' is active, how much SP will it consume?";
+ next;
+ menu "45 / 140sec",-,"50 / 140sec",L_Test1_14,"45 / 150sec",L_Test1_14,"50 / 150sec",L_Test1_14;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_14:
+ mes "15. Which one isn't necessary to unlock the Blacksmith skill 'Maximize Power'?";
+ next;
+ menu "Hilt Bending",L_Test1_15,"Skin Tempering",-,"Hammer Fall",L_Test1_15,"Weapon Perfection",L_Test1_15;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_15:
+ mes "16. What is the defense power and supplemental ability of a Ribbon?";
+ next;
+ menu "0 / SP +20",L_Test1_16,"0 / SP +30",L_Test1_16,"1 / SP +20",-,"1 / SP +30",L_Test1_16;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_16:
+ mes "17. Which class can't equip a Saint Robe?";
+ next;
+ //Swordsmen can't equip it either as of this writing.
+ menu "Swordsman",-,"Merchant",L_Test1_17,"Thief",-,"Acolyte",L_Test1_17;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_17:
+ mes "18. Which status ailment can't be removed with a Green Potion?";
+ next;
+ menu "Mute",L_Test1_18,"Poison",L_Test1_18,"Blind",L_Test1_18,"Cursed",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_18:
+ mes "19. What is the name of the ancient kingdom from which Geffen descends?";
+ next;
+ menu "Gefin",L_Test1_19,"Geffenia",-,"Gefdoria",L_Test1_19,"Gefria",L_Test1_19;
+ set @sage_test2,@sage_test2+5;
+ L_Test1_19:
+ mes "20. Which tree is said to be the world's root?";
+ next;
+ menu "Igg Drasil",-,"Idrasil",L_Menu2_3,"Master",L_Menu2_3,"Old Tree",L_Menu2_3;
+ set @sage_test2,@sage_test2+5;
+ goto L_Menu2_3;
+ //==================================
+ //Written Test: Route 2.
+ //==================================
+ L_Test2_1:
+ mes "1. Which isn't sold in Geffen's magic shop?";
+ next;
+ menu "Mantle",-,"Wand",L_Test2_2,"Circlet",L_Test2_2,"Silver Robe",L_Test2_2;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_2:
+ mes "2. Which town doesn't sell blades?";
+ next;
+ menu "Prontera",L_Test2_3,"Izlude",L_Test2_3,"Aldebaran",-,"payon",L_Test2_3;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_3:
+ mes "3. Which town is nearest to Glast Heim?";
+ next;
+ menu "Prontera",L_Test2_4,"Geffen",-,"Morocc",L_Test2_4,"Payon",L_Test2_4;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_4:
+ mes "4. Which monster's type differs from the other three?";
+ next;
+ menu "Aster",L_Test2_5,"Marc",L_Test2_5,"Marse",L_Test2_5,"Marin",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_5:
+ mes "5. Which monster's elemental affinity is different from the others?";
+ next;
+ menu "Desert Wolf Babe",L_Test2_6,"Smokie",-,"Picky",L_Test2_6,"Choco",L_Test2_6;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_6:
+ mes "6. Which monster is in a different size class than the others?";
+ next;
+ menu "Drake",-,"Wraith",L_Test2_7,"Evil Druid",L_Test2_7,"Khalitzburg",L_Test2_7;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_7:
+ mes "7. Which monster doesn't drop Phracon?";
+ next;
+ menu "Pupa",L_Test2_8,"Condor",-,"Savage Baby",L_Test2_8,"Desert Wolf Babe",L_Test2_8;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_8:
+ mes "8. Who isn't involved in the Blacksmith class change?";
+ next;
+// =========================
+// Acording To mRO Site And eAthena Blacksmith Script the following ppl looking like ppl listed here are:
+// - Baisulitst - looks like some1 listed by mRO
+// - Wickebine - mRO has him as option listed
+// - Gromgast - mRO has him as option listed
+// - Mitmayer - translator has him listed as option
+// == Conclusion == I took the following:
+// =========================
+ menu "Baisulitst",L_Test2_9,"Wickebine",L_Test2_9,"Barkdale",-,"Mitmayer",L_Test2_9;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_9:
+ mes "9. Who doesn't live in Aldebaran?";
+ next;
+ menu "RS125",L_Test2_10,"Maasaru",-,"Munster",L_Test2_10,"Isenberg",L_Test2_10;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_10:
+ mes "10. Who is the youngest person in the Kapra organization?";
+ next;
+ menu "Deflute",L_Test2_11,"Claris",L_Test2_11,"Tayelin",L_Test2_11,"Curly Sue",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_11:
+ mes "11. When you use the skill 'Safety Wall Lv6', how much SP is consumed and how many attacks will it block?";
+ next;
+ menu "SP 40, 6bl",L_Test2_12,"SP 35, 6bl",L_Test2_12,"SP 35, 7bl",L_Test2_12,"SP 40, 7bl",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_12:
+ mes "12. When you use 'Napalm Beat Lv6', what is the attack power relative to MATK?";
+ next;
+ menu "1.2x MATK",L_Test2_13,"1.3x MATK",-,"1.4x MATK",L_Test2_13,"1.5x MATK",L_Test2_13;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_13:
+ mes "13. Which one catalyzes the reaction of Liquid #4 during the Magician class change test?";
+ next;
+ menu "Blue Gemstone",L_Test2_14,"Red Gemstone",L_Test2_14,"Orange Gemstone",L_Test2_14,"Carat Diamond",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_14:
+ mes "14. What is the damage multiplier and SP consumption for 'Bash Lv6'?";
+ next;
+ menu "250% / 8",L_Test2_15,"280% / 8",L_Test2_15,"280% / 15",-,"310% / 15",L_Test2_15;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_15:
+ mes "15. Which isn't necessary to unlock the Hunter skill 'Claymore Trap'?";
+ next;
+ menu "Remove Trap",-,"Land Mine",L_Test2_16,"Ankle Snare",L_Test2_16,"Flash",L_Test2_16;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_16:
+ mes "16. What is the defense power and supplemental ability of a Veil?";
+ next;
+ menu "0 / MDEF +3",L_Test2_17,"0 / MDEF +5",-,"1 / MDEF +3",L_Test2_17,"1 / MDEF +5",L_Test2_17;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_17:
+ mes "17. Which class can't equip a Coat?";
+ next;
+ menu "Swordsman",L_Test2_18,"Magician",L_Test2_18,"Thief",L_Test2_18,"Novice",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_18:
+ mes "18. Which item isn't blue in color?";
+ next;
+ menu "Alcohol",L_Test2_19,"Detrimindexta",-,"Karvodailnirol",L_Test2_19,"Blue Herb",L_Test2_19;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_19:
+ mes "19. Which item did the god Odin use to create the world?";
+ next;
+// menu "Yomir's Heart",L_Test2_20,"Yomir's Nail",-,"Yomir's Tooth",L_Test2_20,"Yomir's Stuff",L_Test2_20;
+// All answers correct untill i know the real answer, only Stuff is wrong cause that NOT it
+ menu "Yomir's Heart",-,"Yomir's Nail",-,"Yomir's Tooth",-,"Yomir's Stuff",L_Test2_20;
+ set @sage_test2,@sage_test2+5;
+ L_Test2_20:
+ mes "20. Which metal can change the fate of the world?";
+ next;
+ menu "Envertacon",L_Menu2_3,"Emperium",-,"Enbera",L_Menu2_3,"Phracon",L_Menu2_3;
+ set @sage_test2,@sage_test2+5;
+ goto L_Menu2_3;
+//==================================
+//Written Test: Route 3.
+//==================================
+ L_Test3_1:
+ mes "1.Which of these items isn't sold at Prontera's knicknack shop?";
+ next;
+ menu "White Plate",L_Test3_2,"Red Frame",L_Test3_2,"Flower",-,"Glass Ball",L_Test3_2;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_2:
+ mes "2. Which town doesn't sell stilettos?";
+ next;
+ menu "Prontera",-,"Morocc",L_Test3_3,"Gefen",L_Test3_3,"Lutie",L_Test3_3;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_3:
+ mes "3. Which town is closest to Turtle Island?";
+ next;
+ menu "Aldebaran",L_Test3_4,"Alberta",-,"Comodo",L_Test3_4,"Izlude",L_Test3_4;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_4:
+ mes "4. Which monster is of a different monster race than the other three?";
+ next;
+ menu "Raggler",L_Test3_5,"Pest",L_Test3_5,"Frilldora",L_Test3_5,"Aster",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_5:
+ mes "5. Which monster has a different elemental affinity than the other three?";
+ next;
+ menu "Mantis",L_Test3_6,"Metaller",-,"Rokker",L_Test3_6,"Horn",L_Test3_6;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_6:
+ mes "6. Which monster is in a different size class than the others?";
+ next;
+ menu "Raydric",-,"Raydric Archer",L_Test3_7,"Wander Man",L_Test3_7,"Dark Flame",L_Test3_7;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_7:
+ mes "7. Which monster doesn't drop alcohol?";
+ next;
+ menu "Horn",L_Test3_8,"Plankton",L_Test3_8,"Poison Spore",-,"Toad",L_Test3_8;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_8:
+ mes "8. Which isn't involved in the Knight class change?";
+ next;
+// =========================
+// Acording To mRO Site And eAthena Knight Script the following ppl looking like ppl listed here
+// =========================
+ menu "James Syracuse",L_Test3_9,"Thomas Bishop",-,"Amy Veattris",L_Test3_9,"Edmond Groster",L_Test3_9;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_9:
+ mes "9. Which of these people doesn't live in Prontera?";
+ next;
+ menu "Nami",L_Test3_10,"Aldefun",-,"Thomas",L_Test3_10,"Hollengrhen",L_Test3_10;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_10:
+ mes "10. Which Kapra wears glasses?";
+ next;
+ menu "Deflute",L_Test3_11,"Tayelin",L_Test3_11,"Leilah",-,"Debril",L_Test3_11;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_11:
+ mes "11. How much SP does it cost to use 'Thunderstorm Lv7'?";
+ next;
+ menu "49",L_Test3_12,"59",-,"69",L_Test3_12,"74",L_Test3_12;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_12:
+ mes "12. If you have 50% of your SP left, how much damage will 'Energy Coat' block and how much SP will be consumed?";
+ next;
+ menu "24% blocked SP1.5% consumed",L_Test3_13,"24% blocked SP2% consumed",L_Test3_13,"18% blocked SP1.5% consumed",L_Test3_13,"18% blocked SP2% consumed",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_13:
+ mes "13. Which element cannot be used in bolt form by a Magician?";
+ next;
+ menu "Water",L_Test3_14,"Earth",-,"Fire",L_Test3_14,"Wind",L_Test3_14;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_14:
+ mes "14. When a thief has the skill 'Double Attack Lv7', what is the trigger probability and attack power multiplier?";
+ next;
+ menu "35% / 120%",L_Test3_15,"35% / 140%",-,"40% / 120%",L_Test3_15,"40% / 140%",L_Test3_15;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_15:
+ mes "15. Which of these isn't necessary to unlock the Priest skill 'Magnus Exorcism'?";
+ next;
+ menu "Divine Protection",-,"Heal",L_Test3_16,"Revive",L_Test3_16,"Aqua Benedicta",L_Test3_16;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_16:
+ mes "16. What is the defense power and supplemental ability of a Bunny Band?";
+ next;
+ menu "1 / LUK +2",L_Test3_17,"1 / LUK +5",L_Test3_17,"2 / LUK +2",-,"2 / LUK +5",L_Test3_17;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_17:
+ mes "17. Which class can't equip armor?";
+ next;
+ menu "Swordsman",L_Test3_18,"Merchant",L_Test3_18,"Thief",L_Test3_18,"Archer",-;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_18:
+ mes "18. Which item completely restores HP and SP?";
+ next;
+ menu "Royal Jelly",L_Test3_19,"Ig Drasil Seed",L_Test3_19,"Ig Drasil Fruit",-,"Master Fruit",L_Test3_19;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_19:
+ mes "19. What's the name of the king of Rune-Midgard?";
+ next;
+ menu "Trisdan III",L_Test3_20,"Tristan III",-,"Traisda III",L_Test3_20,"Trist III",L_Test3_20;
+ set @sage_test2,@sage_test2+5;
+ L_Test3_20:
+ mes "20. Which god do Crusaders serve?";
+ next;
+ menu "Odin",-,"Loki",L_Menu2_3,"Tooru",L_Menu2_3,"Aragamsaree",L_Menu2_3;
+ set @sage_test2,@sage_test2+5;
+
+ L_Menu2_3:
+ mes "[Kreitos]";
+ mes "Are you finished?";
+ mes "Alright, then I'll grade the test.";
+ next;
+ mes "[Kreitos]";
+ mes "Hmmm...";
+ mes "Yes....";
+ next;
+ if (@sage_test2 >= 100) goto L_Menu2_5;
+ if (@sage_test2 < 80) goto L_Menu2_4;
+ mes "[Kreitos]";
+ mes "All done.";
+ mes "You scored " + @sage_test2 + " points.";
+ mes "Looking good.";
+ mes "You've scored highly enough to pass.";
+ next;
+ goto L_Menu2_6;
+ L_Menu2_4:
+ set sagecheck,sagecheck-1;
+ mes "[Kreitos]";
+ mes "All done.";
+ mes "You scored " + @sage_test2 + " points.";
+ mes "......";
+ mes "Sorry, that's not good enough.";
+ next;
+ mes "[Kreitos]";
+ mes "We exepect our students to have command of much information about the world.";
+ mes "Learn some more and come back.";
+ mes "You can take the test again then.";
+ close;
+ L_Menu2_5:
+ mes "[Kreitos]";
+ mes "All done.";
+ mes "You scored " + @sage_test2 + " points.";
+ mes "Amazing. You did wonderfully.";
+ mes "There is no doubt you'll make a great Sage.";
+ next;
+ L_Menu2_6:
+ set SAGE_Q,5;
+ mes "[Kreitos]";
+ mes "Alright.";
+ mes "You've completed the placement test.";
+ mes "Now you need to take the skill test from Professor Hermes.";
+ close;
+L_Menu3_1:
+ mes "[Kreitos]";
+ mes "Heh?";
+ mes "Do you love tests so much that you want to take the placement test again?";
+ next;
+ mes "[Kreitos]";
+ mes "Go see Professor Hermes and take the skill test.";
+ mes "Future Sages can't be slacking off.";
+ close;
+L_Menu3_2:
+ mes "[Kreitos]";
+ mes "I'm busy grading other students' exams at the moment.";
+ mes "If you need something, please see me later.";
+ close;
+L_Menu3_3:
+ mes "[Kreitos]";
+ mes "It's great that you finished your thesis, but I don't grade those.";
+ next;
+ mes "[Kreitos]";
+ mes "Show that to Headmaster Keiron.";
+ mes "He'll judge whether or not it's quality warrants your graduation.";
+ close;
+L_Menu3_4:
+ mes "[Kreitos]";
+ mes "You've graduated already?";
+ mes "Do you want to take more classes?";
+ next;
+ mes "[Kreitos]";
+ mes "I know it feels great to have graduated, but you've got to keep learning.";
+ mes "You might burn out if you become complacent and never venture out of the library once in a while.";
+ mes "Danger is exhilerating.";
+ next;
+ mes "[Kreitos]";
+ mes "Don't forget to keep notes about your journies.";
+ mes "They can come in handy when you want to teach others about a subject you've studied.";
+ close;
+}
+
+//==================================
+//Skill Test Room
+//==================================
+
+job_sage.gat,50,165,4 script Skill Test Coordinator::jobsage_wroom 700,{
+ mes "[Skill Test Coordinator]";
+ mes "Welcome to the Sage skill test.";
+ mes "Please go to the waiting area if you want to take the test.";
+ next;
+ mes "[Skill Test Coordinator]";
+ mes "Others are being tested at the moment.";
+ mes "When it's time for you to be tested, we'll call your name.";
+ next;
+ mes "[Skill Test Coordinator]";
+ mes "It takes around 5-10 minutes to test one person.";
+ close;
+OnInit:
+ waitingroom "Test Waiting Area",10,"jobsage_wroom::OnStart",1;
+ end;
+OnStart:
+ disablewaitingroomevent;
+ warpwaitingpc "job_sage.gat",118,99;
+ set $@jobsage_pid,$@warpwaitingpc[0];
+ if( attachrid($@jobsage_pid)==0 ) goto L_Error;
+ set $@jobsage_pname$,strcharinfo(0);
+ donpcevent "jobsage_1st::OnStart";
+ end;
+L_Error:
+ enablewaitingroomevent;
+ end;
+OnEnable:
+ enablewaitingroomevent;
+ end;
+}
+
+//======== Test Step 1
+job_sage.gat,1,1,1 script jobsage_1st -1,{
+ end;
+OnStart:
+ set $@jobsage_m,16;
+ monster "job_sage.gat",115,106,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",120,102,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",124,98,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",120,93,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",115,90,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",111,93,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",107,98,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",111,102,"Unit",1183,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",128,110,"Unit",1184,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",124,106,"Unit",1184,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",124,89,"Unit",1184,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",128,85,"Unit",1184,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",107,89,"Unit",1184,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",103,85,"Unit",1184,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",107,106,"Unit",1184,1,"jobsage_1st::OnKilled";
+ monster "job_sage.gat",103,110,"Unit",1184,1,"jobsage_1st::OnKilled";
+ initnpctimer;
+ end;
+OnReset:
+ killmonster "job_sage.gat","All";
+ end;
+OnKilled:
+ set $@jobsage_m,$@jobsage_m-1;
+ if( $@jobsage_m > 0 )goto L_NotWin;
+ if(getnpctimer(1,"jobsage_1st") < 60000 ) set sagecheck,sagecheck+1;
+ if((getnpctimer(1,"jobsage_1st") >= 120000 ) && (getnpctimer(1,"jobsage_1st") <= 170000 )) set sagecheck,sagecheck-1;
+ if(getnpctimer(1,"jobsage_1st") > 170000 ) set sagecheck,sagecheck-2;
+ stopnpctimer;
+ mapannounce "job_sage.gat","Examiner: " + $@jobsage_pname$ + " killed all the monsters!",8;
+ donpcevent "jobsage_2nd::OnStart";
+ L_NotWin:
+ end;
+OnTimer1000:
+ mapannounce "job_sage.gat","Examiner: The skill test begins now.",8;
+ end;
+OnTimer2500:
+ mapannounce "job_sage.gat","Examiner: The time limit for this portion of the test is 3 minutes.",8;
+ end;
+OnTimer4000:
+ mapannounce "job_sage.gat","Examiner: You must kill all the monsters within that time period.",8;
+ end;
+OnTimer30000:
+ mapannounce "job_sage.gat","Examiner: 2 minutes, 30 seconds remaining.",8;
+ end;
+OnTimer60000:
+ mapannounce "job_sage.gat","Examiner: 2 minutes remaining.",8;
+ end;
+OnTimer90000:
+ mapannounce "job_sage.gat","Examiner: 1 minute, 30 seconds remaining.",8;
+ end;
+OnTimer120000:
+ mapannounce "job_sage.gat","Examiner: 1 minute remaining.",8;
+ end;
+OnTimer150000:
+ mapannounce "job_sage.gat","Examiner: 30 seconds remaining.",8;
+ end;
+OnTimer170000:
+ mapannounce "job_sage.gat","Examiner: 10 seconds remaining.",8;
+ end;
+OnTimer180000:
+ donpcevent "jobsage_1st::OnReset";
+ mapannounce "job_sage.gat","Examiner: Time has expired.",8;
+ end;
+OnTimer181500:
+ mapannounce "job_sage.gat","Examiner:" + $@jobsage_pname$ + "failed the test.",8;
+ areawarp "job_sage.gat",100,82,131,113,"yuno.gat",324,258;
+ end;
+OnTimer183000:
+ mapannounce "job_sage.gat","Next candidate, please step forward.",8;
+ end;
+OnTimer184000:
+ donpcevent "jobsage_wroom::OnEnable";
+ stopnpctimer;
+ end;
+}
+
+//======== Test Step 2
+job_sage.gat,1,1,1 script jobsage_2nd -1,{
+ end;
+OnStart:
+ donpcevent "jobsage_2nd::OnReset";
+ set $@jobsage_m,24;
+ monster "job_sage.gat",120,102,"GeographyInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,102,"StatisticsInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,102,"MeteorologyInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,102,"AstronomyInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,102,"LinguisticsInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,102,"CityLifeInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",124,98,"ForestryInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",124,98,"HealthInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",124,98,"PsychologyInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,93,"AnthropologyInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,93,"BiologyInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",120,93,"EthicsInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,93,"ArchitectureInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,93,"PlasticsInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,93,"NutritionInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,93,"FoodInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,93,"ManagementInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,93,"SociologyInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",107,98,"EconomicsInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",107,98,"MagicInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",107,98,"PoliSciInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,102,"MathInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,102,"HistoryInfo",1063,1,"jobsage_2nd::OnKilled";
+ monster "job_sage.gat",111,102,"PhysicsInfo",1063,1,"jobsage_2nd::OnKilled";
+ initnpctimer;
+ end;
+OnReset:
+ killmonster "job_sage.gat","All";
+ end;
+OnKilled:
+ set $@jobsage_m,$@jobsage_m-1;
+ if( $@jobsage_m > 0 )goto L_NotWin;
+ stopnpctimer;
+ if(getnpctimer(1,"jobsage_2nd") < 60000 ) set sagecheck,sagecheck+1;
+ if((getnpctimer(1,"jobsage_2nd") >= 120000 ) && (getnpctimer(1,"jobsage_2nd") <= 170000 )) set sagecheck,sagecheck-1;
+ if(getnpctimer(1,"jobsage_2nd") > 170000 ) set sagecheck,sagecheck-2;
+ mapannounce "job_sage.gat","Examiner: " + $@jobsage_pname$ + " killed all the monsters!",8;
+ donpcevent "jobsage_3rd::OnStart";
+ L_NotWin:
+ end;
+OnTimer1500:
+ mapannounce "job_sage.gat","Examiner: The time limit for this portion of the test is 3 minutes.",8;
+ end;
+OnTimer3000:
+ mapannounce "job_sage.gat","Examiner: You must kill all the monsters within that time period.",8;
+ end;
+OnTimer30000:
+ mapannounce "job_sage.gat","Examiner: 2 minutes, 30 seconds remaining.",8;
+ end;
+OnTimer60000:
+ mapannounce "job_sage.gat","Examiner: 2 minutes remaining.",8;
+ end;
+OnTimer90000:
+ mapannounce "job_sage.gat","Examiner: 1 minute, 30 seconds remaining.",8;
+ end;
+OnTimer120000:
+ mapannounce "job_sage.gat","Examiner: 1 minute remaining.",8;
+ end;
+OnTimer150000:
+ mapannounce "job_sage.gat","Examiner: 30 seconds remaining.",8;
+ end;
+OnTimer170000:
+ mapannounce "job_sage.gat","Examiner: 10 seconds remaining.",8;
+ end;
+OnTimer180000:
+ donpcevent "jobsage_2nd::OnReset";
+ mapannounce "job_sage.gat","Examiner: Time has expired.",8;
+ end;
+OnTimer181500:
+ mapannounce "job_sage.gat","Examiner: " + $@jobsage_pname$ + "has failed the test.",8;
+ areawarp "job_sage.gat",100,82,131,113,"yuno.gat",324,258;
+ end;
+OnTimer183000:
+ mapannounce "job_sage.gat","Next candidate, please step forward.",8;
+ end;
+OnTimer184000:
+ donpcevent "jobsage_wroom::OnEnable";
+ stopnpctimer;
+ end;
+}
+
+
+//======== Test Step 3
+job_sage.gat,1,1,1 script jobsage_3rd -1,{
+ end;
+OnStart:
+ donpcevent "jobsage_3rd::OnReset";
+ set $@jobsage_m,1;
+ monster "job_sage.gat",116,98,"Bachelor",1179,1,"jobsage_3rd::OnKilled";
+ monster "job_sage.gat",124,106,"Tardy",1185,1;
+ monster "job_sage.gat",124,89,"Loaner",1185,1;
+ monster "job_sage.gat",107,89,"Cheater",1185,1;
+ monster "job_sage.gat",107,106,"Absentee",1185,1;
+ initnpctimer;
+ end;
+OnReset:
+ end;
+OnKilled:
+ set $@jobsage_m,$@jobsage_m-1;
+ if( $@jobsage_m > 0 )goto L_NotWin;
+ stopnpctimer;
+ killmonster "job_sage.gat","All";
+ set SAGE_Q,7;
+ if(getnpctimer(1,"jobsage_3rd") < 20000 ) set sagecheck,sagecheck+1;
+ if((getnpctimer(1,"jobsage_3rd") >= 30000 ) && (getnpctimer(1,"jobsage_2nd") <= 50000 )) set sagecheck,sagecheck-1;
+ if(getnpctimer(1,"jobsage_3rd") > 50000 ) set sagecheck,sagecheck-2;
+ mapannounce "job_sage.gat","Examiner: Congratulations. " + $@jobsage_pname$ + "passed the test!",8;
+ donpcevent "jobsage_success::OnSuccess";
+ L_NotWin:
+ end;
+OnTimer1500:
+ mapannounce "job_sage.gat","Examiner: 1 minute remaining.",8;
+ end;
+OnTimer30000:
+ mapannounce "job_sage.gat","Examiner: 30 seconds remaining.",8;
+ end;
+OnTimer50000:
+ mapannounce "job_sage.gat","Examiner: 10 seconds remaining.",8;
+ end;
+OnTimer60000:
+ donpcevent "jobsage_3rd::OnReset";
+ mapannounce "job_sage.gat","Examiner: Time has expired.",8;
+ end;
+OnTimer61500:
+ mapannounce "job_sage.gat","Examiner: " + $@jobsage_pname$ + "failed the test.",8;
+ areawarp "job_sage.gat",100,82,131,113,"yuno.gat",324,258;
+ end;
+OnTimer63000:
+ mapannounce "job_sage.gat","Examiner: This concludes the test. Next candidate, please step forward.",8;
+ end;
+OnTimer64000:
+ donpcevent "jobsage_wroom::OnEnable";
+ stopnpctimer;
+ end;
+}
+
+//======== Successful
+job_sage.gat,1,7,1 script jobsage_success 66,{
+OnSuccess:
+ killmonster "job_sage.gat","All";
+ initnpctimer;
+ end;
+OnTimer3000:
+ mapannounce "job_sage.gat","Examiner: Please allow me to guide you out.",8;
+ end;
+OnTimer6000:
+ mapannounce "job_sage.gat","Next candidate, please step forward.",8;
+ areawarp "job_sage.gat",100,82,131,113,"yuno_in03.gat",163,180;
+ end;
+OnTimer7000:
+ donpcevent "jobsage_wroom::OnEnable";
+ stopnpctimer;
+ end;
+}
+
+//==============================================================================
+// mapflag
+//==============================================================================
+job_sage.gat mapflag nomemo
+job_sage.gat mapflag noteleport
+job_sage.gat mapflag nosave SavePoint
+job_sage.gat mapflag nopenalty
+job_sage.gat mapflag nobranch
+job_sage.gat mapflag noexp
+job_sage.gat mapflag noloot
|