summaryrefslogtreecommitdiff
path: root/npc/events/valentinesday_2009.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/events/valentinesday_2009.txt')
-rw-r--r--npc/events/valentinesday_2009.txt1566
1 files changed, 783 insertions, 783 deletions
diff --git a/npc/events/valentinesday_2009.txt b/npc/events/valentinesday_2009.txt
index 0ecb45896..02845d3e2 100644
--- a/npc/events/valentinesday_2009.txt
+++ b/npc/events/valentinesday_2009.txt
@@ -1,784 +1,784 @@
-//===== eAthena Script =======================================
-//= iRO Valentine's Day Event (2009)
-//===== By: ==================================================
-//= Kisuka
-//===== Current Version: =====================================
-//= 1.2
-//===== Compatible With: =====================================
-//= eAthena SVN
-//===== Description: =========================================
-//= iRO Valentine's Day Event. (2009)
-//= Make Chocolate/Chocolate Boxes/Home-Made Chocolate.
-//= Make Valentine's Rings/Boxes.
-//= Trade rings to those of opposite gender.
-//= Register rings you have gotten for votes.
-//=
-//= The male and female with the most votes at the end of
-//= the event will receive item (14466) from GM team.
-//=
-//= Must enable the event items in item_db2 and item_trade!
-//===== Additional Comments: =================================
-//= 1.0 First version. [Kisuka]
-//= 1.1-1.2 Fixed exploits with unlimited rings and non deleting choco [Lupus]
-//============================================================
-
-// Marco Bassinio (Chocolate/Chocolate Box maker)
-prontera,164,174,4 script Trader#Val09 58,{
- mes "[Marco Bassinio]";
- mes "Hey, folks! Here's something you don't see everyday!";
- mes "Something you can never find in Rune-Midgarts!";
- mes "Something that makes you happy with just one bite!";
- next;
- mes "[Marco Bassinio]";
- mes "It's the perfect dessert and the perfect gift for loved ones.";
- mes "High-quality, traditional homemade chocolate only 5000z each!";
- next;
- switch(select("I'll take it, please!:I want to wrap the chocolate!:End trading.")) {
- case 1:
- mes "[Marco Bassinio]";
- mes "Ahaha, my dear.";
- mes "This chocolate is";
- mes "nothing like others.";
- mes "Every piece bears the";
- mes "devotion of the person";
- mes "who made it!";
- next;
- mes "[Marco Bassinio]";
- mes "So, that's why I can't sell";
- mes "more than 5 of them at a time.";
- mes "If you really really want more,";
- mes "then talk to me again.";
- mes "How many do you want anyway?";
- next;
- while(.@input <= 0 || .@input > 5) {
- input .@input;
- if (.@input < 1) {
- mes "[Marco Bassinio]";
- mes "Oh, it's such a shame!";
- mes "I'm sure you'll miss";
- mes "this opportunity and";
- mes "regret you didn't buy it.";
- next;
- mes "[Marco Bassinio]";
- mes "Remember, you can never";
- mes "find this anywhere else!";
- mes "Come back anytime,";
- mes "when you change your mind.";
- close;
- }
- if (.@val09choco > 5) {
- mes "[Marco Bassinio]";
- mes "Ugh.. Didn't I tell you?";
- mes "5 is the maximum!";
- mes "I can't sell more than";
- mes "that to the same person.";
- next;
- mes "[Marco Bassinio]";
- mes "And you know it's not";
- mes "like an everyday meal.";
- mes "Eating too much is not";
- mes "really good for you.";
- next;
- }
- }
- if (!checkweight(558, .@input)) {
- mes "[Marco Bassinio]";
- mes "You're carrying too many items.";
- mes "Please use the Kafra Services.";
- close;
- }
- set .@price, .@input * 5000;
- if (Zeny < .@price) {
- mes "[Marco Bassinio]";
- mes "Looks like you don't have";
- mes "enough zeny with ya.";
- mes "Maybe you should borrow";
- mes "some zeny from a friend.";
- mes "Cuz, I'm not gonna";
- mes "be here everyday.";
- close;
- }else{
- mes "[Marco Bassinio]";
- mes "Good for you!";
- mes "It's also perfect as a gift!";
- mes "You know you can't get this";
- mes "kind of chocolate normally.";
- next;
- mes "[Marco Bassinio]";
- mes "If you want more,";
- mes "you should come back.";
- mes "Might be a good idea to";
- mes "buy some more while";
- mes "you have a chance...!";
- set Zeny,Zeny - .@price;
- getitem 558,.@input;
- close;
- }
- case 2:
- mes "[Marco Bassinio]";
- mes "If you want to gift-wrap";
- mes "the chocolate, of course,";
- mes "you need chocolate,";
- mes "plus, wrapping paper,";
- mes "wrapping strap and a box.";
- next;
- mes "[Marco Bassinio]";
- mes "You also need to pay";
- mes "500 zeny to carve your";
- mes "name on the box.";
- mes "Are you all prepared...?";
- next;
- if(countitem(7175) < 1 || countitem(7174) < 1 || countitem(7948) < 1 || Zeny < 500) {
- mes "[Marco Bassinio]";
- mes "Hmm.. Looks like you don't";
- mes "have enough materials to";
- mes "decorate the gift box..";
- mes "You can't just put your gift";
- mes "into some plain looking box..";
- mes "Don't you think?";
- next;
- mes "[Marco Bassinio]";
- mes "You need to bring some";
- mes "wrapping paper,";
- mes "wrapping strap, and a box.";
- mes "Oh, also bring 500 zeny,";
- mes "and don't forget to bring your";
- mes "true loving heart with you!!";
- close;
- }
- if(countitem(558) < 1) {
- mes "[Marco Bassinio]";
- mes "Hey, look, adventurer!";
- mes "I can't create something right away!";
- mes "You know I'm not an alchemist or anything.";
- next;
- mes "[Marco Bassinio]";
- mes "You're not saying that you";
- mes "want an empty chocolate box";
- mes "without any chocolate in it,";
- mes "am I right?";
- close;
- }
- if (!checkweight(12744,1)) {
- mes "[Marco Bassinio]";
- mes "You're carrying too many items.";
- mes "Please use the Kafra Services.";
- close;
- }
- mes "[Marco Bassinio]";
- mes "Here, look!";
- mes "It's your chocolate box";
- mes "with your name on it.";
- mes "Isn't it fabulous?";
- mes "See, your name looks";
- mes "great on the box!";
- next;
- delitem 558,1;
- delitem 7175,1;
- delitem 7174,1;
- delitem 7948,1;
- set Zeny,Zeny-500;
- getnameditem 12744,strcharinfo(0);
- mes "[Marco Bassinio]";
- mes "Happy Valentine's Day!";
- mes "Valentine's the reason I came back.";
- close;
- case 3:
- mes "[Marco Bassinio]";
- mes "Oh, it's such a shame!";
- mes "I'm sure you'll miss";
- mes "this opportunity and";
- mes "regret you didn't buy it.";
- next;
- mes "[Marco Bassinio]";
- mes "Remember, you can never";
- mes "find this anywhere else!";
- mes "Come back anytime,";
- mes "when you change your mind.";
- close;
- }
-}
-
-// Packs Trader (Sells Wrapping Paper, Lace, and Box)
-prontera,147,171,5 script Packs Trader#Val09 58,{
- mes "[Packs Trader]";
- mes "Hello.";
- mes "I am a Packs Trader,";
- mes "I sell paper boxes and";
- mes "supplies for packing presents.";
- next;
- while(1) {
- mes "[Packs Trader]";
- mes "Do you have something to buy?";
- next;
- switch(select("Packing Paper:Packing Ribbon:Box:Cancel.")) {
- case 1:
- mes "[Packs Trader]";
- mes "It's 200 zeny for";
- mes "1 Packing Paper.";
- mes "How many do you want?";
- mes "You can't buy more";
- mes "than 10 items at once.";
- next;
- input .@input;
- if (.@input <= 0) {
- mes "[Packs Trader]";
- mes "Nothing to buy.";
- mes "Come back when";
- mes "you need something.";
- close;
- }
- if (.@input > 10) {
- mes "[Packs Trader]";
- mes "I told you not to buy more than 10...";
- next;
- break;
- }
- if (!checkweight(7175,.@input)) {
- mes "[Packs Trader]";
- mes "You're carrying too many items.";
- mes "Please use the Kafra Services.";
- close;
- }
- set .@price, .@input * 200;
- if (Zeny < .@price) {
- mes "[Packs Trader]";
- mes "You don't have enough money.";
- mes "Please check your wallet.";
- next;
- break;
- }else{
- mes "[Packs Trader]";
- mes "Here they are.";
- mes "Hope it makes your";
- mes "Valentine's Day";
- mes "more pleasing!";
- set Zeny,Zeny-.@price;
- getitem 7175,.@input;
- next;
- break;
- }
- case 2:
- mes "[Packs Trader]";
- mes "It's 200 zeny for";
- mes "1 Packing Ribbon.";
- mes "How many do you want?";
- mes "You can't buy more";
- mes "than 10 items at once.";
- next;
- input .@input;
- if (.@input <= 0) {
- mes "[Packs Trader]";
- mes "Nothing to buy.";
- mes "Come back when";
- mes "you need something.";
- close;
- }
- if (.@input > 10) {
- mes "[Packs Trader]";
- mes "I told you not to buy more than 10...";
- next;
- break;
- }
- if (!checkweight(7174,.@input)) {
- mes "[Packs Trader]";
- mes "You're carrying too many items.";
- mes "Please use the Kafra Services.";
- close;
- }
- set .@price, .@input * 200;
- if (Zeny < .@price) {
- mes "[Packs Trader]";
- mes "You don't have enough money.";
- mes "Please check your wallet.";
- next;
- break;
- }else{
- mes "[Packs Trader]";
- mes "Here they are.";
- mes "Hope it makes your";
- mes "Valentine's Day";
- mes "more pleasing!";
- set Zeny,Zeny-.@price;
- getitem 7174,.@input;
- next;
- break;
- }
- case 3:
- mes "[Packs Trader]";
- mes "It's 600 zeny for";
- mes "1 Box.";
- mes "How many do you want?";
- mes "You can't buy more";
- mes "than 10 items at once.";
- next;
- input .@input;
- if (.@input <= 0) {
- mes "[Packs Trader]";
- mes "Nothing to buy.";
- mes "Come back when";
- mes "you need something.";
- close;
- }
- if (.@input > 10) {
- mes "[Packs Trader]";
- mes "I told you not to buy more than 10...";
- next;
- break;
- }
- if (!checkweight(7948,.@input)) {
- mes "[Packs Trader]";
- mes "You're carrying too many items.";
- mes "Please use the Kafra Services.";
- close;
- }
- set .@price, .@input * 600;
- if (Zeny < .@price) {
- mes "[Packs Trader]";
- mes "You don't have enough money.";
- mes "Please check your wallet.";
- next;
- break;
- }else{
- mes "[Packs Trader]";
- mes "Here they are.";
- mes "Hope it makes your";
- mes "Valentine's Day";
- mes "more pleasing!";
- set Zeny,Zeny-.@price;
- getitem 7948,.@input;
- next;
- break;
- }
- case 4:
- mes "[Packs Trader]";
- mes "Goodbye!";
- mes "And enjoy your";
- mes "Valentine's Day.";
- close;
- }
- }
-}
-
-// Event Ring Maker (Makes ring for players)
-prontera,154,185,5 script Event Ring Maker#Val09 721,{
- if (BaseLevel < 75) {
- mes "[Event Ring Maker]";
- mes "Hello, I only make the";
- mes "Valentine rings to those";
- mes "experienced adventurers";
- mes "Level 75 or above.";
- next;
- mes "[Event Ring Maker]";
- mes "You're not fully";
- mes "experienced yet.";
- mes "Come back when you're";
- mes "experienced enough to";
- mes "handle the quests.";
- close;
- }
-
- if (iROval09ring >= 1) {
- mes "[Event Ring Maker]";
- mes "The box with the ring,";
- mes "carved with your name,";
- mes "is for the one you love.";
- next;
- mes "[Event Ring Maker]";
- mes "As for the rings that you";
- mes "receive from others, they";
- mes "should all be registered";
- mes "with the Vote Manager.";
- mes "She is standing near";
- mes "the Prontera Fountain.";
- next;
- mes "[Event Ring Maker]";
- mes "Only the most popular";
- mes "male and female are";
- mes "subjected to getting rewards.";
- mes "Be aware, and always";
- mes "try to stay popular!";
- close;
- }
-
- mes "[Event Ring Maker]";
- mes "Hi, there, how are ya?";
- mes "Come to me if you're";
- mes "interested in the event,";
- mes "'Who's Valentine's Hottest?'";
- next;
- mes "[Event Ring Maker]";
- mes "I make the most precious";
- mes "rings that you can give";
- mes "to your sweethearts.";
- mes "Those rings are very special";
- mes "because I carve";
- mes "your names on them!";
- next;
- mes "[Event Ring Maker]";
- mes "Isn't it exciting?";
- mes "Isn't it such a brilliant idea?";
- mes "Give these special rings";
- mes "to your sweethearts!";
- next;
- mes "[Event Ring Maker]";
- mes "You should hurry 'cuz";
- mes "this event will only";
- mes "last for two weeks.";
- mes "Give that special someone";
- mes "a gift of a Valentine's ring.";
- next;
- mes "[Event Ring Maker]";
- mes "Remember, you can only";
- mes "generate the ring once.";
- mes "You also need Wrapping Paper,";
- mes "Wrapping Strap and a Box";
- mes "to make the ring.";
- next;
- mes "[Event Ring Maker]";
- mes "So you better be sure";
- mes "of who you give this to.";
- mes "By the way,";
- mes "It costs 1,000 zeny.";
- mes "Would you like to make one?";
- next;
- if(select("Hmm.. I gotta give it a second thought...:Sure.") == 1) {
- mes "[Event Ring Maker]";
- mes "Alrighty!";
- mes "You can't put a rush";
- mes "on such a thing like this.";
- mes "Think about what";
- mes "you truly want.";
- mes "Just follow your heart!";
- close;
- }
- if(countitem(7175) < 1 || countitem(7174) < 1 || countitem(7948) < 1 || Zeny < 1000) {
- mes "[Event Ring Maker]";
- mes "Well, you don't have";
- mes "enough materials";
- mes "to make a gift box.";
- mes "Check what you have,";
- mes "and come back later";
- mes "with all the materials.";
- close;
- }
- mes "[Event Ring Maker]";
- mes "Okie Dokie!";
- mes "I'll make it right away.";
- next;
- delitem 7175,1;
- delitem 7174,1;
- delitem 7948,1;
- set Zeny,Zeny-1000;
- set iROval09ring,1;
- if (Sex) {
- getnameditem 12742,strcharinfo(0);
- }else{
- getnameditem 12743,strcharinfo(0);
- }
- mes "[Event Ring Maker]";
- mes "Here, the most precious";
- mes "ring in the world!";
- mes "Don't forget, you can never";
- mes "make this ring again.";
- next;
- mes "[Event Ring Maker]";
- mes "You must pick out the one";
- mes "that you really really love,";
- mes "and give this ring";
- mes "to that person.";
- next;
- mes "[Event Ring Maker]";
- mes "Of course, you've got to";
- mes "get rings from others,";
- mes "that's the way you can";
- mes "participate in the voting, right?";
- mes "Challenge yourself to become";
- mes "Valentine's Hottest!";
- close;
-}
-
-// Valentine Vote Manager (Registers votes)
-prontera,157,185,4 script Valentine Vote Manager#v 113,{
- mes "[Valentine Vote Manager]";
- mes "Hello, I'm the Valentine's";
- mes "Vote Manager.";
- mes "I'm in charge of collecting";
- mes "rings for this event!";
- next;
- mes "[Valentine Vote Manager]";
- mes "I register the rings";
- mes "you get from others";
- mes "and I calculate the";
- mes "total number of rings.";
- next;
- mes "[Valentine Vote Manager]";
- mes "You know what I do besides";
- mes "just counting those rings?";
- mes "I can tell you the adventurer's";
- mes "name who's got the";
- mes "most number of votes.";
- next;
- mes "[Valentine Vote Manager]";
- mes "Plus, you can also find out how";
- mes "many votes he/she got.";
- next;
- while (1) {
- mes "[Valentine Vote Manager]";
- mes "So, what do you want?";
- next;
- switch(select("Please register my rings.:Please count my votes.:Nothing, for now.")) {
- case 1:
- mes "[Valentine Vote Manager]";
- mes "Please tell me how many";
- mes "rings you want to register.";
- next;
- mes "[Valentine Vote Manager]";
- mes "When you write the";
- mes "number of the rings,";
- mes "the number shouldn't be";
- mes "larger than the number of";
- mes "rings you actually have.";
- mes "'0', cancels everything.";
- next;
- input .@input;
-
- if (.@input <= 0) {
- mes "[Valentine Vote Manager]";
- mes "You have entered 0.";
- mes "Registration is cancelled.";
- next;
- break;
- }
-
- if (Sex) {
- if (countitem(7947) > .@input) {
- mes "[Valentine Vote Manager]";
- mes "Seems like the value you entered is too small.";
- mes "I know you've got more. Be honest, dear.";
- next;
- break;
- }
-
- if (countitem(7947) < .@input) {
- mes "[Valentine Vote Manager]";
- mes "Seems like the value you entered is too large.";
- mes "I know you've got less. Be honest, dear.";
- next;
- break;
- }
-
- mes "[Valentine Vote Manager]";
- mes "I'll take those silver rings,";
- mes "and count the votes for you.";
- mes "Thank you for participating.";
- delitem 7947,.@input;
- set Val09Rings,Val09Rings+.@input;
- if (Val09Rings > $Val09votes_M) {
- set $Val09votes_M,Val09Rings;
- set $Val09name_M$,strcharinfo(0);
- }
- next;
- break;
- }else{
- if (countitem(7946) > .@input) {
- mes "[Valentine Vote Manager]";
- mes "Seems like the value you entered is too small.";
- mes "I know you've got more. Be honest, dear.";
- next;
- break;
- }
-
- if (countitem(7946) < .@input) {
- mes "[Valentine Vote Manager]";
- mes "Seems like the value you entered is too large.";
- mes "I know you've got less. Be honest, dear.";
- next;
- break;
- }
-
- mes "[Valentine Vote Manager]";
- mes "I'll take those gold rings,";
- mes "and count the votes for you.";
- mes "Thank you for participating.";
- delitem 7946,.@input;
- set Val09Rings,Val09Rings+.@input;
- if (Val09Rings > $Val09votes_F) {
- set $Val09votes_F,Val09Rings;
- set $Val09name_F$,strcharinfo(0);
- }
- next;
- break;
- }
- case 2:
- mes "[Valentine Vote Manager]";
- mes "Let's see...";
- mes "You have registered..";
- mes ".."+Val09Rings+" rings so far.";
- mes "and...";
- next;
- mes "[Valentine Vote Manager]";
- mes "The current record shows... "+$Val09name_M$+" is the male vote leader who's registered the total of "+$Val09votes_M+" rings.";
- next;
- mes "[Valentine Vote Manager]";
- mes "The current record shows... "+$Val09name_F$+" is the female vote leader who's registered the total of "+$Val09votes_F+" rings.";
- next;
- break;
-
- case 3:
- mes "[Valentine Vote Manager]";
- mes "Hey, you can be popular too!";
- mes "Anyone can... really!";
- mes "Though you have to try a lot";
- mes "harder, but still~ Hahaha!";
- close;
- }
- }
-}
-
-// Charles Orleans (Makes Home-Made Chocolates)
-prt_castle,42,35,3 script Dessert Manager#Val09 47,{
- if (Sex) {
- mes "[Charles Orleans]";
- mes "Monsieur~! What brings";
- mes "you to my beautiful atelier?";
- mes "What is it that you want?";
- mes "Well, my sparkling eyes";
- mes "get dried and lose their shine";
- mes "if not for the pretty little lady.";
- next;
- mes "[Charles Orleans]";
- mes "Please leave me alone unless";
- mes "you have business with me.";
- mes "Haaaa~ I'm a busy person.";
- mes "Don't bother me....";
- mes "Annoying, annoying, annoying~~!";
- close;
- }
-
- mes "[Charles Orleans]";
- mes "Oh, Mademoiselle!";
- mes "This little trifling space";
- mes "felt like heaven the";
- mes "minute you walked in!";
- mes "Can I help you with";
- mes "anything, if it's alright?";
- next;
- if(select("Please, make me some chocolate.:Don't bother. I'm just passing by.") == 2) {
- mes "[Charles Orleans]";
- mes "Ahhh, this is so heartbreaking.";
- mes "How could you say that?";
- mes "You're just so mean.";
- mes "Don't bother? Just passing by?";
- next;
- mes "[Charles Orleans]";
- mes "What can I do to make you";
- mes "pay a little attention to me?";
- mes "Please.. I feel like my soul is lost..";
- close;
- }
- if(countitem(558) < 3) {
- mes "[Charles Orleans]";
- mes "Ahhh, Mademoiselle.";
- mes "I'm not an alchemist,";
- mes "or a magician.";
- mes "I don't just make chocolate";
- mes "out of anything.";
- next;
- mes "[Charles Orleans]";
- mes "I always think of making";
- mes "chocolate as artistic work.";
- mes "You see, I'm no ordinary cook...";
- mes "I make chocolate with feelings..";
- mes "messages of loving hearts..";
- next;
- mes "[Charles Orleans]";
- mes "I make masterpieces.";
- mes "No one can imitate";
- mes "the looks and the taste.";
- mes "Yes, it's nothing like";
- mes "ordinary chocolate!";
- next;
- mes "[Charles Orleans]";
- mes "I'm afraid I can't make it";
- mes "and prove it to you now.";
- mes "This is really a shame!";
- next;
- mes "[Charles Orleans]";
- mes "I really want to thank";
- mes "you for visiting me";
- mes "and if you only bring";
- mes "^3152ff3 Chocolates^000000,";
- mes "I'll make you chocolate";
- mes "like you've never seen...";
- next;
- mes "[Charles Orleans]";
- mes "never tasted before...";
- mes "Mademoiselle, with your spirit,";
- mes "I'm sure you can bring";
- mes "3 pieces of chocolate.";
- mes "I have no doubt at all.";
- next;
- mes "[Charles Orleans]";
- mes "So... what do you think?";
- mes "Can you bring ^3152ff3 Chocolates^000000?";
- mes "I could get them myself,";
- mes "but I'm tied up with so much";
- mes "work as you see right now.";
- next;
- mes "[Charles Orleans]";
- mes "Adios, Mademoiselle.....";
- mes "I'll be waiting for you.";
- close;
- }else{
- if (!checkweight(559,1)) {
- mes "[Charles Orleans]";
- mes "You're carrying too many items.";
- mes "Please use the Kafra Services.";
- close;
- }
- mes "[Charles Orleans]";
- mes "Oh, Mademoiselle!";
- mes "I'll make the best chocolate";
- mes "with the pieces you've brought.";
- mes "I'm going to put the light of";
- mes "your eyes into this chocolate";
- mes "that no one can resist.";
- next;
- mes "[Charles Orleans]";
- mes "It'll be stronger than a";
- mes "sweet sweet love potion.....";
- next;
- mes "[Charles Orleans]";
- mes "Un, Deux, Trois, Quatre.....";
- mes "Just like the ugly duckling that";
- mes "turned to a beautiful swan-";
- mes "Ordinary chocolate pieces are";
- mes "becoming a piece of art!";
- next;
- mes "[Charles Orleans]";
- mes "They're changing!";
- mes "They're getting warm,";
- mes "softly changing the shape,";
- mes "getting stronger again!";
- mes "Oh, is it a master piece or";
- mes "what...!!";
- next;
- mes "[Charles Orleans]";
- mes "Here you go, Mademoiselle!";
- mes "Ahahahaha, just look at this!";
- mes "I can't believe I made this.";
- mes "Oh, I can't take my eyes off..!!";
- delitem 558,3;
- getitem 559,1;
- next;
- mes "[Charles Orleans]";
- mes "Alright. Mademoiselle,";
- mes "I hope this is just";
- mes "what you wanted,";
- mes "for it bears your";
- mes "beautiful heart inside.";
- close;
- }
-
+//===== eAthena Script =======================================
+//= iRO Valentine's Day Event (2009)
+//===== By: ==================================================
+//= Kisuka
+//===== Current Version: =====================================
+//= 1.2
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= iRO Valentine's Day Event. (2009)
+//= Make Chocolate/Chocolate Boxes/Home-Made Chocolate.
+//= Make Valentine's Rings/Boxes.
+//= Trade rings to those of opposite gender.
+//= Register rings you have gotten for votes.
+//=
+//= The male and female with the most votes at the end of
+//= the event will receive item (14466) from GM team.
+//=
+//= Must enable the event items in item_db2 and item_trade!
+//===== Additional Comments: =================================
+//= 1.0 First version. [Kisuka]
+//= 1.1-1.2 Fixed exploits with unlimited rings and non deleting choco [Lupus]
+//============================================================
+
+// Marco Bassinio (Chocolate/Chocolate Box maker)
+prontera,164,174,4 script Trader#Val09 58,{
+ mes "[Marco Bassinio]";
+ mes "Hey, folks! Here's something you don't see everyday!";
+ mes "Something you can never find in Rune-Midgarts!";
+ mes "Something that makes you happy with just one bite!";
+ next;
+ mes "[Marco Bassinio]";
+ mes "It's the perfect dessert and the perfect gift for loved ones.";
+ mes "High-quality, traditional homemade chocolate only 5000z each!";
+ next;
+ switch(select("I'll take it, please!:I want to wrap the chocolate!:End trading.")) {
+ case 1:
+ mes "[Marco Bassinio]";
+ mes "Ahaha, my dear.";
+ mes "This chocolate is";
+ mes "nothing like others.";
+ mes "Every piece bears the";
+ mes "devotion of the person";
+ mes "who made it!";
+ next;
+ mes "[Marco Bassinio]";
+ mes "So, that's why I can't sell";
+ mes "more than 5 of them at a time.";
+ mes "If you really really want more,";
+ mes "then talk to me again.";
+ mes "How many do you want anyway?";
+ next;
+ while(.@input <= 0 || .@input > 5) {
+ input .@input;
+ if (.@input < 1) {
+ mes "[Marco Bassinio]";
+ mes "Oh, it's such a shame!";
+ mes "I'm sure you'll miss";
+ mes "this opportunity and";
+ mes "regret you didn't buy it.";
+ next;
+ mes "[Marco Bassinio]";
+ mes "Remember, you can never";
+ mes "find this anywhere else!";
+ mes "Come back anytime,";
+ mes "when you change your mind.";
+ close;
+ }
+ if (.@val09choco > 5) {
+ mes "[Marco Bassinio]";
+ mes "Ugh.. Didn't I tell you?";
+ mes "5 is the maximum!";
+ mes "I can't sell more than";
+ mes "that to the same person.";
+ next;
+ mes "[Marco Bassinio]";
+ mes "And you know it's not";
+ mes "like an everyday meal.";
+ mes "Eating too much is not";
+ mes "really good for you.";
+ next;
+ }
+ }
+ if (!checkweight(558, .@input)) {
+ mes "[Marco Bassinio]";
+ mes "You're carrying too many items.";
+ mes "Please use the Kafra Services.";
+ close;
+ }
+ set .@price, .@input * 5000;
+ if (Zeny < .@price) {
+ mes "[Marco Bassinio]";
+ mes "Looks like you don't have";
+ mes "enough zeny with ya.";
+ mes "Maybe you should borrow";
+ mes "some zeny from a friend.";
+ mes "Cuz, I'm not gonna";
+ mes "be here everyday.";
+ close;
+ }else{
+ mes "[Marco Bassinio]";
+ mes "Good for you!";
+ mes "It's also perfect as a gift!";
+ mes "You know you can't get this";
+ mes "kind of chocolate normally.";
+ next;
+ mes "[Marco Bassinio]";
+ mes "If you want more,";
+ mes "you should come back.";
+ mes "Might be a good idea to";
+ mes "buy some more while";
+ mes "you have a chance...!";
+ set Zeny,Zeny - .@price;
+ getitem 558,.@input;
+ close;
+ }
+ case 2:
+ mes "[Marco Bassinio]";
+ mes "If you want to gift-wrap";
+ mes "the chocolate, of course,";
+ mes "you need chocolate,";
+ mes "plus, wrapping paper,";
+ mes "wrapping strap and a box.";
+ next;
+ mes "[Marco Bassinio]";
+ mes "You also need to pay";
+ mes "500 zeny to carve your";
+ mes "name on the box.";
+ mes "Are you all prepared...?";
+ next;
+ if(countitem(7175) < 1 || countitem(7174) < 1 || countitem(7948) < 1 || Zeny < 500) {
+ mes "[Marco Bassinio]";
+ mes "Hmm.. Looks like you don't";
+ mes "have enough materials to";
+ mes "decorate the gift box..";
+ mes "You can't just put your gift";
+ mes "into some plain looking box..";
+ mes "Don't you think?";
+ next;
+ mes "[Marco Bassinio]";
+ mes "You need to bring some";
+ mes "wrapping paper,";
+ mes "wrapping strap, and a box.";
+ mes "Oh, also bring 500 zeny,";
+ mes "and don't forget to bring your";
+ mes "true loving heart with you!!";
+ close;
+ }
+ if(countitem(558) < 1) {
+ mes "[Marco Bassinio]";
+ mes "Hey, look, adventurer!";
+ mes "I can't create something right away!";
+ mes "You know I'm not an alchemist or anything.";
+ next;
+ mes "[Marco Bassinio]";
+ mes "You're not saying that you";
+ mes "want an empty chocolate box";
+ mes "without any chocolate in it,";
+ mes "am I right?";
+ close;
+ }
+ if (!checkweight(12744,1)) {
+ mes "[Marco Bassinio]";
+ mes "You're carrying too many items.";
+ mes "Please use the Kafra Services.";
+ close;
+ }
+ mes "[Marco Bassinio]";
+ mes "Here, look!";
+ mes "It's your chocolate box";
+ mes "with your name on it.";
+ mes "Isn't it fabulous?";
+ mes "See, your name looks";
+ mes "great on the box!";
+ next;
+ delitem 558,1;
+ delitem 7175,1;
+ delitem 7174,1;
+ delitem 7948,1;
+ set Zeny,Zeny-500;
+ getnameditem 12744,strcharinfo(0);
+ mes "[Marco Bassinio]";
+ mes "Happy Valentine's Day!";
+ mes "Valentine's the reason I came back.";
+ close;
+ case 3:
+ mes "[Marco Bassinio]";
+ mes "Oh, it's such a shame!";
+ mes "I'm sure you'll miss";
+ mes "this opportunity and";
+ mes "regret you didn't buy it.";
+ next;
+ mes "[Marco Bassinio]";
+ mes "Remember, you can never";
+ mes "find this anywhere else!";
+ mes "Come back anytime,";
+ mes "when you change your mind.";
+ close;
+ }
+}
+
+// Packs Trader (Sells Wrapping Paper, Lace, and Box)
+prontera,147,171,5 script Packs Trader#Val09 58,{
+ mes "[Packs Trader]";
+ mes "Hello.";
+ mes "I am a Packs Trader,";
+ mes "I sell paper boxes and";
+ mes "supplies for packing presents.";
+ next;
+ while(1) {
+ mes "[Packs Trader]";
+ mes "Do you have something to buy?";
+ next;
+ switch(select("Packing Paper:Packing Ribbon:Box:Cancel.")) {
+ case 1:
+ mes "[Packs Trader]";
+ mes "It's 200 zeny for";
+ mes "1 Packing Paper.";
+ mes "How many do you want?";
+ mes "You can't buy more";
+ mes "than 10 items at once.";
+ next;
+ input .@input;
+ if (.@input <= 0) {
+ mes "[Packs Trader]";
+ mes "Nothing to buy.";
+ mes "Come back when";
+ mes "you need something.";
+ close;
+ }
+ if (.@input > 10) {
+ mes "[Packs Trader]";
+ mes "I told you not to buy more than 10...";
+ next;
+ break;
+ }
+ if (!checkweight(7175,.@input)) {
+ mes "[Packs Trader]";
+ mes "You're carrying too many items.";
+ mes "Please use the Kafra Services.";
+ close;
+ }
+ set .@price, .@input * 200;
+ if (Zeny < .@price) {
+ mes "[Packs Trader]";
+ mes "You don't have enough money.";
+ mes "Please check your wallet.";
+ next;
+ break;
+ }else{
+ mes "[Packs Trader]";
+ mes "Here they are.";
+ mes "Hope it makes your";
+ mes "Valentine's Day";
+ mes "more pleasing!";
+ set Zeny,Zeny-.@price;
+ getitem 7175,.@input;
+ next;
+ break;
+ }
+ case 2:
+ mes "[Packs Trader]";
+ mes "It's 200 zeny for";
+ mes "1 Packing Ribbon.";
+ mes "How many do you want?";
+ mes "You can't buy more";
+ mes "than 10 items at once.";
+ next;
+ input .@input;
+ if (.@input <= 0) {
+ mes "[Packs Trader]";
+ mes "Nothing to buy.";
+ mes "Come back when";
+ mes "you need something.";
+ close;
+ }
+ if (.@input > 10) {
+ mes "[Packs Trader]";
+ mes "I told you not to buy more than 10...";
+ next;
+ break;
+ }
+ if (!checkweight(7174,.@input)) {
+ mes "[Packs Trader]";
+ mes "You're carrying too many items.";
+ mes "Please use the Kafra Services.";
+ close;
+ }
+ set .@price, .@input * 200;
+ if (Zeny < .@price) {
+ mes "[Packs Trader]";
+ mes "You don't have enough money.";
+ mes "Please check your wallet.";
+ next;
+ break;
+ }else{
+ mes "[Packs Trader]";
+ mes "Here they are.";
+ mes "Hope it makes your";
+ mes "Valentine's Day";
+ mes "more pleasing!";
+ set Zeny,Zeny-.@price;
+ getitem 7174,.@input;
+ next;
+ break;
+ }
+ case 3:
+ mes "[Packs Trader]";
+ mes "It's 600 zeny for";
+ mes "1 Box.";
+ mes "How many do you want?";
+ mes "You can't buy more";
+ mes "than 10 items at once.";
+ next;
+ input .@input;
+ if (.@input <= 0) {
+ mes "[Packs Trader]";
+ mes "Nothing to buy.";
+ mes "Come back when";
+ mes "you need something.";
+ close;
+ }
+ if (.@input > 10) {
+ mes "[Packs Trader]";
+ mes "I told you not to buy more than 10...";
+ next;
+ break;
+ }
+ if (!checkweight(7948,.@input)) {
+ mes "[Packs Trader]";
+ mes "You're carrying too many items.";
+ mes "Please use the Kafra Services.";
+ close;
+ }
+ set .@price, .@input * 600;
+ if (Zeny < .@price) {
+ mes "[Packs Trader]";
+ mes "You don't have enough money.";
+ mes "Please check your wallet.";
+ next;
+ break;
+ }else{
+ mes "[Packs Trader]";
+ mes "Here they are.";
+ mes "Hope it makes your";
+ mes "Valentine's Day";
+ mes "more pleasing!";
+ set Zeny,Zeny-.@price;
+ getitem 7948,.@input;
+ next;
+ break;
+ }
+ case 4:
+ mes "[Packs Trader]";
+ mes "Goodbye!";
+ mes "And enjoy your";
+ mes "Valentine's Day.";
+ close;
+ }
+ }
+}
+
+// Event Ring Maker (Makes ring for players)
+prontera,154,185,5 script Event Ring Maker#Val09 721,{
+ if (BaseLevel < 75) {
+ mes "[Event Ring Maker]";
+ mes "Hello, I only make the";
+ mes "Valentine rings to those";
+ mes "experienced adventurers";
+ mes "Level 75 or above.";
+ next;
+ mes "[Event Ring Maker]";
+ mes "You're not fully";
+ mes "experienced yet.";
+ mes "Come back when you're";
+ mes "experienced enough to";
+ mes "handle the quests.";
+ close;
+ }
+
+ if (iROval09ring >= 1) {
+ mes "[Event Ring Maker]";
+ mes "The box with the ring,";
+ mes "carved with your name,";
+ mes "is for the one you love.";
+ next;
+ mes "[Event Ring Maker]";
+ mes "As for the rings that you";
+ mes "receive from others, they";
+ mes "should all be registered";
+ mes "with the Vote Manager.";
+ mes "She is standing near";
+ mes "the Prontera Fountain.";
+ next;
+ mes "[Event Ring Maker]";
+ mes "Only the most popular";
+ mes "male and female are";
+ mes "subjected to getting rewards.";
+ mes "Be aware, and always";
+ mes "try to stay popular!";
+ close;
+ }
+
+ mes "[Event Ring Maker]";
+ mes "Hi, there, how are ya?";
+ mes "Come to me if you're";
+ mes "interested in the event,";
+ mes "'Who's Valentine's Hottest?'";
+ next;
+ mes "[Event Ring Maker]";
+ mes "I make the most precious";
+ mes "rings that you can give";
+ mes "to your sweethearts.";
+ mes "Those rings are very special";
+ mes "because I carve";
+ mes "your names on them!";
+ next;
+ mes "[Event Ring Maker]";
+ mes "Isn't it exciting?";
+ mes "Isn't it such a brilliant idea?";
+ mes "Give these special rings";
+ mes "to your sweethearts!";
+ next;
+ mes "[Event Ring Maker]";
+ mes "You should hurry 'cuz";
+ mes "this event will only";
+ mes "last for two weeks.";
+ mes "Give that special someone";
+ mes "a gift of a Valentine's ring.";
+ next;
+ mes "[Event Ring Maker]";
+ mes "Remember, you can only";
+ mes "generate the ring once.";
+ mes "You also need Wrapping Paper,";
+ mes "Wrapping Strap and a Box";
+ mes "to make the ring.";
+ next;
+ mes "[Event Ring Maker]";
+ mes "So you better be sure";
+ mes "of who you give this to.";
+ mes "By the way,";
+ mes "It costs 1,000 zeny.";
+ mes "Would you like to make one?";
+ next;
+ if(select("Hmm.. I gotta give it a second thought...:Sure.") == 1) {
+ mes "[Event Ring Maker]";
+ mes "Alrighty!";
+ mes "You can't put a rush";
+ mes "on such a thing like this.";
+ mes "Think about what";
+ mes "you truly want.";
+ mes "Just follow your heart!";
+ close;
+ }
+ if(countitem(7175) < 1 || countitem(7174) < 1 || countitem(7948) < 1 || Zeny < 1000) {
+ mes "[Event Ring Maker]";
+ mes "Well, you don't have";
+ mes "enough materials";
+ mes "to make a gift box.";
+ mes "Check what you have,";
+ mes "and come back later";
+ mes "with all the materials.";
+ close;
+ }
+ mes "[Event Ring Maker]";
+ mes "Okie Dokie!";
+ mes "I'll make it right away.";
+ next;
+ delitem 7175,1;
+ delitem 7174,1;
+ delitem 7948,1;
+ set Zeny,Zeny-1000;
+ set iROval09ring,1;
+ if (Sex) {
+ getnameditem 12742,strcharinfo(0);
+ }else{
+ getnameditem 12743,strcharinfo(0);
+ }
+ mes "[Event Ring Maker]";
+ mes "Here, the most precious";
+ mes "ring in the world!";
+ mes "Don't forget, you can never";
+ mes "make this ring again.";
+ next;
+ mes "[Event Ring Maker]";
+ mes "You must pick out the one";
+ mes "that you really really love,";
+ mes "and give this ring";
+ mes "to that person.";
+ next;
+ mes "[Event Ring Maker]";
+ mes "Of course, you've got to";
+ mes "get rings from others,";
+ mes "that's the way you can";
+ mes "participate in the voting, right?";
+ mes "Challenge yourself to become";
+ mes "Valentine's Hottest!";
+ close;
+}
+
+// Valentine Vote Manager (Registers votes)
+prontera,157,185,4 script Valentine Vote Manager#v 113,{
+ mes "[Valentine Vote Manager]";
+ mes "Hello, I'm the Valentine's";
+ mes "Vote Manager.";
+ mes "I'm in charge of collecting";
+ mes "rings for this event!";
+ next;
+ mes "[Valentine Vote Manager]";
+ mes "I register the rings";
+ mes "you get from others";
+ mes "and I calculate the";
+ mes "total number of rings.";
+ next;
+ mes "[Valentine Vote Manager]";
+ mes "You know what I do besides";
+ mes "just counting those rings?";
+ mes "I can tell you the adventurer's";
+ mes "name who's got the";
+ mes "most number of votes.";
+ next;
+ mes "[Valentine Vote Manager]";
+ mes "Plus, you can also find out how";
+ mes "many votes he/she got.";
+ next;
+ while (1) {
+ mes "[Valentine Vote Manager]";
+ mes "So, what do you want?";
+ next;
+ switch(select("Please register my rings.:Please count my votes.:Nothing, for now.")) {
+ case 1:
+ mes "[Valentine Vote Manager]";
+ mes "Please tell me how many";
+ mes "rings you want to register.";
+ next;
+ mes "[Valentine Vote Manager]";
+ mes "When you write the";
+ mes "number of the rings,";
+ mes "the number shouldn't be";
+ mes "larger than the number of";
+ mes "rings you actually have.";
+ mes "'0', cancels everything.";
+ next;
+ input .@input;
+
+ if (.@input <= 0) {
+ mes "[Valentine Vote Manager]";
+ mes "You have entered 0.";
+ mes "Registration is cancelled.";
+ next;
+ break;
+ }
+
+ if (Sex) {
+ if (countitem(7947) > .@input) {
+ mes "[Valentine Vote Manager]";
+ mes "Seems like the value you entered is too small.";
+ mes "I know you've got more. Be honest, dear.";
+ next;
+ break;
+ }
+
+ if (countitem(7947) < .@input) {
+ mes "[Valentine Vote Manager]";
+ mes "Seems like the value you entered is too large.";
+ mes "I know you've got less. Be honest, dear.";
+ next;
+ break;
+ }
+
+ mes "[Valentine Vote Manager]";
+ mes "I'll take those silver rings,";
+ mes "and count the votes for you.";
+ mes "Thank you for participating.";
+ delitem 7947,.@input;
+ set Val09Rings,Val09Rings+.@input;
+ if (Val09Rings > $Val09votes_M) {
+ set $Val09votes_M,Val09Rings;
+ set $Val09name_M$,strcharinfo(0);
+ }
+ next;
+ break;
+ }else{
+ if (countitem(7946) > .@input) {
+ mes "[Valentine Vote Manager]";
+ mes "Seems like the value you entered is too small.";
+ mes "I know you've got more. Be honest, dear.";
+ next;
+ break;
+ }
+
+ if (countitem(7946) < .@input) {
+ mes "[Valentine Vote Manager]";
+ mes "Seems like the value you entered is too large.";
+ mes "I know you've got less. Be honest, dear.";
+ next;
+ break;
+ }
+
+ mes "[Valentine Vote Manager]";
+ mes "I'll take those gold rings,";
+ mes "and count the votes for you.";
+ mes "Thank you for participating.";
+ delitem 7946,.@input;
+ set Val09Rings,Val09Rings+.@input;
+ if (Val09Rings > $Val09votes_F) {
+ set $Val09votes_F,Val09Rings;
+ set $Val09name_F$,strcharinfo(0);
+ }
+ next;
+ break;
+ }
+ case 2:
+ mes "[Valentine Vote Manager]";
+ mes "Let's see...";
+ mes "You have registered..";
+ mes ".."+Val09Rings+" rings so far.";
+ mes "and...";
+ next;
+ mes "[Valentine Vote Manager]";
+ mes "The current record shows... "+$Val09name_M$+" is the male vote leader who's registered the total of "+$Val09votes_M+" rings.";
+ next;
+ mes "[Valentine Vote Manager]";
+ mes "The current record shows... "+$Val09name_F$+" is the female vote leader who's registered the total of "+$Val09votes_F+" rings.";
+ next;
+ break;
+
+ case 3:
+ mes "[Valentine Vote Manager]";
+ mes "Hey, you can be popular too!";
+ mes "Anyone can... really!";
+ mes "Though you have to try a lot";
+ mes "harder, but still~ Hahaha!";
+ close;
+ }
+ }
+}
+
+// Charles Orleans (Makes Home-Made Chocolates)
+prt_castle,42,35,3 script Dessert Manager#Val09 47,{
+ if (Sex) {
+ mes "[Charles Orleans]";
+ mes "Monsieur~! What brings";
+ mes "you to my beautiful atelier?";
+ mes "What is it that you want?";
+ mes "Well, my sparkling eyes";
+ mes "get dried and lose their shine";
+ mes "if not for the pretty little lady.";
+ next;
+ mes "[Charles Orleans]";
+ mes "Please leave me alone unless";
+ mes "you have business with me.";
+ mes "Haaaa~ I'm a busy person.";
+ mes "Don't bother me....";
+ mes "Annoying, annoying, annoying~~!";
+ close;
+ }
+
+ mes "[Charles Orleans]";
+ mes "Oh, Mademoiselle!";
+ mes "This little trifling space";
+ mes "felt like heaven the";
+ mes "minute you walked in!";
+ mes "Can I help you with";
+ mes "anything, if it's alright?";
+ next;
+ if(select("Please, make me some chocolate.:Don't bother. I'm just passing by.") == 2) {
+ mes "[Charles Orleans]";
+ mes "Ahhh, this is so heartbreaking.";
+ mes "How could you say that?";
+ mes "You're just so mean.";
+ mes "Don't bother? Just passing by?";
+ next;
+ mes "[Charles Orleans]";
+ mes "What can I do to make you";
+ mes "pay a little attention to me?";
+ mes "Please.. I feel like my soul is lost..";
+ close;
+ }
+ if(countitem(558) < 3) {
+ mes "[Charles Orleans]";
+ mes "Ahhh, Mademoiselle.";
+ mes "I'm not an alchemist,";
+ mes "or a magician.";
+ mes "I don't just make chocolate";
+ mes "out of anything.";
+ next;
+ mes "[Charles Orleans]";
+ mes "I always think of making";
+ mes "chocolate as artistic work.";
+ mes "You see, I'm no ordinary cook...";
+ mes "I make chocolate with feelings..";
+ mes "messages of loving hearts..";
+ next;
+ mes "[Charles Orleans]";
+ mes "I make masterpieces.";
+ mes "No one can imitate";
+ mes "the looks and the taste.";
+ mes "Yes, it's nothing like";
+ mes "ordinary chocolate!";
+ next;
+ mes "[Charles Orleans]";
+ mes "I'm afraid I can't make it";
+ mes "and prove it to you now.";
+ mes "This is really a shame!";
+ next;
+ mes "[Charles Orleans]";
+ mes "I really want to thank";
+ mes "you for visiting me";
+ mes "and if you only bring";
+ mes "^3152ff3 Chocolates^000000,";
+ mes "I'll make you chocolate";
+ mes "like you've never seen...";
+ next;
+ mes "[Charles Orleans]";
+ mes "never tasted before...";
+ mes "Mademoiselle, with your spirit,";
+ mes "I'm sure you can bring";
+ mes "3 pieces of chocolate.";
+ mes "I have no doubt at all.";
+ next;
+ mes "[Charles Orleans]";
+ mes "So... what do you think?";
+ mes "Can you bring ^3152ff3 Chocolates^000000?";
+ mes "I could get them myself,";
+ mes "but I'm tied up with so much";
+ mes "work as you see right now.";
+ next;
+ mes "[Charles Orleans]";
+ mes "Adios, Mademoiselle.....";
+ mes "I'll be waiting for you.";
+ close;
+ }else{
+ if (!checkweight(559,1)) {
+ mes "[Charles Orleans]";
+ mes "You're carrying too many items.";
+ mes "Please use the Kafra Services.";
+ close;
+ }
+ mes "[Charles Orleans]";
+ mes "Oh, Mademoiselle!";
+ mes "I'll make the best chocolate";
+ mes "with the pieces you've brought.";
+ mes "I'm going to put the light of";
+ mes "your eyes into this chocolate";
+ mes "that no one can resist.";
+ next;
+ mes "[Charles Orleans]";
+ mes "It'll be stronger than a";
+ mes "sweet sweet love potion.....";
+ next;
+ mes "[Charles Orleans]";
+ mes "Un, Deux, Trois, Quatre.....";
+ mes "Just like the ugly duckling that";
+ mes "turned to a beautiful swan-";
+ mes "Ordinary chocolate pieces are";
+ mes "becoming a piece of art!";
+ next;
+ mes "[Charles Orleans]";
+ mes "They're changing!";
+ mes "They're getting warm,";
+ mes "softly changing the shape,";
+ mes "getting stronger again!";
+ mes "Oh, is it a master piece or";
+ mes "what...!!";
+ next;
+ mes "[Charles Orleans]";
+ mes "Here you go, Mademoiselle!";
+ mes "Ahahahaha, just look at this!";
+ mes "I can't believe I made this.";
+ mes "Oh, I can't take my eyes off..!!";
+ delitem 558,3;
+ getitem 559,1;
+ next;
+ mes "[Charles Orleans]";
+ mes "Alright. Mademoiselle,";
+ mes "I hope this is just";
+ mes "what you wanted,";
+ mes "for it bears your";
+ mes "beautiful heart inside.";
+ close;
+ }
+
} \ No newline at end of file