diff options
Diffstat (limited to 'npc/pre-re/jobs/1-1/merchant.txt')
-rw-r--r-- | npc/pre-re/jobs/1-1/merchant.txt | 1161 |
1 files changed, 1104 insertions, 57 deletions
diff --git a/npc/pre-re/jobs/1-1/merchant.txt b/npc/pre-re/jobs/1-1/merchant.txt index 4b7e091f0..e5fd17c84 100644 --- a/npc/pre-re/jobs/1-1/merchant.txt +++ b/npc/pre-re/jobs/1-1/merchant.txt @@ -1,16 +1,35 @@ //===== rAthena Script ======================================= -//= Renewal Merchant Job Change +//= Merchant Job Quest //===== By: ================================================== -//= Kisuka +//= kobra_k88; L0ne_W0lf //===== Current Version: ===================================== -//= 1.0 +//= 2.3 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= -//= Job Change to Merchant Class +//= [Aegis Conversion] +//= Job quest for Merchant classes //===== Additional Comments: ================================= -//= 1.0 First Version. [Kisuka] +//= Fully working +//= v1.1 Added instant job change for High Novice [Lupus] +//= v1.3 Added Baby Class support [Lupus] +//= v1.4 Optimised and moved first checker to Jfunc1-1 [massdriller] +//= 1.5 Changed Prontera->Izlude teleport price to 600 [Lupus] +//= 1.5.1 Removed Duplicates [Silent] +//= 1.5.2 Now saves/restores all quest skills [Lupus] +//= 1.6 Merged back JFunc, CHANGED NUMBERS TO CONSTANTS [Lupus] +//= 1.7 Updated to use Free Ticket for Kafra [Lupus] +//= 1.8 Rescripted to Aegis 10.3 stadards. [L0ne_W0lf] +//= No longer uses function "F_ToHigh" +//= 1.9 Bugfixes, thanks to Barron-Monster. [L0ne_W0lf] +//= 1.9a Added a missing next; (Barron-Monster) [L0ne_W0lf] +//= 1.9b Typo. "nextl" -> "next;" (Barron-Monster) [L0ne_W0lf] +//= 2.0 Should "fix" the problem with the Biliban Kafra. [L0ne_W0lf] +//= 2.1 Fixed mistake in condition check. [L0ne_W0lf] +//= 2.2 Added Quest Log commands. [L0ne_W0lf] +//= 2.3 Fixed an issue with completequest by adding checkquest. [Kisuka] //============================================================ + alberta_in,53,43,6 script Merchant#mer 86,{ if (Upper == 1) { if (Class == Job_Novice_High && (ADVJOB == Job_Whitesmith || ADVJOB == Job_Creator)) { @@ -44,7 +63,8 @@ alberta_in,53,43,6 script Merchant#mer 86,{ mes "[Chief Mahnsoo]"; mes "Ah~ How nostalgic. Just like old times! Alright, do your best!"; close; - }else{ + } + else { mes "[Chief Mahnsoo]"; mes "^333333*Sigh*^000000"; mes "I'm so bored..."; @@ -52,74 +72,1101 @@ alberta_in,53,43,6 script Merchant#mer 86,{ close; } } - mes "[Guildsman Mahnsoo]"; - mes "Hey, why are you here?"; + if (BaseJob == Job_Merchant) { + mes "[Chief Mahnsoo]"; + mes "Hello there!"; + mes "How do you like"; + mes "being a Merchant?"; + next; + mes "[Chief Mahnsoo]"; + mes "Having a way with"; + mes "money certainly"; + mes "has its perks,"; + mes "does it not?"; + close; + } + else if (BaseJob != Job_Merchant && BaseJob != Job_Novice) { + mes "[Chief Mahnsoo]"; + mes "We Merchants hate people who are two faced. It's bad for business."; + next; + mes "[Chief Mahnsoo]"; + mes "People who always try to take advantage of other people by selling things at a ridiculous price just so they can make money that they'll waste are the worst."; + next; + mes "[Chief Mahnsoo]"; + mes "Well, in any case, we only accept Novices for job changes to the Merchant class. But I appreciate your interest in what we do."; + close; + } + else if (job_merchant_q == 9) { + mes "[Chief Mahnsoo]"; + mes "Hello there,"; + mes ""+ strcharinfo(0) +"."; + set job_merchant_q,0; + set job_merchant_q2,0; + set quest_alb_01,0; + mes "Unfortunately, you failed to earn your Merchant License this time."; + next; + mes "[Chief Mahnsoo]"; + mes "I'll erase your records, so come back anytime when you want to reapply."; + close; + } + else if (job_merchant_q == 8 || job_merchant_q == 7) { + mes "[Chief Mahnsoo]"; + mes "Hello there,"; + mes ""+ strcharinfo(0) +"."; + mes "I'm pleased to tell you"; + mes "that I have good news!"; + next; + mes "[Chief Mahnsoo]"; + mes "The Merchant Guild accepted your application. You've proven that you are fully qualified to become a Merchant."; + if (job_merchant_q == 7) { + next; + mes "[Chief Mahnsoo]"; + mes "The only thing to take care of is your Membership Fee."; + mes "Are you ready?"; + next; + switch(select("Pay the rest of the 500 Zeny:Quit")) { + case 1: + mes "[Chief Mahnsoo]"; + if (Zeny < 500) { + mes "Hmmm..."; + mes "I suppose you currently don't have enough zeny to pay the rest of your Membership fee right now."; + next; + mes "[Chief Mahnsoo]"; + mes "Please return when you have earned the 500 zeny that you need to become a Merchant."; + close; + } + set zeny,zeny-500; + mes "Ah yes...!"; + mes "Now your"; + mes "membership"; + mes "is paid in full."; + break; + case 2: + mes "[Chief Mahnsoo]"; + mes "I suppose you need some time to gather some zeny to pay your membership fee. Please come"; + mes "back as soon as you're ready."; + close; + } + } + next; + mes "[Chief Mahnsoo]"; + mes "Congratulations!"; + callfunc "Job_Change",Job_Merchant; + callfunc "F_ClearJobVar"; + if(checkquest(1009) != -1) { + completequest 1009; + } + else if(checkquest(1010) != -1) { + completequest 1010; + } + else if(checkquest(1011) != -1) { + completequest 1011; + } + else { + completequest 1012; + } + mes "I'm very pleased that you are joining the Merchant Guild and hope that you will play an active part in Rune-Midgarts' economy."; + next; + if (quest_alb_01 == 1) { + mes "[Chief Mahnsoo]"; + mes "*Ahem* Aaaaand let me give you a little bit of money for delivering that message to Blossom for me."; + mes "I hope you'll help me again next time~"; + set zeny,zeny+200; + set quest_alb_01,2; + } + else { + mes "[Chief Mahnsoo]"; + mes "The message you were supposed to deliver as per my request? You've forgotten about that? Oh well. Good work!"; + } + next; + mes "[Chief Mahnsoo]"; + mes "Our goal is to control 20 % of the world's income! We're going to need young, eager people like you!"; + next; + mes "[Chief Mahnsoo]"; + mes "But overall, we'll also be happy just to make loads of money."; + mes "But we all know that~"; + close; + } + else if (job_merchant_q <= 6 && job_merchant_q != 0) { + mes "[Chief Mahnsoo]"; + if (job_merchant_q2 == 1 || job_merchant_q2 == 2) { + mes "First, get the delivery package from the storehouse, and then take it to the former Swordman's Association in Prontera."; + next; + mes "[Chief Mahnsoo]"; + mes "When you get there, give the package to the Kafra Employee stationed near there. Her name is Blossom. Did you get all that?"; + next; + if (job_merchant_q2 == 1) { + mes "[Chief Mahnsoo]"; + mes "Remember, the Serial Number of the package is ^3355FF2485741^000000."; + setquest 1009; + } + else { + mes "[Chief Mahnsoo]"; + mes "Remember, the Serial Number of the package is ^3355FF2328137^000000."; + setquest 1009; + } + } + else if (job_merchant_q2 == 3 || job_merchant_q2 == 4) { + mes "First, get the delivery package from the storehouse, and then take it to the Mage Guild in Geffen."; + next; + if (job_merchant_q2 == 3) { + mes "[Chief Mahnsoo]"; + mes "When you get there, give the package to the Mage Guildsman in charge. Remember, the packages Serial Number is ^3355FF2989396^000000."; + setquest 1010; + } + else { + mes "[Chief Mahnsoo]"; + mes "When you get there, give the package to the Mage Guildsman in charge. Remember, the packages Serial Number is ^3355FF2191737^000000."; + setquest 1010; + } + } + else if (job_merchant_q2 == 5 || job_merchant_q2 == 6) { + mes "First, get the delivery package from the storehouse, and then take it to Morroc."; + next; + mes "[Chief Mahnsoo]"; + mes "You'll have to find Java Dullihan, the Dyemaker, so that you can deliver the product he ordered."; + next; + if (job_merchant_q2 == 5) { + mes "[Chief Mahnsoo]"; + mes "But he's a little forgetful, so give it to one of his students. Remember, the package's Serial Number is ^3355FF3012685^000000."; + setquest 1011; + } + else { + mes "[Chief Mahnsoo]"; + mes "But he's a little forgetful, give it to one of his students. Remember, the package's Serial Number is ^3355FF3487372^000000."; + setquest 1011; + } + } + else if (job_merchant_q2 == 7 || job_merchant_q2 == 8) { + mes "First, get the package from the storehouse, and then give it to the Kafra Employee stationed on Byalan Island. Her name is Blossom."; + next; + if (job_merchant_q2 == 7) { + mes "[Chief Mahnsoo]"; + mes "Remember, the package's Serial Number is ^3355FF3318702^000000."; + setquest 1012; + } + else { + mes "[Chief Mahnsoo]"; + mes "Remember, the package's Serial Number is ^3355FF3543625^000000."; + setquest 1012; + } + } + if (job_merchant_q2 == 7 || job_merchant_q2 == 8) { + next; + mes "[Chief Mahnsoo]"; + mes "Aaaannnnd..."; + mes "Don't forget to deliver that message for me~"; + } + next; + mes "[Chief Mahnsoo]"; + mes "Don't forget your destination and the package's Serial Number."; + mes "You'll need to tell them"; + mes "to the storekeeper."; + next; + mes "[Chief Mahnsoo]"; + mes "The storehouse is in the room"; + mes "to my right. There, you can talk"; + mes "to the storekeeper, and he'll"; + mes "help you out."; + next; + mes "[Chief Mahnsoo]"; + mes "After you make the delivery, return to the storehouse and give the receipt to the storekeeper."; + mes "Then, come back"; + mes "and see me."; + next; + mes "[Chief Mahnsoo]"; + mes "Is that clear?"; + mes "Alright, that's"; + mes "the spirit."; + mes "Take care!"; + close; + } + else if (job_merchant_q == 0) { + mes "[Chief Mahnsoo]"; + mes "So, what brings you to"; + mes "the Merchant Association?"; + mes "Is there anything"; + mes "I can help you with?"; + next; + switch(select("I want to be a Merchant.:Tell me about Merchants.:Tell me the requirements.:Nope.")) { + case 1: + mes "[Chief Mahnsoo]"; + mes "Do you want to"; + mes "be a Merchant?"; + mes "Well..."; + next; + if (getskilllv("NV_BASIC") < 9) { + mes "[Chief Mahnsoo]"; + mes "First, you have to be a Novice with Job Level 10. Once you do that, make sure you learn all of the Basic Skills."; + next; + mes "[Chief Mahnsoo]"; + mes "We're not just"; + mes "simple money makers!"; + mes "We pride ourselves on having standards and only accepting qualified applicants!"; + close; + } + mes "[Chief Mahnsoo]"; + mes "Alright, you'll need to fill out this application and prepare 1,000 Zeny for your Membership Fee."; + next; + mes "[Chief Mahnsoo]"; + mes "Oh...!"; + mes "If you don't have all the money,"; + mes "I can just take 500 Zeny now."; + mes "You can pay the rest after you"; + mes "pass the test and earn your"; + mes "Merchant Guild License."; + next; + mes "[Chief Mahnsoo]"; + mes "So what do you think?"; + mes "Are you ready to join now?"; + next; + if (select("Yes, I will.:Ummm, maybe later...") ==1 ) { + mes "[Chief Mahnsoo]"; + mes "Let me check if you"; + mes "filled out everything"; + mes "on your application form..."; + next; + mes "[Chief Mahnsoo]"; + mes "Hmm... "; + mes "" + strcharinfo(0) + "..."; + mes "That's a nice name."; + next; + mes "[Chief Mahnsoo]"; + mes "This application will"; + mes "only be registered once"; + mes "the Membership Fee is paid."; + mes "How do you wish to"; + mes "handle the fee?"; + next; + switch(select("Pay all 1,000 Zeny now!:Two payments of 500 Zeny.:Quit")) { + case 1: + mes "[Chief Mahnsoo]"; + if (Zeny >= 1000) { + set job_merchant_q,2; + set zeny,zeny-1000; + mes "Alright~"; + mes "That's 1,000 zeny."; + mes "Excellent, excellent."; + } + else { + mes "It seems don't have enough zeny to pay all of the fee right now. Why don't you just pay 500 zeny now? Think about it."; + close; + } + break; + case 2: + mes "[Chief Mahnsoo]"; + if (Zeny >= 500) { + set job_merchant_q,1; + set zeny,zeny-500; + mes "Let's see..."; + mes "That's 500 Zeny. Although I don't think splitting payment is a good idea for any Merchant, it's alright since you're still learning."; + } + else { + mes "Hmm..."; + mes "It seems you don't have the funds to pay half of the membership fee. Please come back once you collect the zeny that you need."; + close; + } + break; + case 3: + mes "[Chief Mahnsoo]"; + mes "Feel free to return anytime"; + mes "when you are ready, alright?"; + close; + } + } + else { + mes "[Chief Mahnsoo]"; + mes "You don't have enough zeny now? That's no problem. Take your time and come back when you're"; + mes "ready, okay?"; + close; + } + next; + mes "[Chief Mahnsoo]"; + mes "Alright, you're now on the list of applicants. Ah, before I get started let me say just one thing."; + next; + mes "[Chief Mahnsoo]"; + mes "There are some dumb and greedy people out there who do not know what it means to be a Merchant."; + mes "I hope you won't turn out to be like them, will you?"; + next; + mes "[Chief Mahnsoo]"; + mes "Now, let me"; + mes "explain what you"; + mes "need to do for the"; + mes "Merchant License Test."; + next; + mes "[Chief Mahnsoo]"; + switch(rand(1,4)) { + case 1: + mes "First, get the delivery package from the storehouse, then go to the former Swordman's Association in Prontera."; + next; + mes "[Chief Mahnsoo]"; + mes "When you get there, visit the Kafra Employee stationed there. Her name is Blossom. Did you get"; + mes "all of that?"; + callsub S_GiveSerial,2485741,1,2328137,2; + break; + case 2: + mes "First, get the delivery package from the storehouse, and then go to the Mage Guild in Geffen. When you get there, visit the Mage Guildsman in charge."; + callsub S_GiveSerial,2989396,3,2191737,4; + break; + case 3: + mes "First, get the delivery package from the storehouse, and then go to Morroc. There you must find Java Dullihan, the dyemaker."; + next; + mes "[Chief Mahnsoo]"; + mes "He's a bit forgetful, so you should probably give the package to one of his students."; + callsub S_GiveSerial,3012685,5,3487372,6; + break; + case 4: + mes "First, get the delivery package from the storehouse, and then give it to the Kafra Employee stationed on Byalan Island."; + callsub S_GiveSerial,3318702,7,3543625,8; + next; + mes "[Chief Mahnsoo]"; + mes "Ummmm..."; + mes "And I also have"; + mes "a bit of a personal"; + mes "request for you."; + next; + mes "[Chief Mahnsoo]"; + mes "Would you please give her this message when you deliver the package? Please~"; + getitem 1072,1; //Delivery_Message + break; + } + next; + mes "[Chief Mahnsoo]"; + mes "Don't forget your destination and the package's Serial Number. You will need to tell those to the storekeeper in the storehouse to the right of me."; + next; + mes "[Chief Mahnsoo]"; + mes "After the delivery, give the receipt to the storekeeper, and then come back and see me."; + next; + mes "[Chief Mahnsoo]"; + mes "Is that clear?"; + mes "Alright, that's"; + mes "the spirit."; + mes "Take care!"; + close; + case 2: + mes "[Chief Mahnsoo]"; + mes "Merchant?"; + mes "Well, we basically sell goods to make money. That is the way"; + mes "of the Merchant."; + next; + mes "[Chief Mahnsoo]"; + mes "I guess we may not be the best at fighting, and we don't have many special attacks. We've got no healing skills..."; + next; + mes "[Chief Mahnsoo]"; + mes "But we can buy goods at lower prices from NPC shops and sell them at a higher price to other people~"; + next; + mes "[Chief Mahnsoo]"; + mes "Our ultimate attack skill is 'Mammonite.' The strength of Mammonite comes from the anger"; + mes "when we're forced to throw away perfectly good zeny."; + next; + mes "[Chief Mahnsoo]"; + mes "Throwing away zeny like that"; + mes "causes a deadly rage to well up in the heart of any Merchant!"; + mes "Just thinking about it"; + mes "makes my blood boil!"; + next; + mes "[Chief Mahnsoo]"; + mes "Anyway, we can use most"; + mes "weapons except Bows, Rods, and Two-Handed Swords. But we can always sell those."; + next; + mes "[Chief Mahnsoo]"; + mes "Yes..."; + mes "We Merchants generally"; + mes "have money on our minds..."; + close; + case 3: + mes "[Chief Mahnsoo]"; + mes "There are three conditions that must be fulfilled before you can become a Merchant."; + next; + mes "[Chief Mahnsoo]"; + mes "First, You have to be a Novice with Job Level 10, and have learned all of the Basic Skills."; + next; + mes "[Chief Mahnsoo]"; + mes "Second, You have to pay a 1,000 Zeny Membership Fee. I believe any Merchant candidate should be able to earn 1,000 Zeny with ease."; + next; + mes "[Chief Mahnsoo]"; + mes "Third, there is a License Test to test your physical strength and sense of direction. You will deliver a package to a specific person in a specific location."; + close; + case 4: + close; + } + } + +S_GiveSerial: next; - switch(select("I want to be a merchant.:I want to know more about merchants.:Ask him the requirements to be a merchant.:Nothing.")) { - case 1: - if(Class != Job_Novice) { - mes "[Guildsman Mahnsoo]"; - if(Class == Job_Merchant) { - mes ".....? Sorry? What are you saying?"; - mes "You are already a merchant. Oh my.."; - mes "Huh?! ...Do I need to laugh right now?!"; - }else{ - mes "Ahh? Are you trying to have both ways?"; - mes "How about just giving yourself over to your original job?"; + mes "[Chief Mahnsoo]"; + mes "Remember..."; + if (rand(1)) { + mes "The package's"; + mes "Serial Number is"; + mes "^3355FF"+getarg(0)+"^000000."; + set job_merchant_q2,getarg(1); + } + else { + mes "The package's"; + mes "Serial Number is"; + mes "^3355FF"+getarg(2)+"^000000."; + set job_merchant_q2,getarg(3); + } + return; +} + +alberta_in,28,29,2 script Merchant Guildsman#mer 83,{ + if (BaseJob == Job_Merchant) { + mes "[Union Staff Kay]"; + mes "Heya pal."; + mes "How ya doin'?"; + close; + } + else if (BaseJob != Job_Merchant && BaseJob != Job_Novice) { + mes "[Union Staff Kay]"; + mes "Hey you. We don't have any open positions for part time work. If you wanna earn some zeny, you'll hafta look elsewhere."; + close; + } + else if (job_merchant_q == 9) { + mes "[Union Staff Kay]"; + mes "Hey you. Yeah, you."; + mes "If you wanna restart the test, go visit Mahnsoo in the other room. Then we can talk."; + close; + } + else if (job_merchant_q == 8 || job_merchant_q == 7) { + mes "[Union Staff Kay]"; + mes "Alright! Everything looks perfect! I'll report your success to the guildmaster. Now go talk to Chief Mahnsoo, yeah?"; + close; + } + else if (job_merchant_q == 6 || job_merchant_q == 5) { + mes " [Union Staff Kay] "; + mes "Oh, yeah? Okay, lemme check. Your name is " + strcharinfo(0) + "? Alright, your destination was..."; + next; + mes "[Union Staff Kay]"; + if (job_merchant_q2 == 1 || job_merchant_q2 == 2) + mes "Wow! You met the Kafra babe in Prontera?! Lucky you~ ...Receipt?"; + else if (job_merchant_q2 == 3 || job_merchant_q2 == 4) + mes "Geffen Magic Academy. Okay, receipt?"; + else if (job_merchant_q2 == 5 || job_merchant_q2 == 6) + mes "The dyemaker in Morroc. Not bad. Receipt?"; + else if (job_merchant_q2 == 7 || job_merchant_q2 == 8) + mes "Oh hohohoho~! The Kafra Babe on Byalan Island?! Awesome! Anyway, did you bring the receipt?"; + + if (job_merchant_q2 == 1 && countitem(1073) != 0) + delitem 1073,1; //Merchant_Voucher_1 + else if (job_merchant_q2 == 2 && countitem(1074) != 0) + delitem 1074,1; //Merchant_Voucher_2 + else if (job_merchant_q2 == 3 && countitem(1075) != 0) + delitem 1075,1; //Merchant_Voucher_3 + else if (job_merchant_q2 == 4 && countitem(1076) != 0) + delitem 1076,1; //Merchant_Voucher_4 + else if (job_merchant_q2 == 5 && countitem(1077) != 0) + delitem 1077,1; //Merchant_Voucher_5 + else if (job_merchant_q2 == 6 && countitem(1078) != 0) + delitem 1078,1; //Merchant_Voucher_6 + else if (job_merchant_q2 == 7 && countitem(1079) != 0) + delitem 1079,1; //Merchant_Voucher_7 + else if (job_merchant_q2 == 8 && countitem(1080) != 0) + delitem 1080,1; //Merchant_Voucher_8 + else { + next; + set job_merchant_q,9; + mes " [Union Staff Kay] "; + mes "Wait a sec."; + mes "Where's the receipt?"; + mes "What happened?"; + next; + mes " [Union Staff Kay] "; + mes "If you don't have the receipt, you fail the test! You better talk to Mahnsoo if you wanna retake it, alright? Pay attention next time!"; + close; + } + next; + mes " [Union Staff Kay] "; + mes "...Great! Everything's perfect! I'll report your success to the Guildmaster. You should talk to Chief Mahnsoo now, alright?"; + close2; + if (job_merchant_q == 6) + set job_merchant_q,8; + else if (job_merchant_q == 5) + set job_merchant_q,7; + end; + } + else if (job_merchant_q == 4 || job_merchant_q == 3 && countitem(1081) == 0 && countitem(1082) == 0 && countitem(1091) == 0) { + mes " [Union Staff Kay] "; + mes "Huh?"; + mes "You're back?"; + mes "So how did"; + mes "the delivery go?"; + next; + if (select("*Sob* I lost the package.:Fine.") == 1) { + set job_merchant_q,9; + mes "[Union Staff Kay]"; + mes "Are you kidding me? You'll fail the test if you lose the package!"; + next; + mes "[Union Staff Kay]"; + mes "Awwww man. Well, if you wanna restart the test, talk to Mahnsoo, okay? You're lucky you're getting another chance!"; + close; + } + mes "[Union Staff Kay]"; + mes "Huh..."; + mes "Okay..."; + close; + } + else if (job_merchant_q == 4 || job_merchant_q == 3 && countitem(1081) != 0 || countitem(1082) != 0 || countitem(1091) != 0) { + mes "[Union Staff Kay]"; + mes "Hey, what are you still doing here? Shouldn't you be on your way already?"; + next; + if (select("I need a new package.:Oh, yeah. You're right!") == 1) { + if (countitem(1081) == 0 && countitem(1082) == 0 && countitem(1083) == 0 && countitem(1091) == 0) { + mes "[Union Staff Kay]"; + mes "Wha--?"; + mes "So where did"; + mes "the package go?"; + mes "Where is it?!"; next; - mes "[Guildsman Mahnsoo]"; - mes "We have business ethics you know."; + if (select("*Sob* I lost it!:I have it right here.") == 1) { + set job_merchant_q,9; + mes "[Union Staff Kay]"; + mes "You..."; + mes "Lost it?!"; + mes "You failed the test!"; + next; + mes "[Union Staff Kay]"; + mes "*Sigh* If you want to restart the test, go visit Mahnsoo in the other room, alright?"; + close; + } + mes "[Union Staff Kay]"; + mes "Huh."; + mes "I thought"; + mes "you lost it."; + mes "You don't"; + mes "need a new one."; + close; } + mes "[Union Staff Kay]"; + mes "*Sigh* Man, you're starting to become a pain in the ass. Hold on, lemme cancel your record..."; + if (countitem(1081) != 0) + delitem 1081,1; //Merchant_Box_1 + else if (countitem(1082) != 0) + delitem 1082,1; //Merchant_Box_2 + else if (countitem(1091) != 0) + delitem 1091,1; //Merchant_Box_Etc + if (job_merchant_q == 4) + set job_merchant_q,2; + else if (job_merchant_q == 3) + set job_merchant_q,1; + next; + mes "[Union Staff Kay]"; + mes "I need some time to get everything in order, so come back later."; close; - }else{ - mes "[Guildsman Mahnsoo]"; - mes "Want to be a merchant? Hmm..."; + } + mes "[Union Staff Kay]"; + mes "What a bummer..."; + close; + } + else if ((job_merchant_q == 0 || job_merchant_q == 1 || job_merchant_q == 2)) { + set where_village,0; + mes "[Union Staff Kay]"; + mes "Hey there."; + mes "what brings"; + mes "you here?"; + next; + switch(select("My Merchant License test.:I'm looking for part time work.:Nothing.")) { + case 1: + mes "[Union Staff Kay]"; + mes "I see."; + mes "Alright."; + mes "So what's"; + mes "your name?"; + mes "" + strcharinfo(0) + "...?"; next; - if (getskilllv("NV_BASIC") < 9) { - mes "[Guildsman Mahnsoo]"; - mes "But if you want to be a merchant, your basic skill level must reach Level 9 or you must spend all of your skill points."; + if (job_merchant_q == 0) { + mes "[Union Staff Kay]"; + mes "Huh. Your name's not on my list. Did you apply for the job change quest or what?"; next; - mes "[Guildsman Mahnsoo]"; - mes "Don't you think we need to learn some basic skills although we just deal with money?"; + mes "[Union Staff Kay]"; + mes "You gotta apply first by talking to Chief Mahnsoo in the center"; + mes "of this building, okay?"; close; } - mes "[Guildsman Mahnsoo]"; - mes "Good, I think you're fully ready for it seeing that your basic skill level is fulfilled."; - mes "Now I allow you to be a merchant."; + mes "[Union Staff Kay]"; + mes "Alright, there you go. Lemme give you the package. Now, choose the destination of the delivery."; next; - mes "[Guildsman Mahnsoo]"; - mes "Congratulations on becoming a merchant!"; - mes "Congratulations again for being a member of the merchant guild and one of our colleagues. I expect your active participation from now on!"; - callfunc "Job_Change",Job_Merchant; - getitem 1381,1; // N_Battle_Axe + switch(select("Prontera.:Geffen.:Morocc.:Byalan Island.")) { + case 1: set .@where_village,1; break; + case 2: set .@where_village,2; break; + case 3: set .@where_village,3; break; + case 4: set .@where_village,4; break; + } + mes "[Union Staff Kay]"; + mes "Okay, now you need to give me the package's Serial Number. If you wanna cancel, just enter '0', alright?"; next; - mes "[Guildsman Mahnsoo]"; - mes "Absolutely, we need young people who have passion to achieve our great goal for securing 20% of the worldwide currency volume. You get it? Huh?"; - mes "Well, I'm just saying... it means let's make lots of money in the end. You guys know that~"; + while(1) { + while(1) { + input .@input; + if (.@input == 0) { + mes "[Union Staff Kay]"; + mes "Are you sure that you wanna cancel?"; + if (select("Yes.:Let me try again.") == 1) { + mes "Alright, we'll cancel for now."; + close; + } + next; + } + else if (.@input < 1000000 || .@input > 5000000) { + mes "[Union Staff Kay]"; + mes "Hey hey. That number's not valid! Enter a value from 1000000 to 5000000. got it?"; + next; + } + else + break; + } + mes "[Union Staff Kay]"; + if (.@where_village == 1) + mes "Destination is Prontera. The Serial Number is " + .@input + ". Are you positive?"; + else if (.@where_village == 2) + mes "Destination is Geffen. Phew! That's really far! The Serial Number is " + .@input + ". Are you positive?"; + else if (.@where_village == 3) + mes "Destination is Morocc. That's pretty far away! The Serial Number is " + .@input + ". Are you positive?"; + else + mes "Lucky you! Your destination is Byalan Island. The Serial Number is " + .@input + ". Are you positive?"; + next; + if (select("Positive.:Whoops! Wrong number!") == 1) { + break; + } + } + if (.@where_village == 1) { + if (job_merchant_q2 == 1 && .@input == 2485741) + getitem 1081,1; //Merchant_Box_1 + else if (job_merchant_q2 == 2 && .@input == 2328137) + getitem 1082,1; //Merchant_Box_2 + else + getitem 1091,1; //Merchant_Box_Etc + } + else if (.@where_village == 2) { + if (job_merchant_q2 == 3 && .@input == 2989396) + getitem 1081,1; //Merchant_Box_1 + else if (job_merchant_q2 == 4 && .@input == 2191737) + getitem 1082,1; //Merchant_Box_2 + else + getitem 1091,1; //Merchant_Box_Etc + } + else if (.@where_village == 3) { + if (job_merchant_q2 == 5 && .@input == 3012685) + getitem 1081,1; //Merchant_Box_1 + else if (job_merchant_q2 == 6 && .@input == 3487372) + getitem 1082,1; //Merchant_Box_2 + else + getitem 1091,1; //Merchant_Box_Etc + } + else { + if (job_merchant_q2 == 7 && .@input == 3318702) + getitem 1081,1; //Merchant_Box_1 + else if (job_merchant_q2 == 8 && .@input == 3543625) + getitem 1082,1; //Merchant_Box_2 + else + getitem 1091,1; //Merchant_Box_Etc + } + if (job_merchant_q == 2) + set job_merchant_q,4; + else if (job_merchant_q == 1) + set job_merchant_q,3; + mes "[Union Staff Kay]"; + mes "Alright. Take this package and guard it with your life until it's safely delivered to the customer. Don't lose this thing, got it?"; + next; + mes "[Union Staff Kay]"; + mes "Well then, I wish you luck. Remember, you gotta bring me"; + mes "a receipt once you finish the delivery, okay?"; + close; + case 2: + mes "[Union Staff Kay]"; + mes "Part time job? Sorry pal, no jobs yet. The Paymaster's department can never balance our budget..."; + close; + case 3: + mes "[Union Staff Kay]"; + mes "Nothing, eh?"; + mes "I guess you enjoy"; + mes "bothering people for"; + mes "no reason then, yeah?"; + close; + } + } +} + +morocc_in,140,102,4 script Student#mer 86,{ + if ((job_merchant_q == 4) || (job_merchant_q == 3)) { + mes "[Dyer's Student]"; + mes "You're from"; + mes "the Merchant Guild?"; + mes "Yes! You've come to"; + mes "the right place."; + next; + mes "[Dyer's Student]"; + if (countitem(1081) == 1 || countitem(1082) == 1 || countitem(1091) == 1) { + mes "Okay~"; + mes "Please set the"; + mes "package down"; + mes "over there."; + } + else { + mes "But..."; + mes "Where's the"; + mes "package I ordered?"; + mes "That's strange..."; + close; + } + next; + mes "[Dyer's Student]"; + mes "Let me check the Serial Number of the package so I can give you the receipt, okay?"; + next; + mes "[Dyer's Student]"; + if (job_merchant_q2 == 5 && countitem(1081) != 0) { + mes "3012685..."; + mes "That's right."; + mes "Here's your"; + mes "receipt."; + delitem 1081,1; //Merchant_Box_1 + getitem 1077,1; //Merchant_Voucher_5 + } + else if (job_merchant_q2 == 6 && countitem(1082) != 0) { + mes "3487372..."; + mes "That's right."; + mes "Here's your"; + mes "receipt."; + delitem 1082,1; //Merchant_Box_2 + getitem 1078,1; //Merchant_Voucher_6 + } + else { + mes "Excuse me, but..."; + if (job_merchant_q2 == 5) + mes "I don't think this is the package we ordered. The Serial Number should be 3012685. See?"; + else if (job_merchant_q2 == 6) + mes "I don't think this is the package we ordered. The Serial Number should be 3487372. See?"; + else + mes "I don't think this is the package we ordered. The Serial Number should be 3012685 or 3487372. Well, one of those two..."; close; } - case 2: - mes "[Guildsman Mahnsoo]"; - mes "Merchant? To put it simply, the person who sells good and makes money is a merchant."; - mes "Not good at fighting and doesn't have special attack/recovery skills... but a merchant can buy things at a low price and then sell them and make money."; + if (job_merchant_q == 4) + set job_merchant_q,6; + else if (job_merchant_q == 3) + set job_merchant_q,5; + next; + mes "[Dyer's Student]"; + mes "Thanks a lot!"; + mes "See you again"; + mes "sometime!"; + close; + } + else if (job_merchant_q == 6 || job_merchant_q == 5 && job_merchant_q2 == 6 || job_merchant_q2 == 5) { + mes "[Dyer's Student]"; + mes "Oh..."; + mes "You're gonna"; + mes "go back? Okay"; + mes "then, take care!"; + close; + } + else { + mes "[Dyer's Student]"; + mes "Mr. Java Dullihan is the one and only, the best dye maker on the Rune-Midgard continent."; + next; + mes "[Dyer's Student]"; + mes "Aaaand I'm proud to say that I'm his student! Someday, I'll be able to make really beautiful dyes too!"; next; - mes "[Guildsman Mahnsoo]"; - mes "Well, a merchant has an ultimate skill called Mammonite which strikes an enemy with his/her money... We can equip everything except Bows, Rods, and Two-Handed Swords. But we can always sell and buy those."; - mes "Yes... we merchants always have money on our minds, got it?"; + mes "[Dyer's Student]"; + mes "Of course, I'm still learning the basics right now, but someday..."; close; - case 3: - mes "[Guildsman Mahnsoo]"; - mes "To become a merchant, although just selling and receiving money is our job, you must reach at least basic skill level 9."; + } +} + +geffen_in,155,122,4 script Guild Staff#mer 47,{ + if (job_merchant_q == 4 || job_merchant_q == 3) { + mes "[Guild Staff]"; + mes "Ah, you must be with the Merchant Guild. Finally, my package has arrived! Alright...!"; + next; + mes "[Guild Staff]"; + if (countitem(1081) == 1 || countitem(1082) == 1 || countitem(1091) == 1) { + mes "You must be very tired"; + mes "from having to travel"; + mes "in this kind"; + mes "of weather..."; + } + else { + mes "Wait..."; + mes "Where's the"; + mes "package?"; + close; + } next; - mes "[Guildsman Mahnsoo]"; - mes "Well, we used to receive a start-up fee before. Wasn't it hard to make that money?"; - mes "There were too many people who couldn't gather that money and kept crying."; + mes "[Guild Staff]"; + mes "Alright, let me"; + mes "check the Serial Number..."; + if (job_merchant_q2 == 3 && countitem(1081) != 0) { + mes "2989396. Yes, this is what we ordered. Here is your receipt."; + delitem 1081,1; //Merchant_Box_1 + getitem 1075,1; //Merchant_Voucher_3 + } + else if (job_merchant_q2 == 4 && countitem(1082) != 0) { + mes "2191737. Yes, this is what we ordered. Here is your receipt."; + delitem 1082,1; //Merchant_Box_2 + getitem 1076,1; //Merchant_Voucher_4 + } + else { + mes "Uh oh, this is the wrong number. This isn't what we ordered..."; + next; + mes "[Guild Staff]"; + if (job_merchant_q2 == 3) { + mes "The Serial Number"; + mes "should be 2989396."; + } + else if (job_merchant_q2 == 4) { + mes "The Serial Number"; + mes "should be 2191737."; + } + else { + mes "The Serial Number"; + mes "should be 2989396"; + mes "or 2191737, one of"; + mes "those two."; + } + mes "Look here!"; + mes "Don't you see"; + mes "something"; + mes "is wrong?"; + close; + } + if (job_merchant_q == 4) + set job_merchant_q,6; + else if (job_merchant_q == 3) + set job_merchant_q,5; next; - mes "[Guildsman Mahnsoo]"; - mes "So recently, we decided to allow any Novice who wants to be a merchant become one."; - mes "Because to be alive or not later is all up to one's ability."; + mes "[Guild Staff]"; + mes "Heh heh~"; + mes "Thank you!"; + mes "Bye bye!"; close; - case 4: + } + else if (job_merchant_q == 6 || job_merchant_q == 5 && job_merchant_q2 == 4 || job_merchant_q2 == 3) { + mes "[Guild Staff]"; + mes "Hello,"; + mes "Merchant Guildsman~"; + mes "I give you my thanks."; close; } + else { + mes "[Guild Staff]"; + mes "My package should have arrived by now. Huh. I guess the Merchant Guild might be running a little late..."; + close; + } +} + +prontera,248,42,0 script Kafra Employee#mer 116,{ + cutin "kafra_02",2; + if (job_merchant_q == 6 || job_merchant_q == 5) && (job_merchant_q2 == 2 || job_merchant_q2 == 1) { + mes "[Kafra Employee]"; + mes "Oh! Thank you for"; + mes "traveling such a long"; + mes "way to come over here~"; + close2; + cutin "",255; + end; + } + else if (job_merchant_q == 4 || job_merchant_q == 3) { + mes "[Kafra Employee]"; + mes "A delivery from"; + mes "the Merchant Guild?"; + mes "Oh, yes, please set"; + mes "it down right over there..."; + if (countitem(1081) == 1 || countitem(1082) == 1 || countitem(1091) == 1) { + mes "You must be really tired"; + mes "after carrying it for so long!"; + } + else { + mes "W-wait. Didn't you bring it?"; + mes "Where's the package?"; + close2; + cutin "",255; + end; + } + next; + mes "[Kafra Employee]"; + mes "Now, let me check"; + mes "the serial number..."; + if (job_merchant_q2 == 1 && countitem(1081) != 0) { + mes "2485741. Right, this is"; + mes "the one we ordered. Oh,"; + mes "and don't forget this receipt!"; + next; + delitem 1081,1; //Merchant_Box_1 + getitem 1073,1; //Merchant_Voucher_1 + } + else if (job_merchant_q2 == 2 && countitem(1082) != 0) { + mes "2328137. Right, this is"; + mes "the one we ordered. Oh,"; + mes "and don't forget this receipt!"; + next; + delitem 1082,1; //Merchant_Box_2 + getitem 1074,1; //Merchant_Voucher_2 + } + else { + mes "Mmmm? Hold on. This is"; + mes "the wrong package. What we"; + if (job_merchant_q2 == 1) + mes "ordered had the serial number 2485741. I'm sure it's not this."; + else if (job_merchant_q2 == 2) + mes "ordered had the serial number 2328137. I'm sure it's not this."; + else + mes "ordered had the serial number 2328137 or 2328137."; + next; + mes "[Kafra Employee]"; + mes "I'm afraid there"; + mes "must be some kind"; + mes "of mistake. Perhaps"; + mes "you should go back to"; + mes "the Merchant Guild to"; + mes "clear up this situation?"; + close2; + cutin "",255; + end; + } + if (job_merchant_q == 4) + set job_merchant_q,6; + else if (job_merchant_q == 3) + set job_merchant_q,5; + mes "[Kafra Employee]"; + mes "Thanks again"; + mes "for going through"; + mes "all of that trouble~"; + close2; + cutin "",255; + end; + } + else { + mes "[Kafra Employee]"; + mes "Welcome to the"; + mes "Kafra Corportation,"; + mes "where the service is"; + mes "always on your side~"; + next; + mes "[Kafra Employee]"; + mes "As you can see, the"; + mes "Swordman Assocation"; + mes "has moved to Izlude, a"; + mes "satellite city of Prontera."; + mes "Currently, we offer a Teleport"; + mes "Service to Izlude for 600 zeny."; + next; + if (select("Use:Cancel") == 1) { + if (Zeny < 600) { + mes "[Kafra Employee]"; + mes "I'm sorry, but you"; + mes "don't have enough zeny"; + mes "for this Teleport Service."; + close2; + cutin "",255; + end; + } + set zeny,zeny-600; + set RESRVPTS, RESRVPTS + 37; + cutin "",255; + warp "izlude",94,103; + end; + } + close2; + cutin "",255; + end; + } +} + +//izlu2dun,106,58,4 script Kafra Employee#mer 116,{ +function script F_MercKafra { + if ((job_merchant_q == 6 || job_merchant_q == 5) && (job_merchant_q2 == 8 || job_merchant_q2 == 7)) { + mes "[Kafra Employee]"; + mes "Oh hello~"; + mes "Um, is there"; + mes "some special reason"; + mes "as to why you're here?"; + close2; + cutin "",255; + end; + } + else if (job_merchant_q == 4 || job_merchant_q == 3) { + mes "[Kafra Employee]"; + mes "A delivery from"; + mes "the Merchant Guild?"; + mes "Oh, yes, please set"; + mes "it down right over there..."; + if (countitem(1081) == 1 || countitem(1082) == 1 || countitem(1091) == 1) { + mes "You must be really tired"; + mes "after carrying it for so long!"; + } + else { + mes "W-wait. Didn't you bring it?"; + mes "Where's the package?"; + close2; + cutin "",255; + end; + } + next; + mes "[Kafra Employee]"; + mes "Now, let me check"; + mes "the serial number..."; + if (job_merchant_q2 == 7 && countitem(1081) != 0) { + mes "3318702. Right, this is"; + mes "the one we ordered. Oh,"; + mes "and don't forget this receipt!"; + delitem 1081,1; //Merchant_Box_1 + getitem 1079,1; //Merchant_Voucher_7 + } + else if (job_merchant_q2 == 8 && countitem(1082) != 0) { + mes "3543625. Right, this is"; + mes "the one we ordered. Oh,"; + mes "and don't forget this receipt!"; + delitem 1082,1; //Merchant_Box_2 + getitem 1080,1; //Merchant_Voucher_8 + } + else { + mes "Mmmm? Hold on. This is"; + mes "the wrong package. What we"; + if (job_merchant_q2 == 7) + mes "ordered had the serial number 3318702. I'm sure it's not this."; + else if (job_merchant_q2 == 8) + mes "ordered had the serial number 3543625. I'm sure it's not this."; + else + mes "ordered had the serial number 3318702 or 3543625."; + close2; + cutin "",255; + end; + } + if (job_merchant_q == 4) + set job_merchant_q,6; + else if (job_merchant_q == 3) + set job_merchant_q,5; + next; + if (countitem(1072) != 0 && quest_alb_01 == 0) { + select("This is from Chief Mahnsoo of the Merchant Guild..."); + delitem 1072,1; //Delivery_Message + set quest_alb_01,1; + mes "[Kafra Employee]"; + mes "Oh~! A letter from"; + mes "Mahnsoo! Thank you"; + mes "so much, I've been dying"; + mes "to hear from him. How is"; + mes "he doing, is he alright?"; + mes "I can't wait to read it..."; + next; + mes "[Kafra Employee]"; + mes "Oh, thank you for"; + mes "going through all the"; + mes "trouble of delivering all"; + mes "of this. This isn't anything"; + mes "special, but please take it."; + mes "Well, see you again~"; + getitem 513,3; //Banana + } + else { + mes "[Kafra Employee]"; + mes "Thanks again"; + mes "for going through"; + mes "all of that trouble~"; + } + close2; + cutin "",255; + end; + } + return; } |