From 195dffc20af1fb32c7e4119988911b72955aeabc Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@54d463be-8e91-2dee-dedb-b68131a5f0ec> Date: Thu, 4 Nov 2004 23:25:09 +0000 Subject: git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/athena@2 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/jobs/2-2/alchemist.txt | 1078 +++++++++++++++++ npc/jobs/2-2/crusader.txt | 1164 ++++++++++++++++++ npc/jobs/2-2/noquest/crusader.txt | 54 + npc/jobs/2-2/noquest/dancer-bard.txt | 72 ++ npc/jobs/2-2/noquest/monk.txt | 54 + npc/jobs/2-2/rogue.txt | 943 +++++++++++++++ npc/jobs/2-2/sage.txt | 2146 ++++++++++++++++++++++++++++++++++ 7 files changed, 5511 insertions(+) create mode 100644 npc/jobs/2-2/alchemist.txt create mode 100644 npc/jobs/2-2/crusader.txt create mode 100644 npc/jobs/2-2/noquest/crusader.txt create mode 100644 npc/jobs/2-2/noquest/dancer-bard.txt create mode 100644 npc/jobs/2-2/noquest/monk.txt create mode 100644 npc/jobs/2-2/rogue.txt create mode 100644 npc/jobs/2-2/sage.txt (limited to 'npc/jobs/2-2') diff --git a/npc/jobs/2-2/alchemist.txt b/npc/jobs/2-2/alchemist.txt new file mode 100644 index 000000000..45f1ae5a2 --- /dev/null +++ b/npc/jobs/2-2/alchemist.txt @@ -0,0 +1,1078 @@ +//===== eAthena Script ======================================= +//= Alchemist Job Quest +//===== By: ================================================== +//= nestor_zulueta (Fusion) +//= converted by Darkchild +//===== Current Version: ===================================== +//= 1.1 +//===== 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 Raspuchin's test. (based of mRO website) [kobra_k88] +//============================================================ + + +//==================================================================================================// +// Registration and First Test +//==================================================================================================// +alde_alche.gat,27,185,4 script Parmry Gianino 744, +{ + mes "[Parmry Gianino]"; + if(Class == 5) goto L_Merc; + if(Class == 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... ^5533FFRaspuchin^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 "[Parmy 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 ^5533FFRaspuchin^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 Raspuchin Gregory 749, +{ + mes "[Raspuchin Gregory]"; + if(class == 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 "[Raspuchin Gregory]"; + mes "Am researching! Once this potion is complete... you will be able to take over an entire country!!"; + next; + mes "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin Gregory]"; + mes "12+23+34+45 =?"; + next; + input @num; + if(@num == 114) set @score,@score+10; + q2: + mes "[Raspuchin Gregory]"; + mes "1000-36-227-348 =?"; + next; + input @num; + if(@num == 389) set @score,@score+10; + q3: + mes "[Raspuchin Gregory]"; + mes "9765/3/5/7 =?"; + next; + input @num; + if(@num == 93) set @score,@score+10; + q4: + mes "[Raspuchin Gregory]"; + mes "(2646/7) + (13*28) =?"; + next; + input @num; + if(@num == 742) set @score,@score+10; + q5: + mes "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 == 22) set @score,@score+10; + q8: + mes "[Raspuchin 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 "[Raspuchin Gregory]"; + mes "Well, I'll let you go this one time..."; + mes "I forgive you ... Kekeke."; + mes "Do well this time..."; + next; + mes "[Raspuchin 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 "[Raspuchin Gregory]"; + mes "13+25+37+48=?"; + next; + input @num; + if(@num == 123) set @score,@score+10; + q12: + mes "[Raspuchin Gregory]"; + mes "1000-58-214-416 =?"; + next; + input @num; + if(@num == 312) set @score,@score+10; + q13: + mes "[Raspuchin Gregory]"; + mes "12*24*3=?"; + next; + input @num; + if(@num == 864) set @score,@score+10; + q14: + mes "[Raspuchin Gregory]"; + mes "10530/3/5/2=?"; + next; + input @num; + if(@num == 351) set @score,@score+10; + q15: + mes "[Raspuchin Gregory]"; + mes "(35*19) - (1792/7) =?"; + next; + input @num; + if(@num == 400) set @score,@score+10; + q16: + mes "[Raspuchin Gregory]"; + mes "(2368/8) + (24*17) = ?"; + next; + input @num; + if(@num == 704) set @score,@score+10; + q17: + mes "[Raspuchin Gregory]"; + mes "(2646/7) + (13*28)=?"; + next; + input @num; + if(@num == 742) set @score,@score+10; + q18: + mes "[Raspuchin 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 "[Raspuchin Gregory]"; + mes "What is the total weight of "; + mes "3 Ring Pommels Saber,"; + mes "4 Caps and 2 Boots?"; + next; + input @num; + if(@num == 550) set @score,@score+10; + q20: + mes "[Raspuchin Gregory]"; + mes "What is the total defense of a "; + mes "Bucler, Coat, Gas Mask, Big"; + mes "Ribbon, Ribbon, Sakkat and"; + mes "Glasses?"; + next; + input @num; + if(@num == 16) set @score,@score+10; + q21: + mes "[Raspuchin 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 "[Raspuchin 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 Raspuchin... Kikiki!"; + next; + mes "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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 "[Raspuchin 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(class == 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(class == 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(class == 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 Juno'^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 Juno. 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 Juno go help them."; + close; + +} + + +//==================================================================================================// +// Job Changer +//==================================================================================================// +alde_alche.gat,101,184,4 script Vincent Carsciallo 122, +{ + mes "[Vincent Carsciallo]"; + if(Class == 5) goto L_Merc; + if(Class == 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; + jobchange 18; + 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; +} \ No newline at end of file diff --git a/npc/jobs/2-2/crusader.txt b/npc/jobs/2-2/crusader.txt new file mode 100644 index 000000000..076ef2ce6 --- /dev/null +++ b/npc/jobs/2-2/crusader.txt @@ -0,0 +1,1164 @@ +////===== eAthena Script ======================================= +//= Crusader Quest +//===== By: ================================================== +//= Made by: Black Dragon +//= Converted by: Shin +//= +//===== Current Version: ===================================== +//= 1.1 +//===== 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 +//============================================================ + +prt_castle.gat,178,99,6 script Lothar 752,{ + mes "[^000080Lothar^000000]"; + if (Class > 0) goto NEXT_0; + if (Class == 0) goto NOV; + mes "Hello "+ strcharinfo(0); + mes "I see that you've registered to the ^008000Swordsman's Association^000000."; + TALK: + next; + mes "[^000080Lothar^000000]"; + mes "If you become a ^800000Swordsman^000000, you will gain the privelege of becoming a ^800000Knight^000000 or ^800000Crusader^000000."; + next; + mes "[^000080Lothar^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 (Class > 1) goto NEXT0; + if (Job_CR == 1) goto CONT; + if (Job_CR == 2) goto CONT0; + if (Job_CR == 3) goto CONT1; + if (Job_CR == 4) goto CONT2; + if (Job_CR > 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 "[^000080Lothar^000000]"; + mes "Oh, all right."; + next; + mes "[^000080Lothar^000000]"; + mes "If you decide to take the path of the ^800000Crusader^000000, feel free to come back."; + close; + JOB: + mes "[^000080Lothar^000000]"; + mes "All right, let me take a look at you first."; + next; + mes "[^000080Lothar^000000]"; + if (readparam(55) != 50) goto SKIP; + set JLCC,1; + set Job_CR,5; + goto TEST1; + SKIP: + if (readparam(55) > 39) goto OKAY; + mes "[^000080Lothar^000000]"; + mes "I'm sorry, but you need to be at least at a job level of 40."; + next; + mes "[^000080Lothar^000000]"; + mes "All 2nd jobs require that."; + close; + OKAY: + if (SkillPoint == 0) goto OKAY0; + JOB0: + mes "[^000080Lothar^000000]"; + mes "In order to become a ^800000Crusader^000000, you have to have used all your available skill points first."; + close; + OKAY0: + mes "[^000080Lothar^000000]"; + mes "Everything looks all right."; + set Job_CR,1; + next; + mes "[^000080Lothar^000000]"; + mes "All right, shall we begin the tests?"; + next; + menu "Yes, of course.",OKAY1,"Not yet.",-; + mes "[^000080Lothar^000000]"; + mes "Oh, all right. Come back when you're ready."; + close; + OKAY1: + if (SkillPoint != 0) goto JOB0; + set Job_CR,2; + mes "[^000080Lothar^000000]"; + mes "All right, the first test requires you to collect items."; + next; + set Job_CR, rand (2); + set Job_CR,Job_CR + 3; + mes "[^000080Lothar^000000]"; + mes "Bring back the following items:"; + if (Job_CR != 3) goto IT; + mes "- 10 ^FF0000Decayed Nail^000000"; + mes "- 10 ^FF0000Danggies^000000"; + mes "- 10 ^FF0000Stinky Scales^000000"; + mes "- 10 ^FF0000Mementos^000000"; + close; + IT: + mes "- 10 ^FF0000Decayed Nail^000000"; + mes "- 10 ^FF0000Danggies^000000"; + mes "- 10 ^FF0000Stinky Scales^000000"; + mes "- 10 ^FF0000Mementos^000000"; + close; + + ASK: + mes "[^000080Lothar^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 "[^000080Lothar^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 "[^000080Lothar^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 "[^000080Lothar^000000]"; + mes "I see... That's a shame."; + next; + mes "[^000080Lothar^000000]"; + mes "Come back if you do want to."; + close; + CONT0: + mes "Well, hm..."; + next; + mes "[^000080Lothar^000000]"; + mes "I was expecting that someone like you would pass."; + next; + mes "[^000080Lothar^000000]"; + mes "Mind to try again?"; + next; + menu "Yes, of course.",OKAY1,"No, I'm all right.",-; + mes "[^000080Lothar^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: Danggie, + mes "You still miss the this item"; + mes "- 10 ^FF0000Danggies^000000"; + set @item, item +1; + ITEM8: + 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; + ITEM9: + if(countitem(934)>=10) goto ITEM10;//Items: Memento, + mes "You still miss the this item"; + mes "- 10 ^FF0000Mementos^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: Danggie, + delitem 959,10;//Items: Stinky Scale, + delitem 934,10;//Items: Memento, + set Job_CR,5; + TEST1: + next; + mes "[^000080Lothar^000000]"; + mes "All right, let's move on to the 2nd test."; + next; + mes "[^000080Lothar^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(932)>=10) goto ITEM11;//Items: Skel-Bone, + mes "You still miss the this item"; + mes "- 10 ^FF0000Skel-Bones^000000"; + set @item, item +1; + ITEM11: + if(countitem(1043)>=10) goto ITEM12;//Items: Orc Claw, + mes "You still miss the this item"; + mes "- 10 ^FF0000Orc Claws^000000"; + set @item, item +1; + ITEM12: + if(countitem(2408)>=1) goto ITEM13;//Items: Ball'n'Chain, + mes "You still miss the this item"; + mes "- 1 ^FF0000Ball 'n Chain^000000"; + set @item, item +1; + ITEM13: + if(countitem(901)>=10) goto ITEM14;//Items: Danggie, + mes "You still miss the this item"; + mes "- 10 ^FF0000Danggie^000000"; + set @item, item +1; + ITEM14: + if (@item== 0) GOTO DONE0; + close; + DONE0: + mes "Good job!"; + mes "You collected everything!"; + delitem 932,10;//Items: Skel-Bone, + delitem 1043,10;//Items: Orc Claw, + delitem 2408,1;//Items: Ball'n'Chain, + delitem 901,10;//Items: Danggie, + set Job_CR,5; + goto TEST1; + CONT3: + if (Job_CR == 8) goto CONT4; + if (Job_CR > 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 "[^000080Lothar^000000]"; + mes "Now to move on to the ^FF8000Knowledge Test^000000."; + mes "Please talk to the Knight at the Cathedral, he will test your knowledge."; + set Job_CR,9; + close; + CONT5: + if (Job_CR == 13) goto CONT6; + if (Job_CR == 14) goto CONT7; + mes "Please go talk to the Knight 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 Job_CR,14; + mes "[^000080Lothar^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 (JLCC != 1) goto OTHR; + getitem (1408),1; + goto END_0; + OTHR: + getitem (1409),1; + END_0: + jobchange 14;// Job: Job_Crusader + set JobLevel,JobLevel+1; + callfunc "F_ClearJobVar"; // clears all job variables for the current player + close; +NEXT0: + if (Class != 2) goto NEXT1; + mes "Hello, welcome to the ^008000Castle of Prontera^000000."; + mes "Hope you have a good day!"; + close; +NEXT1: + if (Class != 3) goto NEXT2; + mes "Good luck in your hunting."; + close; +NEXT2: + if (Class != 4) goto NEXT3; + mes "Good day to you!"; + mes "Hope you do well to find your path."; + close; +NEXT3: + if (Class != 5) goto NEXT4; + mes "Hello, we don't currently need anything, sorry about that."; + close; +NEXT4: + if (Class != 6) goto NEXT5; + mes "Better watch yourself."; + close; +NEXT5: + if (Class != 7) goto NEXT6; + mes "Good day to you, " + strcharinfo(0); + close; +NEXT6: + if (Class != 8) goto NEXT7; + mes "Good day, "+ strcharinfo(0); + mes "I would hope to believe that all is going well."; + close; +NEXT7: + if (Class != 9) goto NEXT8; + mes "Hello, welcome to the ^008000Castle of Prontera^000000."; + mes "Nice to have you wish us."; + close; +NEXT8: + if (Class != 10) goto NEXT9; + mes "Hello, we're not in need of any weapons or armour at the moment, thank you."; + close; +NEXT9: + if (Class != 11) goto NEXT10; + mes "Hello, wish you luck for your success."; + close; +NEXT10: + if (Class != 12) goto NEXT11; + mes "Stay out of trouble, you don't want the guards to come after you, now do you?"; + close; +NEXT11: + if (Class != 14) goto NEXT12; + mes "Good day, "+ strcharinfo(0); + close; +NEXT12: + if (Class != 15) goto NEXT13; + mes "Hello, welcome to the ^008000Castle of Prontera^000000."; + close; +NEXT13: + if (Class != 16) goto NEXT14; + mes "Welcome to the ^008000Castle of Prontera^000000, I hope you enjoy your stay."; + close; +NEXT14: + if (Class != 17) goto NEXT15; + mes "Stay out of trouble if you know what's good for you."; + close; +NEXT15: + if (Class != 18) goto NEXT16; + mes "So, how are the experiments going down in ^00FF00Al de Baran^000000?"; + close; +NEXT16: + if (Class != 19) goto NEXT17; + mes "Welcome to the castle, good sir."; + close; +NEXT17: + if (Class != 20) goto NEXT18; + mes "Good day, miss."; + close; +NEXT18: + if (Class != 22) goto NEXT19; + if (Gender != 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 Pain - Crusader Job Quest - 2nd Test +// By Black Dragon based on the information at RagnaInfo +// +//----------------------------------------------------------------------------------------------------------------------------------------------------- +prt_castle.gat,163,33,0 script Man in Pain 107,{ + + if (Job_CR == 7) goto CONT; + if (Job_CR > 7) goto CONT0; + mes "[^000080Man in Pain^000000]"; + mes "Who... who are you?"; + next; + if (Job_CR == 5) goto CHECK; + + OTHER: + if (Job_CR == 6) goto EXIT1; + mes "[^000080Man in Pain^000000]"; + mes "What do you want?"; + mes "Leave me alone~!"; + close; + CHECK: + if (countitem(2608) == 0) goto NOT;//Items: Rosary, + + mes "[^000080Man in Pain^000000]"; + mes "I see, you're here for the job."; + next; + mes "[^000080Man in Pain^000000]"; + mes "It's torture."; + mes "They send me to that room time and time again."; + next; + mes "[^000080Man in Pain^000000]"; + mes "I've grown awefully weak from it."; + next; + mes "[^000080Man in Pain^000000]"; + mes "But if it's your wish, I will send to there."; + next; + menu "Yes.",-,"On second thought...",EXIT; + mes "[^000080Man in Pain^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 Job_CR,6; + warp "job_cru.gat",23,42; + EXIT0: + mes "[^000080Man in Pain^000000]"; + mes "I'm sorry, there's already another person there right now."; + mes "Please wait a little longer."; + close; + EXIT: + mes "[^000080Man in Pain^000000]"; + mes "Please do not disturb me then!"; + close; + NOT: + mes "[^000080Man in Pain^000000]"; + mes "Leave me alone!"; + mes "Can't you leave someone in pain alone ?"; + close; + + CONT: + mes "[^000080Man in Pain^000000]"; + mes "I see you've passed. Good work."; + set Job_CR,8; + close; + EXIT1: + mes "[^000080Man in Pain^000000]"; + mes "Sorry but you're going to need to go again."; + goto GO; + CONT0: + mes "[^000080Man in Pain^000000]"; + mes "There is nothing else you need from me."; + mes "Let me be..."; + close; +} + +//----------------------------------------------------------------------------------------------------------------------------------------------------- +// +// Arthur - Crusader Job Quest - Knowledge Test +// By Black Dragon based on the information at RagnaInfo +// +//----------------------------------------------------------------------------------------------------------------------------------------------------- +prt_church.gat,94,116,0 script Arthur 56,{ + mes "[^000080Arthur^000000]"; + if (Class != 0) goto NEXT_o; + mes "Hello young traveler."; + close; +NEXT_o: + if (Class != 1) goto NEXT0; + mes "Hello," + strcharinfo(0); + next; + if (Job_CR != 9) goto EXIT; + BEGIN: + menu "Take the Knowledge test.",-,"Nothing.",EXIT; + mes "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^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 "[^000080Arthur^000000]"; + mes "You got "+ @ANS +" / 10 questions correct."; + next; + if (Job_CR != 10) goto secND; + if (@ANS < 8) goto NO; + PASS: + mes "[^000080Arthur^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 the Guardian Knight at ^008000Prontera Castle^000000."; + set Job_CR, 11; + close; + NO: + set Job_CR, 10; + mes "[^000080Arthur^000000]"; + mes "I'm sorry, you didn't get enough to qualify."; + next; + mes "[^000080Arthur^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 "[^000080Arthur^000000]"; + mes "I'm sorry, you didn't get enough correct."; + close; + EXIT: + if (Job_CR == 10) goto BEGIN; + if (Job_CR > 10) goto FINISH; + close; + FINISH: + mes "[^000080Arthur^000000]"; + mes "Please go to the Guardian Knight at ^008000Prontera Castle^000000 to continue on to the ^FF8000Purification Test^000000."; + close; +NEXT0: + if (Class != 2) goto NEXT1; + mes "Hello, welcome to the ^008000Prontera ChivalryY^000000."; + mes "Hope you have a good day!"; + close; +NEXT1: + if (Class != 3) goto NEXT2; + mes "Good luck in your hunting."; + close; +NEXT2: + if (Class != 4) goto NEXT3; + mes "Good day to you!"; + mes "Hope you do well to find your path."; + close; +NEXT3: + if (Class != 5) goto NEXT4; + mes "Hello, we don't currently need anything, sorry about that."; + close; +NEXT4: + if (Class != 6) goto NEXT5; + mes "Better watch yourself."; + close; +NEXT5: + if (Class != 7) goto NEXT6; + mes "Good day to you, "+ strcharinfo(0); + close; +NEXT6: + if (Class != 8) goto NEXT7; + mes "Good day, " + strcharinfo(0); + mes "I would hope to believe that all is going well."; + close; +NEXT7: + if (Class != 9) goto NEXT8; + mes "Hello! Nice to have you wish us."; + close; +NEXT8: + if (Class != 10) goto NEXT9; + mes "Hello, we're not in need of any weapons or armour at the moment, thank you."; + close; +NEXT9: + if (Class != 11) goto NEXT10; + mes "Hello, wish you luck for your success."; + close; +NEXT10: + if (Class != 12) goto NEXT11; + mes "Stay out of trouble, you don't want the guards to come after you, now do you?"; + close; +NEXT11: + if (Class != 14) goto NEXT12; + mes "Good day" + strcharinfo(0); + close; +NEXT12: + if (Class != 15) goto NEXT13; + mes "Hello, welcome to the ^008000Knight's Headquarters^000000."; + close; +NEXT13: + if (Class != 16) goto NEXT14; + mes "Welcome to the ^008000Knight's Headquarters^000000, I hope you enjoy your stay."; + close; +NEXT14: + if (Class != 17) goto NEXT15; + mes "Stay out of trouble if you know what's good for you."; + close; +NEXT15: + if (Class != 18) goto NEXT16; + mes "So, how are the experiments going down in ^00FF00Al de Baran^000000?"; + close; +NEXT16: + if (Class != 19) goto NEXT17; + mes "Welcome to the castle, good sir."; + close; +NEXT17: + if (Class != 20) goto NEXT18; + mes "Good day, miss."; + close; +NEXT18: + if (Class != 22) goto NEXT19; + if (Gender != 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; +} + +//----------------------------------------------------------------------------------------------------------------------------------------------------- +// +// Harrison - Crusader Job Quest - Purification Test +// By Black Dragon based on the information at RagnaInfo +// +//----------------------------------------------------------------------------------------------------------------------------------------------------- +prt_in.gat,83,97,0 script Harrison 734,{ + mes "[^000080Harrison^000000]"; + if (Class != 0) goto NEXT_o; + mes "Hello, young traveler."; + mes "Welcome."; + close; +NEXT_o: + if (Class != 1) goto NEXT0; + if (Job_CR == 11) goto PART1; + if (Job_CR == 12) goto PART2; + if (Job_CR != 13) goto EXIT; + mes "Well done!"; + mes "Go talk to ^000080Lothar^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 "[^000080Harrison^000000]"; + mes "Oh, okay then."; + close; + PART1: + mes "Hello, " + strcharinfo(0); + mes "I see that you've passed thus far."; + next; + mes "[^000080Harrison^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 "[^000080Harrison^000000]"; + mes "Let me make sure it's empty first."; + next; + if( getmapusers("job_cru.gat")>0 ) goto EXIT1; + savepoint "prt_in.gat",81,100; + set Job_CR, 12; + warp "job_cru",167,175; + EXIT1: + mes "[^000080Harrison^000000]"; + mes "I'm sorry, but someone else is inside at the moment."; + close; + EXIT0: + mes "[^000080Harrison^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 "[^000080Harrison^000000]"; + mes "If you do, you'll find yourself coming back to me for one of the tests."; + close; + EXIT2: + if( getmapusers("job_cru.gat") != 0 ) goto PART2A; + mes "Well done!"; + set Job_CR,13; + next; + mes "Return to ^000080Lothar^000000 and he will make you a ^800000Crusader^000000."; + close; +NEXT0: + if (Class != 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 (Class != 3) goto NEXT2; + mes "Welcome, I hope you have a great day!"; + close; +NEXT2: + if (Class != 4) goto NEXT3; + mes "Good day to you!"; + close; +NEXT3: + if (Class != 5) goto NEXT4; + mes "Hello, sorry but I'm not in need of anything."; + close; +NEXT4: + if (Class != 6) goto NEXT5; + mes "Don't think you can get away with theft in ^00FF00Prontera^000000, we have soldiers watching everywhere."; + close; +NEXT5: + if (Class != 7) goto NEXT6; + mes "Welcome!"; + mes "I hope you have a great day!"; + close; +NEXT6: + if (Class != 8) goto NEXT7; + mes "Welcome to ^00FF00Prontera^000000!"; + mes "Hope you have a good day!"; + close; +NEXT7: + if (Class != 9) goto NEXT8; + mes "Hello! Glad to see people of your stature here!"; + close; +NEXT8: + if (Class != 10) goto NEXT9; + mes "I appreciate your presence, but I don't need anything at the moment."; + mes "Sorry about that."; + close; +NEXT9: + if (Class != 11) goto NEXT10; + mes "How goes the hunting campaign?"; + mes "Hope everything is going all right."; + close; +NEXT10: + if (Class != 12) goto NEXT11; + mes "Stay out of trouble, you hear me?"; + close; +NEXT11: + if (Class != 14) goto NEXT12; + mes "Welcome! Good day to you!"; + close; +NEXT12: + if (Class != 15) goto NEXT13; + mes "Good day, I hope your stay in ^00FF00Prontera^000000 will be a peaceful one."; + close; +NEXT13: + if (Class != 16) goto NEXT14; + mes "It's good to see people of your stature here in ^00FF00Prontera^000000!"; + close; +NEXT14: + if (Class != 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 (Class != 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 (Class != 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 (Class != 20) goto NEXT18; + mes "Welcome, good day to you!"; + close; +NEXT18: + if (Class != 22) goto NEXT19; + if (Gender != 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 dead -1,{ + killmonster "job_cru.gat","dead"; + enablenpc "Test_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 Test_2 139,8,8,{ + + if (Job_CR != 6) goto EXIT; + set @CR_etmp,1; + announce "Please endure here and go to exit",8; + + monster "job_cru.gat",10,43,"Ghoul",1423,1,"dead"; + monster "job_cru.gat",14,47,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",26,46,"Injustice",1446,1,"dead"; + monster "job_cru.gat",31,46,"Requium",1468,1,"dead"; + monster "job_cru.gat",16,52,"Raydric Archer",1453,0,"dead"; + monster "job_cru.gat",22,53,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",28,49,"Injustice",1446,1,"dead"; + monster "job_cru.gat",12,54,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",17,55,"Ghoul",1423,1,"dead"; + monster "job_cru.gat",21,57,"Injustice",1446,1,"dead"; + monster "job_cru.gat",30,58,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",11,64,"Raydric Archer",1453,1,"dead"; + monster "job_cru.gat",19,67,"Injustice",1446,1,"dead"; + monster "job_cru.gat",24,62,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",13,70,"Ghoul",1423,1,"dead"; + monster "job_cru.gat",18,69,"Injustice",1446,1,"dead"; + monster "job_cru.gat",29,67,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",32,68,"Requium",1468,1,"dead"; + monster "job_cru.gat",16,75,"Raydric Archer",1453,1,"dead"; + monster "job_cru.gat",21,74,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",27,76,"Injustice",1446,1,"dead"; + monster "job_cru.gat",14,78,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",19,76,"Ghoul",1423,1,"dead"; + monster "job_cru.gat",24,79,"Requium",1468,1,"dead"; + monster "job_cru.gat",14,83,"Raydric Archer",1453,1,"dead"; + monster "job_cru.gat",18,85,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",22,84,"Injustice",1446,1,"dead"; + monster "job_cru.gat",33,86,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",13,89,"Ghoul",1423,1,"dead"; + monster "job_cru.gat",17,92,"Injustice",1446,1,"dead"; + monster "job_cru.gat",23,90,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",26,88,"Ghoul",1423,1,"dead"; + monster "job_cru.gat",17,97,"Khalitzburg",1438,1,"dead"; + monster "job_cru.gat",23,100,"Injustice",1446,1,"dead"; + monster "job_cru.gat",31,101,"Ghoul",1423,1,"dead"; + monster "job_cru.gat",13,103,"Raydric Archer",1453,1,"dead"; + monster "job_cru.gat",22,105,"Injustice",1446,1,"dead"; + monster "job_cru.gat",30,107,"Khalitzburg",1438,1,"dead"; + disablenpc "Test_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 Exit_1 139,1,1,{ + +if (@CR_etmp == 0) goto JUMP; + set Job_CR,7; + enablenpc "Test_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 kill -1,{ + + if (@cru2 == 43) goto good; + + set @cru2,@cru2 +1; + announce " You killed another monster",3; + end; + + good: + announce " You killed all monster, you may go to exit",3; + end; +} + + +job_cru.gat,167,175,0 script Test_4 139,1,1,{ + + if(Job_CR != 12) goto EXIT; + set @CRU2,1; + announce "Defeat all the enemies.",3; + monster "job_cru.gat",163,42,"Bongun",1188,1,"kill"; + monster "job_cru.gat",171,66,"Bongun",1188,1,"kill"; + monster "job_cru.gat",163,89,"Bongun",1188,1,"kill"; + monster "job_cru.gat",171,115,"Bongun",1188,1,"kill"; + monster "job_cru.gat",166,141,"Bongun",1188,1,"kill"; + monster "job_cru.gat",168,166,"Bongun",1188,1,"kill"; + monster "job_cru.gat",164,170,"Munak",1026,1,"kill"; + monster "job_cru.gat",173,153,"Munak",1026,1,"kill"; + monster "job_cru.gat",164,138,"Munak",1026,1,"kill"; + monster "job_cru.gat",166,128,"Munak",1026,1,"kill"; + monster "job_cru.gat",171,117,"Munak",1026,1,"kill"; + monster "job_cru.gat",163,102,"Munak",1026,1,"kill"; + monster "job_cru.gat",172,84,"Munak",1026,1,"kill"; + monster "job_cru.gat",162,76,"Munak",1026,1,"kill"; + monster "job_cru.gat",167,65,"Munak",1026,1,"kill"; + monster "job_cru.gat",171,58,"Munak",1026,1,"kill"; + monster "job_cru.gat",162,48,"Munak",1026,1,"kill"; + monster "job_cru.gat",170,33,"Munak",1026,1,"kill"; + monster "job_cru.gat",170,26,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",166,37,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",171,47,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",165,61,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",172,65,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",163,77,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",164,86,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",165,98,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",170,101,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",163,110,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",164,117,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",166,129,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",165,139,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",166,151,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",168,160,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",162,169,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",171,171,"Skeleton",1076,1,"kill"; + monster "job_cru.gat",162,32,"Zombie",1015,1,"kill"; + monster "job_cru.gat",165,51,"Zombie",1015,1,"kill"; + monster "job_cru.gat",172,73,"Zombie",1015,1,"kill"; + monster "job_cru.gat",170,92,"Zombie",1015,1,"kill"; + monster "job_cru.gat",173,111,"Zombie",1015,1,"kill"; + monster "job_cru.gat",170,124,"Zombie",1015,1,"kill"; + monster "job_cru.gat",171,147,"Zombie",1015,1,"kill"; + monster "job_cru.gat",163,162,"Zombie",1015,1,"kill"; + disablenpc "Test_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 Exit4 139,2,2,{ +enablenpc "Test_4"; +warp "prt_in.gat",81,100; +} diff --git a/npc/jobs/2-2/noquest/crusader.txt b/npc/jobs/2-2/noquest/crusader.txt new file mode 100644 index 000000000..b977baf71 --- /dev/null +++ b/npc/jobs/2-2/noquest/crusader.txt @@ -0,0 +1,54 @@ +//Crusader NPC for Athena by DiaDz +//1.1 Added SkillPoint check [Lupus] + +//Crusader prt_in 88 103 +prt_in.gat,88,103,3 script Crusader Trainer 752,{ + if(Class==14) goto crus; + if(Class !=1) goto notsword; + + mes "[Crusader Trainer]"; +mes "Welcome Have you come to Join our ranks?."; + next; + mes "[Crusader Trainer]"; + mes "How may I be of Service to you?"; + next; + menu "Change Job into a Crusader.",case1,"The Requirements.",case2,"Quit.",case3; + case1: + if(JobLevel < 40) goto notlvl; + mes "[Crusader Trainer]"; + if(SkillPoint > 0) mes "You need to use up all of your skill points before I can make you a Crusader."; + if(SkillPoint > 0) close; + mes "Welcome to the Crusaders Guild"; + jobchange 14;// Job: Job_Crusader + close; + + notlvl: + mes "[Crusader Trainer]"; + mes "you need to be at least Job level 40"; + close; + + case2: + mes "[Crusader Trainer]"; + mes "You need to be a Swordsman of Job Level 40 to become a Crusader"; + next; + mes "[Crusader Trainer]"; + mes "We are destined to protect all who live in Midgard"; + close; + + case3: + mes "[Crusader Trainer]"; + mes "Please come again sometime"; + close; + + crus: + mes "[Crusader Trainer]"; + mes "You are already a Mighty Crusader"; + mes "May the Blessings of the Gods go with you"; + close; + + notsword: + mes "[Crusader Trainer]"; + mes "I'm sorry but there is nothing I can help you with."; + mes "Only stout Swordsman can follow the holy path in order to become a 'Crusader'."; + close; +} diff --git a/npc/jobs/2-2/noquest/dancer-bard.txt b/npc/jobs/2-2/noquest/dancer-bard.txt new file mode 100644 index 000000000..352708ac2 --- /dev/null +++ b/npc/jobs/2-2/noquest/dancer-bard.txt @@ -0,0 +1,72 @@ +//Dancer/Bard NPC for Athena by DiaDz +//No Quests, just npc on location +//1.1 Added SkillPoint check [Lupus] + +//Dancer & Bard - Comodo 189 166 4_F_07 +comodo.gat,189,166,4 script Performance Master 741,{ + if(Class==19) goto bard; + if(Class==20) goto dance; + if(Class !=3) goto notarch; + + mes "[Performance Master]"; + mes "Welcome to Comodo and the Performers Guild."; + next; + mes "[Performance Master]"; + mes "What can I do for you , a Song or Dance perhaps?"; + next; + menu "Change Job into a Bard/Dancer.",case1,"The Requirements.",case2,"Quit.",case3; + case1: + if(JobLevel < 40) goto notlvl; + if(sex==1) goto M; + mes "[Performance Master]"; + if(SkillPoint > 0) mes "You need to use up all of your skill points before I can make you a Dancer."; + if(SkillPoint > 0) close; + mes "Welcome Glorious Dancer"; + jobchange 20;// Job: Job_Dancer + close; + + M: + mes "[Performance Master]"; + if(SkillPoint > 0) mes "You need to use up all of your skill points before I can make you a Bard."; + if(SkillPoint > 0) close; + mes "Welcome Master Bard"; + jobchange 19;// Job: Job_Bard + close; + + notlvl: + mes "[Performance Master]"; + mes "you need to be at least Job level 40"; + close; + + case2: + mes "[Performance Master]"; + mes "Archers of Job Level 40 and above may become Dancers or Bards"; + next; + mes "[Performance Master]"; + mes "Its a Great Time to become a Bard or Dancer they are in Much demand!"; + mes "You can't miss the perfect chance!"; + close; + + case3: + mes "[Performance Master]"; + mes "Please come again sometime"; + close; + + dance: + mes "[Performance Master]"; + mes "You are already a Glorious Dancer."; + mes "Roam our world and bring joy and harmony to the masses of Midgard."; + close; + + bard: + mes "[Performance Master]"; + mes "You are already a Masterful Bard."; + mes "Roam our world and bring joy and harmony to the masses of Midgard."; + close; + + notarch: + mes "[Performance Master]"; + mes "I'm sorry but there is nothing I can help you with."; + mes "Only Archers are nimble and dexterous enough to be as graceful as a 'Dancer' or 'Bard'."; + close; +} diff --git a/npc/jobs/2-2/noquest/monk.txt b/npc/jobs/2-2/noquest/monk.txt new file mode 100644 index 000000000..36072dcdd --- /dev/null +++ b/npc/jobs/2-2/noquest/monk.txt @@ -0,0 +1,54 @@ +//Monk NPC for Athena by DiaDz +//No Quests, just npc on location +//1.1 Added SkillPoint check [Lupus] + +//Monk Job Change Monk_in 99 64 4_M_MONK (new temp 55 cause of error) +monk_in.gat,99,64,5 script Master Monk 753,{ + if(Class==15) goto monk; + if(Class !=4) goto notaco; + + mes "[Master Monk]"; + mes "Good Day,This is the Monk's Guild."; + next; + mes "[Master Monk]"; + mes "How may I be of Service to you?"; + next; + menu "Change Job into a Monk.",Lcase1,"The Requirements.",Lcase2,"Quit.",Lcase3; + Lcase1: + if(JobLevel < 40) goto notlvl; + mes "[Master Monk]"; + if(SkillPoint > 0) mes "You need to use up all of your skill points before I can make you a Monk."; + if(SkillPoint > 0) close; + mes "Your Welcome to Stay here at the Abbey since you are now a Monk."; + jobchange 15;// Job: Job_Monk + close; + + notlvl: + mes "[Master Monk]"; + mes "you need to be at least Job level 40"; + close; + + Lcase2: + mes "[Master Monk]"; + mes "You need to be a Acolyte of Job Level 40 to become a Monk"; + next; + mes "[Master Monk]"; + mes "We Monks are the masters of Hand to Hand Combat"; + close; + + Lcase3: + mes "[Master Monk]"; + mes "Please come again sometime"; + close; + + monk: + mes "[Master Monk]"; + mes "You are already a Monk of much Skill and prowess"; + close; + + notaco: + mes "[Master Monk]"; + mes "I'm sorry but there is nothing I can help you with."; + mes "Divine fists can only be forged by Divine Acolytes in order to become a 'Monk'."; + close; +} diff --git a/npc/jobs/2-2/rogue.txt b/npc/jobs/2-2/rogue.txt new file mode 100644 index 000000000..15f37ba25 --- /dev/null +++ b/npc/jobs/2-2/rogue.txt @@ -0,0 +1,943 @@ +//===== eAthena Script ======================================= +//= Rogue Job Quest +//===== By: ================================================== +//= kobra_k88 +//===== Current Version: ===================================== +//= 1.0 +//===== 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: ================================= +//= Working. +//============================================================ + + + +//=======================================================================================================// +// Markie: Test 1 and Jobchange // +//***********************************************************************************************************************************************************// +in_rogue.gat,363,123,3 script Markie 747,{ + + mes "[Markie]"; + if(Class == Job_Thief) goto L_Thief; + if(Class == 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; + savepoint "in_rogue.gat",366,114; + set @score, 0; + set ROGUE_Q, 1; + set @temp, rand(2); + if(@temp == 1) goto L_QSet2; + + L_QSet1: + mes "[Markie]"; + mes "1) What is the added flee rate that a Thief recieves when the ^5533FFImprove Dodge^000000 skill is ^5533FFmastered^000000?"; + next; + menu "30",-, "40",sM1_1, "160",sM1_1, "20",sM1_1; + + set @score, @score + 10; + + sM1_1: + + mes "[Markie]"; + mes "2) Choose a monster that can detect a hidden or cloaked character?"; + next; + menu "Worm Tail",-, "Argos",sM1_2, "Mummy",sM1_2, "Soldier Skeleton",sM1_2; + + set @score, @score + 10; + + sM1_2: + + mes "[Markie]"; + mes "3) Where is the Rogue guild located?"; + next; + menu "Comodo",sM1_3, "Kokomo Beach",sM1_3, "Pharos Lightouse",-, "Morroc",sM1_3; + + set @score, @score + 10; + + sM1_3: + + mes "[Markie]"; + mes "4) In which of the following towns, can you become a Thief?"; + next; + menu "Comodo",sM1_4, "Lutie",sM1_4, "Alberta",sM1_4, "Morroc",-; + + set @score, @score + 10; + + sM1_4: + + mes "[Markie]"; + mes "5) Choose the card that does ^FF3355not^000000 have an effect on a players ^5533FFDEX stat^000000..."; + next; + menu "Rocker Card",sM1_5, "Mummy Card",-, "Zerom Card",sM1_5, "Drops",sM1_5; + + set @score, @score + 10; + + sM1_5: + + mes "[Markie]"; + mes "6) What do you think is cool about being a Rogue?"; + next; + menu "Being a bad ass",sM1_6, "Being a hypocrite",sM1_6, "Being shameless",sM1_6, "Having excellent attack strength",-; + + set @score, @score + 10; + + sM1_6: + + mes "[Markie]"; + mes "7) At what job level can you change from a Thief to a Rogue?"; + next; + menu "At job lvl 30",sM1_7, "At job lvl 35",sM1_7, "At job lvl 40",-, "At job lvl 50",-; + + set @score, @score + 10; + + sM1_7: + + mes "[Markie]"; + mes "8) If you wanted to dye your hair a different color, where would you have to go to do that?"; + next; + menu "Building in SouthWestern part of Morroc",sM1_8, "Building in SouthWestern part of Prontera",-, + "Building in SouthEastern part of Morroc",sM1_8, "Building in NorthEastern part of Prontera",sM1_8; + + set @score, @score + 10; + + sM1_8: + + mes "[Markie]"; + mes "9) What mushrooms do you need to steal in order to become a Thief?"; + next; + menu "Orange Gooey Mushrooms",-, "Red Hairy Mushrooms",sM1_9, "Orange Net Mushrooms",-, "Orange Sticky Mushrooms",sM1_9; + + set @score, @score + 10; + + sM1_9: + + mes "[Markie]"; + mes "10) Which of these cards is ^FF3355useless^000000 to a Rogue?"; + next; + menu "Whisper Card",sM1_10, "Elder Willow Card",-, "Zerom Card",sM1_10, "Matyr Card",sM1_10; + + set @score, @score + 10; + + sM1_10: + goto L_Score; + + + L_QSet2: + mes "[Markie]"; + mes "1) What skill do you need to learn before you can learn ^5533FFStalk^000000?"; + next; + menu "Hiding",-, "Steal",sM2_1, "Improve Dodge",sM2_1, "Bash",sM2_1; + + set @score, @score + 10; + + sM2_1: + + mes "[Markie]"; + mes "2) How much more of a discount can a Rogue get with the ^5533FFHaggel^000000 skill than a merchant can with the ^5533FFDiscount^000000 skill?"; + next; + menu "3%",sM2_2, "2%",sM2_2, "1%",-, "0%",sM2_2; + + set @score, @score + 10; + + sM2_2: + + mes "[Markie]"; + mes "3) What is the correct description for the skill ^5533FFMug^000000?"; + next; + menu "Steal Items from players",sM2_3, "Steal Items from monsters",sM2_3, "Steal Zeny from monsters",-, "Steal Zeny from players",sM2_3; + + set @score, @score + 10; + + sM2_3: + + mes "[Markie]"; + mes "4) How many Rogues are required to activate the skill ^5533FFSlyness^000000?"; + next; + menu "1 Rogue + 2 Assassins",sM2_4, "2 Rogues + 1 Thief",sM2_4, "4 Thieves",sM2_4, "2 or more Rogues",-; + + set @score, @score + 10; + + sM2_4: + + mes "[Markie]"; + mes "5) After increasing ^5533FFDivest Helm^000000 to level 5, what other skill becomes available for you learn?"; + next; + menu "Envenom",sM2_5, "Strip Tease",sM2_5, "Venom Splasher",sM2_5, "Divest Shield",-; + + set @score, @score + 10; + + sM2_5: + + mes "[Markie]"; + mes "6) Choose a skill that allows its user to move while being hidden?"; + next; + menu "Hiding",sM2_6, "Back Slide",sM2_6, "Stalk",-, "Sand Attack",sM2_6; + + set @score, @score + 10; + + sM2_6: + + mes "[Markie]"; + mes "7) Choose the card that increases the ^5533FFaccuracy rate^000000 of its owner?"; + next; + menu "Andre",sM2_7, "Familiar",sM2_7, "Mummy",-, "Marina",sM2_7; + + set @score, @score + 10; + + sM2_7: + + mes "[Markie]"; + mes "8) Choose the monster that receives more damage when attacked by a weapon with a Vadon card attached to it?"; + mes "(Vadon card inflicts 20% more damage to fire property monsters)"; + next; + menu "Vadon",sM2_8, "Deviruchi",sM2_8, "Elder Willow",-, "Baphomet",sM2_8; + + set @score, @score + 10; + + sM2_8: + + mes "[Markie]"; + mes "9) How much SP does the ^5533FFDouble Attack^000000 skill require when used with a dagger?"; + next; + menu "15 SP",sM2_9, "No SP needed",-, "10 SP",sM2_9, "54 SP",sM2_9; + + set @score, @score + 10; + + sM2_9: + + mes "[Markie]"; + mes "10) Choose an effective dagger to use in the Byalan Dungeon?"; + next; + menu "Wind Main-Gauche",-, "Ice Main-Gauche",sM2_10, "Earth Main-Gauche",sM2_10, "Fire Main-Gauche",sM2_10; + + set @score, @score + 10; + + sM2_10: + + + L_Score: + mes "[Markie]"; + mes "Okay, those are all of the questions I have. Now that wasn't so bad was it sweetie?"; + mes "I hope you don't mind, but I've been grading your answers."; + next; + mes "[Markie]"; + mes "I like to give people scores on their interviews so that they can know how well they did."; + mes "It looks like you got a ^FF3355" + @score +"^000000/100............"; + next; + mes "[Markie]"; + 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; + 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; + mes "[Markie]"; + mes "Tada! Congratulations on becoming a Rogue. You showed a lot of effort and deserve a reward for it......"; + setlook 7,0; + jobchange 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 == 40) 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; +} + + + +//=======================================================================================================// +// Mr. Smith: Tests 2 and 3 // +//***********************************************************************************************************************************************************// +in_rogue.gat,376,23,3 script Mr. Smith 57,{ + + mes "[Mr. Smith]"; + if(Class == Job_Thief) goto L_Thief; + if(Class == 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 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 "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 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 "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(Class!=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; +} + + diff --git a/npc/jobs/2-2/sage.txt b/npc/jobs/2-2/sage.txt new file mode 100644 index 000000000..38d128d11 --- /dev/null +++ b/npc/jobs/2-2/sage.txt @@ -0,0 +1,2146 @@ +//===== eAthena Script ======================================= +//= Sage Job Quest +//===== By: ================================================== +//= jAthena (1.0) - I guess +//= Unknown Translator (2.0) +//= Darkchild (3.0) +//===== Current Version: ===================================== +//= 3.0 +//===== 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 +//============================================================ + +//================================== +//Sage Castle +//================================== +yuno_in02.gat,38,61,4 script Magic Academy Headmaster 743,{ + if (Class == 16) goto L_Menu3_3; + if (Class != 2) goto L_Menu2_1; + if (job2nd_sage == 11) goto L_Menu3_1; + if (job2nd_sage >= 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: + jobchange 16; + 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 (Class == 16) goto L_Menu3_2; + if (Class != 2) goto L_Menu1_1; + if (job2nd_sage == 11) goto L_Menu3_1; + if (job2nd_sage2 == 8) goto L_Menu2_1; + if (job2nd_sage2 == 9) goto L_Menu2_3; + if (job2nd_sage2 == 10) goto L_Menu2_5; + if (job2nd_sage2 == 11) goto L_ThesisStart1; + if (job2nd_sage == 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 job2nd_sage2,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 job2nd_sage2,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 job2nd_sage2,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 job2nd_sage2,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 Rabbit Headband",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 Rabbit Headband."; + 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 "Rabbit Headbands 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 "Rabbit Headbands 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 job2nd_sage,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 (Class == 16) goto L_Menu5_4; + if (Class != 2) goto L_Menu1_1; + if (job2nd_sage == 11) goto L_Menu5_3; + if ((job2nd_sage2 >= 1) && (job2nd_sage2 <= 3)) goto L_Menu3_1; + if ((job2nd_sage2 >= 4) && (job2nd_sage2 <= 6)) goto L_Menu4_1; + if (job2nd_sage2 == 7) goto L_Menu5_1; + if (job2nd_sage == 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 job2nd_sage2,1; + mes "^3051FD5x Tendons^000000"; + mes "^3051FD5x Nippers^000000"; + mes "^3051FD5x Sharp Scales^000000"; + next; + goto L_Menu2_6; + L_Menu2_4: + set job2nd_sage2,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 job2nd_sage2,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) && (job2nd_sage2 == 1)) goto L_Menu3_4; + if ((countitem(966) >= 5) && (countitem(960) >= 5) && (countitem(950) >= 5) && (job2nd_sage2 == 2)) goto L_Menu3_4; + if ((countitem(1052) >= 5) && (countitem(962) >= 5) && (countitem(1023) >= 5) && (job2nd_sage2 == 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 (job2nd_sage2 == 2) goto L_Menu3_2; + if (job2nd_sage2 == 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_5,"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 Deva",-; +//================================== +//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 Penomeni and starfish 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 Penomeni and starfish 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 job2nd_sage2,4; + mes "^3051FD5x Cobweb^000000"; + mes "^3051FD5x Shell^000000"; + mes "^3051FD5x Insect Feeler^000000"; + next; + goto L_Menu2_6; + L_Menu3_10: + set job2nd_sage2,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 job2nd_sage2,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) && (job2nd_sage2 == 4)) goto L_Menu4_4; + if ((countitem(1057) >= 5) && (countitem(946) >= 5) && (countitem(947) >= 5) && (job2nd_sage2 == 5)) goto L_Menu4_4; + if ((countitem(1031) >= 5) && (countitem(955) >= 5) && (countitem(1013) >= 5) && (job2nd_sage2 == 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 (job2nd_sage2 == 5) goto L_Menu4_2; + if (job2nd_sage2 == 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 job2nd_sage2,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) && (job2nd_sage2 == 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 job2nd_sage,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,{ + if (Class == 16) goto L_Menu6_4; + if (Class != 2) goto L_Menu1_1; + if (job2nd_sage == 11) goto L_Menu6_3; + if (job2nd_sage >= 4) goto L_Menu6_2; + if (job2nd_sage == 3) goto L_Menu6_1; + if (job2nd_sage == 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 and 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 job2nd_sage,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) >= 1) && (countitem(1007) >= 1)) goto L_Menu5_4; + if (Zeny < 70000) goto L_Menu5_2; + set Zeny,Zeny-70000; + set job2nd_sage,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 (job2nd_sage == 3) goto L_Menu5_6; + if ((countitem(1006) >= 1) || (countitem(1007) >= 1)) goto L_Menu5_7; + if (Zeny < 70000) goto L_Menu5_2; + set Zeny,Zeny-70000; + set job2nd_sage,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 job2nd_sage,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 (job2nd_sage != 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: +//================================== +//mes–¢‰ñŽû + if (Zeny < 30000) goto L_Menu5_8; + delitem 916,50; + delitem 914,50; + delitem 705,50; + delitem 949,50; + set Zeny,Zeny-30000; + set job2nd_sage,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 job2nd_sage,3; + next; + goto L_Menu5_5; + L_Menu5_4: + delitem 1006,1; + delitem 1007,1; + set job2nd_sage,3; + mes "[Mathias]"; + mes "Oh, you have the special items."; + mes "I'll accept those in lieu of tuition."; + next; + goto L_Menu5_5; + L_Menu5_7: + delitem 1006,1; + delitem 1007,1; + set job2nd_sage,3; + mes "[Mathias]"; + mes "Oh, you have the special items."; + mes "I'll accept those 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 (Class == 16) goto L_Menu4_5; + if (Class != 2) goto L_Menu1_1; + if (job2nd_sage == 5) goto L_Menu2_1; + if (job2nd_sage == 6) goto L_Menu2_3; + if (job2nd_sage == 7) goto L_Menu3_1; + if (job2nd_sage == 8) goto L_Menu4_1; + if (job2nd_sage == 9) goto L_Menu4_2; + if (job2nd_sage == 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 (job2nd_sage == 3) goto L_Menu1_2; + if (job2nd_sage >= 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 job2nd_sage,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 job2nd_sage,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 job2nd_sage,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 (Class == 16) goto L_Menu2_2; + if (Class != 2) goto L_Menu1_1; + if (job2nd_sage == 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 (Class == 16) goto L_Menu3_4; + if (Class != 2) goto L_Menu1_1; + if (job2nd_sage == 11) goto L_Menu3_3; + if (job2nd_sage >= 6) goto L_Menu3_2; + if (job2nd_sage == 3) goto L_Menu1_2; + if (job2nd_sage == 4) goto L_Menu2_1; + if (job2nd_sage == 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 job2nd_sage,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 Rabbit Headband?"; + 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 job2nd_sage,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 mapflag nobranch dummy +job_sage.gat mapflag noteleport dummy +job_sage.gat mapflag nopenalty dummy +job_sage.gat mapflag nosave SavePoint + +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 job2nd_sage,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; +} -- cgit v1.2.3-70-g09d2