//===== rAthena Script ======================================= //= Rare Diamond Merchant //===== By: ================================================== //= Z3R0 //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= rAthena SVN //===== Description: ========================================= //= [Aegis Conversion] //= Exchanges 17 Carat Diamond //===== Additional Comments: ================================= //= v1.0 First / Optimized Version //============================================================ prontera,165,89,6 script Rare Diamond Merchant#1 58,{ // Store NPC Name for Ease of Use set .@npc$, "[Rare Diamond Merchant]"; // Standard Dialog mes .@npc$; mes "Ladies and Gentlemen! ! !"; mes "You've heard rumors but you've never once seen with your own eyes"; mes "the world's rarest diamond!"; mes "The ^FF82FF'17 Carat Diamond'^000000 is currently on sale for a cheap price!!"; mes "If valuable diamonds interest you then listen up!"; // Display Next Button next; // Standard Dialog mes .@npc$; mes "You can give the diamond as a gift to your lover."; mes "The receiver of the ^FF82FF'17 Carat Diamond'^000000 will cherish it"; mes "and treasure you in their heart."; // Display Emotion emotion 56; // Display Next Button next; // Standard Dialog mes .@npc$; mes "What? You don't have a lover?"; mes "You can still just hang on to it for yourself."; mes "The enchanting aura of the ^FF82FF'17 Carat Diamond'^000000 is likely"; mes "to bring love into your life."; // Display Next Button next; // Standard Dialog mes .@npc$; mes "Known as the captivating diamond of diamonds..."; mes "It is the ^FF82FF'17 Carat Diamond'^000000!"; // Display Next Button next; // Store Menu Variable String Object set .@menu$, "^FF82FF'17 Carat Diamond'^000000?"; // Determine if Item ID 6024 Exists in Inventory if (countitem(6024)) { // If Exists (Appends String to Menu) set .@menu$, .@menu$ + ":Exchange my 17 Carat Diamond for zeny.."; } // Displays Menu to Client & uses Switch to Determine Option Selected switch(select(.@menu$)) { case 1: // Buy Diamond // Standard Dialog mes .@npc$; mes "Yes!"; mes "Hehe, the ^FF82FF'17 Carat Diamond'^000000 you see right now"; mes "is one of the highest quality 17 carat diamonds."; mes "Comparing it to any pea-sized, colorless rock you may have"; mes "dug up from Morroc is unspeakable!"; // Display Emotion emotion 23; // Display Next Button next; // Standard Dialog mes .@npc$; mes "Some claim that this is the very same diamond"; mes "that was seen by Kachua in Comodo!"; // Display Next Button next; // Show Menu to Client and Determine if First Option (1) was Chosen if (select("End Conversation:How much is it?") == 1) { // Standard Dialog mes .@npc$; mes "It's rather inexpensive!"; mes "If you're interested, talk to me any time!"; // Display Close Button close; } // Standard Dialog mes .@npc$; mes "Of course! The most important thing is price!"; mes "As I've said earlier, the ^FF82FF'17 Carat Diamond'^000000 has been"; mes "appraised as a 17 carat diamond."; mes "There aren't many like it in the world."; // Display Next Button next; // Standard Dialog mes .@npc$; mes "The price is a mere 500 million zeny!"; mes "There is also a 1,000,000z service fee."; mes "Compared to the quality of the diamond"; mes "this is a small price to pay."; // Display Next Button next; // Show Menu to Client and Determine if First Option (1) was Chosen if (select("^828282It's too expensive.^000000:I'll buy it.") == 1) { // Standard Dialog mes .@npc$; mes "To say that a diamond such as the"; mes "^FF82FF'17 Carat Diamond'^000000 is too expensive, "; mes "you leave me speechless."; // Display Close Button close; } // Standard Dialog mes .@npc$; mes "OOOH! I knew from the moment I saw you that you were the rightful"; mes "owner of this wonderful diamond."; mes "I'm glad I wasn't wrong!"; mes "I believe this diamond will suit you quite well."; mes "All I need from you is to complete this contract."; // Display Next Button next; // Loop Indefinitely Until Told to Break (1) Always is True while(1) { // Show Menu to Client and Determine if Second Option (2) was Chosen if (select("^B9062FI will sign the contract.^000000:^828282Nevermind, I changed my mind.^000000") == 2) { // Standard Dialog mes .@npc$; mes "I see, that's too bad.."; // Display Close Button close; } // Standard Dialog mes .@npc$; mes "What is your name?"; next; mes "[" + strcharinfo(0) + "]"; mes "My name is " + strcharinfo(0) + "."; // Display Next Button next; // Standard Dialog mes .@npc$; mes "Alright then, please sign here."; // Display Next Button next; // Ask Client to Type Value, Store into Variable input .@charname$; // Determine if Typed Value equals Character Name if (.@charname$ == strcharinfo(0)) { // Standard Dialog mes .@npc$; mes "Okay, good."; mes "All that is left now is payment."; // Display Next Button next; // Determine if Client Zeny is Greater or Equal to Value (501000000) if (Zeny >= 501000000) { // Standard Dialog mes .@npc$; mes ". . . . . ."; // Display Next Button next; // Standard Dialog mes .@npc$; mes "Calculating the price and service fee.."; mes "501,000,000 zeny."; mes "Amount has been confirmed."; // Display Emotion emotion 56; // Change Zeny to Itself Minus Value (501000000) set Zeny, Zeny - 501000000; // Give Client One (1) of Item ID 6024 getitem 6024, 1; // Display Next Button next; // Standard Dialog mes .@npc$; mes "You may exchange the diamond back for zeny at any time."; mes "However, there will be a 1,000,000z service fee."; mes "Thank you for your business."; // Display Emotion emotion 15; // Display Close Button close; } else { // The Zeny Check Failed // Standard Dialog mes .@npc$; mes "Hm?"; mes "I'm sorry, but you don't have sufficient funds."; mes "Including the service fee, a total of 501,000,000z is required."; mes "Please check your zeny balance and try again."; // Display Emotion emotion 20; // Display Close Button close; } } else { // Signature Check (Typed Value Did Not Equal Character Name) // Standard Dialog mes .@npc$; mes "Is this really your signature?"; mes "Will sign again to confirm?"; // Display Next Button next; } } case 2: // Exchange Diamond (Only Available if Diamond is in Inventory) // Standard Dialog mes .@npc$; mes "AAH. You would like to exchange your ^FF82FF'17 Carat Diamond'^000000 for zeny?"; // Display Emotion emotion 0; // Display Next Button next; // Show Menu to Client and Determine if Second Option (2) was Chosen if (select("Yes:No") == 2) { // Standard Dialog mes .@npc$ mes "Then, what is it you desire?.."; mes ". . . . . ...."; // Display Emotion emotion 9; // Display Close Button close; } // Standard Dialog mes .@npc$; mes "I see. After I receive your signature, "; mes "You must offer your ^FF82FF'17 Carat Diamond'^000000."; mes "Also don't forget there is a 1,000,000z service fee!"; // Display Next Button next; // Standard Dialog mes .@npc$; mes "What is your name?"; // Display Next Button next; // Standard Dialog mes "[" + strcharinfo(0) + "]"; mes "My name is " + strcharinfo(0) + "."; // Display Next Button next; // Standard Dialog mes .@npc$; mes "Alright then, please sign here."; // Display Next Button next; // Loop Indefinitely Until Told to Break (1) Always is True while (1) { // Show Menu to Client and Determine if Second Option (2) was Chosen if (select("Sign:Don't Sign") == 2) { // Standard Dialog mes .@npc$; mes "The trade cannot be completed without your signature."; // Display Close Button close; } // Ask Client to Type Value, Store into Variable input .@charname$; // Determine if Typed Value equals Character Name if (.@charname$ == strcharinfo(0)) { // Standard Dialog mes .@npc$; mes "Your signature has been received."; mes "I will now take your ^FF82FF'17 Carat Diamond'^000000.."; mes "You will receive ^0000FF499,000,000z^000000 afterwards."; // Display Next Button next; // Standard Dialog mes .@npc$; mes "Thank you for your business."; mes "Whenever you need a ^FF82FF'17 Carat Diamond'^000000,"; mes "come back anytime with 500 million zeny."; // Display Emotion emotion 15; // Delete One (1) of Item ID 6024 from Client delitem 6024, 1; // Change Zeny to Itself Plus Value (499000000) set Zeny, Zeny + 499000000; // Display Close Button close; } else { // Signature Check (Typed Value Did Not Equal Character Name) // Standard Dialog mes .@npc$; mes "Is this really your signature?"; mes "Will sign again to confirm?"; // Display Next Button next; } } } } geffen,106,63,6 duplicate(Rare Diamond Merchant#1) Rare Diamond Merchant#2 58 morocc,146,100,6 duplicate(Rare Diamond Merchant#1) Rare Diamond Merchant#3 58 alberta,129,60,6 duplicate(Rare Diamond Merchant#1) Rare Diamond Merchant#4 58 lighthalzen,163,65,6 duplicate(Rare Diamond Merchant#1) Rare Diamond Merchant#5 58 rachel,106,142,6 duplicate(Rare Diamond Merchant#1) Rare Diamond Merchant#6 58 payon,180,130,6 duplicate(Rare Diamond Merchant#1) Rare Diamond Merchant#7 58