summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
authorcrunchy <crunchy@crunchy-Satellite-L300.(none)>2011-04-12 23:21:49 +1000
committerJessica Tölke <jtoelke@mail.upb.de>2011-04-29 18:04:41 +0200
commit0e3ae27faa6fd223efe6fdf05f34dba0ed38d3fc (patch)
tree628bcac003c3e00e284975a23ae3ea86681e900f /npc
parent8ee89aba88312cd851ab7c52e24bfb0d1b4173e4 (diff)
downloadserverdata-0e3ae27faa6fd223efe6fdf05f34dba0ed38d3fc.tar.gz
serverdata-0e3ae27faa6fd223efe6fdf05f34dba0ed38d3fc.tar.bz2
serverdata-0e3ae27faa6fd223efe6fdf05f34dba0ed38d3fc.tar.xz
serverdata-0e3ae27faa6fd223efe6fdf05f34dba0ed38d3fc.zip
Easter 2011
Diffstat (limited to 'npc')
-rw-r--r--npc/006-1_Desert_mountains/pachua.txt98
-rw-r--r--npc/008-1_Hurnscald_outskirts/_import.txt1
-rw-r--r--npc/008-1_Hurnscald_outskirts/bunny.txt217
-rw-r--r--npc/010-2_Dimonds_Cove/chef.txt213
-rw-r--r--npc/021-2_Tulimshar/bakery.txt182
-rw-r--r--npc/024-1_Tulimshar_Canyon/eomie.txt82
6 files changed, 685 insertions, 108 deletions
diff --git a/npc/006-1_Desert_mountains/pachua.txt b/npc/006-1_Desert_mountains/pachua.txt
index 996705c0..fbcd161b 100644
--- a/npc/006-1_Desert_mountains/pachua.txt
+++ b/npc/006-1_Desert_mountains/pachua.txt
@@ -1,14 +1,23 @@
006-1.gat,23,100,0 script Pachua 143,{
set @LEATHER_PATCH_PRICE, 300;
-
set @wants_leather_patch, QUEST_Forestbow_state & NIBBLE_4_MASK;
+ set @month, 4;
+ set @start_day, 15;
+ set @end_day, 30;
+
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 1) goto L_Basket;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 2) goto L_MakeBasket;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 3) goto L_SeeBunny;
+
+L_Miriam_Check:
if (QUEST_MIRIAM_cheat != 0) goto L_warp_cheat;
if (QUEST_MIRIAM_start != 0) goto L_smoke;
L_Begin:
mes "[Chief Pachua]";
+ mes "";
mes "\"How!\"";
next;
@@ -16,6 +25,7 @@ L_Begin:
if (getequipid(equip_legs) == 642) goto L_WearingChaps;
mes "[Chief Pachua]";
+ mes "";
mes "\"For generations my tribe has been crafting special clothes out of different items.\"";
next;
@@ -25,6 +35,7 @@ L_Check_Shops:
if(countitem("FancyHat") > 0 && countitem("SnakeSkin") > 1) goto L_Cowboy_store;
mes "[Chief Pachua]";
+ mes "";
mes "\"Maybe if you bring me the right materials I can make something for you.\"";
next;
@@ -36,6 +47,7 @@ L_Check_Shops:
L_CheckStuff:
mes "[Chief Pachua]";
+ mes "";
mes "\"Let me see what you have there.\"";
next;
return;
@@ -43,6 +55,7 @@ L_CheckStuff:
L_Super_store:
callsub L_CheckStuff;
mes "[Chief Pachua]";
+ mes "";
mes "\"Ahh you have lots of good items to work with.\"";
mes "";
mes "\"With them I can make you either";
@@ -63,6 +76,7 @@ L_Super_store:
L_Cowboy_store:
callsub L_CheckStuff;
mes "[Chief Pachua]";
+ mes "";
mes "\"To make you a Cowboy hat I will need:";
mes "1 Fancy hat";
mes "2 Snake skins";
@@ -83,6 +97,7 @@ L_Cowboy_store:
L_Chaps_store:
callsub L_CheckStuff;
mes "[Chief Pachua]";
+ mes "";
mes "\"To make you a pair of Snake Skin Chaps I will need:";
mes "1 Jeans Shorts";
mes "10 Snake skins";
@@ -131,6 +146,7 @@ L_Cowboy_black:
L_leather_patch:
mes "[Chief Pachua]";
+ mes "";
mes "\"If you just want a piece of leather, then yes, I can make that. Bring me a snake skin and " + @LEATHER_PATCH_PRICE + " GP.\"";
next;
@@ -150,6 +166,7 @@ L_leather_patch:
L_DealDone:
mes "[Chief Pachua]";
+ mes "";
mes "\"Here you are!\"";
mes "";
mes "\"Come back any time.\"";
@@ -157,37 +174,44 @@ L_DealDone:
L_NoDeal:
mes "[Chief Pachua]";
+ mes "";
mes "\"Alright, but you won't get a better deal anywhere else!\"";
close;
L_NoMoney:
mes "[Chief Pachua]";
+ mes "";
mes "\"Oh dear, it seems you don't have enough money.\"";
close;
L_NoJeans:
mes "[Chief Pachua]";
+ mes "";
mes "\"Oh dear, it seems you don't have enough jeans shorts.\"";
close;
L_NoFancy:
mes "[Chief Pachua]";
+ mes "";
mes "\"Oh dear, it seems you don't have enough fancy hats.\"";
close;
L_NoSkins:
mes "[Chief Pachua]";
+ mes "";
mes "\"Oh dear, it seems you don't have enough snake skins.\"";
close;
L_WearingCowboy:
mes "[Chief Pachua]";
+ mes "";
mes "\"Ah, I see that you are wearing a hat made with the ancient methods of my tribe.\"";
next;
goto L_Check_Shops;
L_WearingChaps:
mes "[Chief Pachua]";
+ mes "";
mes "\"Ah, I see that you are wearing pants made by my tribe.\"";
next;
goto L_Check_Shops;
@@ -197,6 +221,7 @@ L_End:
L_TooMany:
mes "[Chief Pachua]";
+ mes "";
mes "\"You don't have room for a leather patch. Come back later.\"";
close;
@@ -211,4 +236,75 @@ L_warp_cheat:
message strcharinfo(0), "Pachua releases a ring of smoke towards the sky! But, by the look on his face, you can tell he is suspicious about your methods...";
set @warp_cheat, 1;
end;
+
+L_Basket:
+ mes "[Chief Pachua]";
+ mes "";
+ mes "\"For generations my tribe has been crafting special clothes out of different items.\"";
+ mes "\"Maybe if you bring me the right materials I can make something for you.\"";
+ next;
+ menu
+ "Do you work only with clothes? Because I was looking for a basket.", -;
+ mes "\"A basket? In our tribe, we craft baskets of all kinds using only reeds. This basket, you need it to carry your items?\"";
+ menu
+ "No. It is for the Easter Bunny. I offered to get him one.", -;
+ mes "\"I appreciate your attitude. Maybe I can help you with that.\"";
+ menu
+ "I would be really grateful if you could do that!", -,
+ "Nah, I decided not to do that stupid quest.", L_End,
+ "I would prefer to talk to you about other stuff.", L_Miriam_Check; //should go to pachuas's regular chat
+ set QUEST_Easter11, 2;
+
+L_MakeBasket:
+ mes "[Chief Pachua]";
+ mes "";
+ mes "\"I will need you to gather reeds for me.\"";
+ mes "\"5 bundles should do it.\"";
+ mes "\"You should be able to get those from mouboos as they graze.\"";
+ menu
+ "I have the Reeds!", -,
+ "Ok, I will be back soon", L_End,
+ "I changed my mind, forget about it", L_End,
+ "Can I talk to you about another stuff?", L_Miriam_Check; //should go to pachuas's regular chat
+
+ if(countitem("ReedBundle") < 5) goto L_EasterNotEnough;
+ if(countitem("ReedBundle") >= 5) goto L_EasterEnough;
+ close;
+
+L_EasterNotEnough:
+ mes "[Chief Pachua]";
+ mes "";
+ mes "\"You do not have enough [Reed Bundle]s for me to work with.\"";
+ mes "\"Go gather more.\"";
+ close;
+
+L_EasterEnough:
+ getinventorylist;
+ if (@inventorylist_count == 100 && countitem("ReedBundle") > 5) goto L_EasterTooMany;
+ if(countitem("ReedBundle") < 5) goto L_EasterNotEnough;
+ delitem "ReedBundle", 5;
+ getitem "EasterBasket", 1;
+ set QUEST_Easter11, 3;
+ mes "[Chief Pachua]";
+ mes "";
+ mes "\"You have gathered enough reeds for me to make the basket.\"";
+ mes "He skillfully soaks the reeds you brought him,";
+ mes "then swiftly weaves them into a basket shape.";
+ mes "Next, he places the damp basket in the sun to dry for a minute before handing it over to you.";
+ mes "\"Here is your [Easter Basket].\"";
+ close;
+
+L_EasterTooMany:
+ mes "[Chief Pachua]";
+ mes "";
+ mes "\"You don't have room for the [Easter Basket]. Come back later.\"";
+ close;
+
+L_SeeBunny:
+ mes "[Chief Pachua]";
+ mes "";
+ mes "\"You need to return to the Easter Bunny now.\"";
+ next;
+ goto L_Miriam_Check;
+
}
diff --git a/npc/008-1_Hurnscald_outskirts/_import.txt b/npc/008-1_Hurnscald_outskirts/_import.txt
index 6520f76d..dc6dcb65 100644
--- a/npc/008-1_Hurnscald_outskirts/_import.txt
+++ b/npc/008-1_Hurnscald_outskirts/_import.txt
@@ -7,3 +7,4 @@ npc: npc/008-1_Hurnscald_outskirts/diryn.txt
npc: npc/008-1_Hurnscald_outskirts/dock.txt
npc: npc/008-1_Hurnscald_outskirts/george.txt
npc: npc/008-1_Hurnscald_outskirts/hinnak.txt
+npc: npc/008-1_Hurnscald_outskirts/bunny.txt
diff --git a/npc/008-1_Hurnscald_outskirts/bunny.txt b/npc/008-1_Hurnscald_outskirts/bunny.txt
new file mode 100644
index 00000000..00c3c9e3
--- /dev/null
+++ b/npc/008-1_Hurnscald_outskirts/bunny.txt
@@ -0,0 +1,217 @@
+//Easter Quest 2011
+//conceived and scripted by Tiana
+//Reviewed by alastrim, Jenalya, Kandiman
+
+
+
+
+008-1.gat,45,23, 0 script Easter Bunny 173,{
+ set @month, 4;
+ set @start_day, 15;
+ set @end_day, 30;
+
+ if (gettime(6) != @month) goto no_event;
+ if (gettime(5) < @start_day) goto no_event;
+ if (gettime(5) > @end_day) goto no_event;
+ if (gettimetick(2)-TUT_var < 2*7*86400) goto L_TooSoon;
+
+ if (QUEST_Easter11 == 1 || QUEST_Easter11 == 2) goto L_GetBasket;
+ if (QUEST_Easter11 == 3) goto L_BasketCheck;
+ if (QUEST_Easter11 == 4 || QUEST_Easter11 == 5) goto L_GetGrass;
+ if (QUEST_Easter11 == 6) goto L_GrassCheck;
+ if (QUEST_Easter11 == 7 || QUEST_Easter11 == 8) goto L_GetJelly;
+ if (QUEST_Easter11 == 9) goto L_JellyCheck;
+ if (QUEST_Easter11 == 10 || QUEST_Easter11 == 11) goto L_GetChoco;
+ if (QUEST_Easter11 == 12) goto L_ChocoCheck;
+ if (QUEST_Easter11 == 13) goto L_GetPrizes;
+ if (QUEST_Easter11 == 14) goto L_Done;
+ if (BaseLevel < 40) goto L_TooYoung;
+
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hi there! Would you like to help me with this year's Easter Quest?\"";
+ next;
+
+ menu
+ "What kind of help do you need?", -,
+ "No way, these holiday quests suck.", L_End;
+
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"I need you to help me by getting an easter basket ready for me.\"";
+ next;
+
+ menu
+ "I should be able to help with that, what do I need to do?", -,
+ "That doesn't sound very exciting, no thanks.", L_End;
+
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Thank you! Here is what you need to do:\"";
+ mes "\"I need you to get me a basket, the grass to line it, and some stuff to put in the basket. Some people should be able to help you get those items.\"";
+ next;
+ mes "\"I cannot remember who though. Maybe you should start with the Basket. You should look for someone with good handicraft abilities, someone who knows how to work with reeds... Do you have any idea who could do this? \"";
+ next;
+
+ menu
+ "Ok, I'll ask around and see what I can find.", -,
+ "You can't give me more help than that? Then go do it yourself.", L_End;
+
+ set QUEST_Easter11, 1;
+ close;
+
+L_GetBasket:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"I see that you haven't found anyone who can make the basket yet... hmm... a reed basket... Who could make such an item?\"";
+ set @tip, rand(10);
+ if (@tip != 9) close;
+ next;
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hey... I just remembered. I heard there is an indian fellow living in the mountains who comes from a tribe that is famous for its beautiful craftwork. Maybe he can make the basket...\"";
+ close;
+
+L_BasketCheck:
+ if(countitem("EasterBasket") < 1) goto L_BasketNoitem;
+ delitem "EasterBasket", 1;
+ set QUEST_Easter11, 4;
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Very good. This basket is perfect. Now I need some grass to line it. But please, do not pull it from the ground, because it makes the basket really ugly and dirty. I am sure there must be someone who can help you grow a nice, clean patch of grass.\"";
+ close;
+
+L_BasketNoitem:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"I heard you talked to that indian in the mountains. That was very smart! But you do not have the basket... That is too bad.\"";
+ close;
+
+L_GetGrass:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"I see you didn't find the [Grass Liner]... If only I could help you find someone who can do this...\"";
+ set @tip, rand(10);
+ if (@tip != 9) close;
+ next;
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Wait... ohh... Now I remember. Last year there was a woman who helped me with a perfect and clean [Grass Liner] for my easter basket. She used to live near the magic school in Tulimshar. Maybe she is still there.\"";
+ close;
+
+L_GrassCheck:
+ if(countitem("GrassLiner") < 1) goto L_GrassNoitem;
+ delitem "GrassLiner", 1;
+ set QUEST_Easter11, 7;
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Perfect. This basket is going to be beautiful. Now I need some stuff to put in the basket. I think we should start with some [Jelly Beans]. But I have no idea where you can find any. I looked in all of Hurnscald's shops and no one sells them! Maybe you will need to find someone who can cook them.\"";
+ close;
+
+L_GrassNoitem:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"You talked to Eomie, the woman who maintains that little spot of grass in the desert. You are really smart! But what happened? I was expecting that you would come back with the [Grass Liner]...\"";
+ close;
+
+L_GetJelly:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hi... Sorry to cause you so much trouble. This candy is so hard to find... One time I tried to make some myself and it was really bad... I'm sure there must be a secret ingredient I didn't know.\"";
+ set @tip, rand(10);
+ if (@tip != 9) close;
+ next;
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hey, maybe you can ask a skilled chef to make some [Jelly Beans] for you.\"";
+ close;
+
+L_JellyCheck:
+ if(countitem("JellyBeans") < 1) goto L_JellyNoitem;
+ delitem "JellyBeans", 1;
+ set QUEST_Easter11, 10;
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Ohh. You got a lot of [Jelly Beans]! This is way better than I expected. Now I there is only one more thing that we need... Chocolate! But not the usual [Chocolate Bar]. I need the chocolate shaped in the form of a mouboo. Sadly, I also have no idea how to get it. I am sure that a brilliant person like you can find a way to get it... \"";
+ close;
+
+L_JellyNoitem:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"I see you talked with the Chef at Dimond's Cove but you came back with no [Jelly Beans]... What happened?\"";
+ close;
+
+L_GetChoco:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hello. I was thinking... Maybe someone could melt down some [Chocolate Bar]s and pour it into a mouboo shaped mold...\"";
+ set @tip, rand(10);
+ if (@tip != 9) close;
+ next;
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hmm... A bakery! I am sure there must be someone in a bakery that can do this.\"";
+ close;
+
+L_ChocoCheck:
+ if(countitem("ChocolateMouboo") < 1) goto L_ChocoNoitem;
+ delitem "ChocolateMouboo", 1;
+ set QUEST_Easter11, 13;
+
+L_GetPrizes:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Great, now the basket is perfect!\"";
+ mes "\"I really appreciate your help. With everyone helping I was able to have enough time to do some crafts.\"";
+ mes "\"Here, accept this simple gift as a thank you!\"";
+ getinventorylist;
+ if (@inventorylist_count == 100) goto L_EasterTooMany;
+ setarray @reward$, "BunnyEars", "TopHat", "MushHat", "ShroomHat", "FunkyHat";
+ getitem @reward$[rand(getarraysize(@reward$))], 1;
+ set QUEST_Easter11, 14;
+ close;
+
+L_ChocoNoitem:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Some people told me you were in a bakery in Tulimshar... I was hoping you would come back with the [Chocolate Mouboo].\"";
+ close;
+
+L_TooYoung:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hello there young one!\"";
+ mes "\"Gain some more strength and I have a quest for you.\"";
+ close;
+
+L_TooSoon:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Hello there!\"";
+ mes "\"I need some help with Easter this year,\"";
+ mes "\"however you are not experienced enough in this world to properly assist yet.\"";
+ mes "\"Thank you for your interest though!\"";
+ close;
+
+L_EasterTooMany:
+ mes "[Riskim]";
+ mes "";
+ mes "\"You don't have enough room for my gift. Come back later.\"";
+ close;
+
+L_Done:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Thank you for getting that basket together for me!\"";
+ close;
+
+no_event:
+ mes "[Easter Bunny]";
+ mes "";
+ mes "\"Easter is the greatest holiday ever!!!\"";
+ set QUEST_Easter11, 0;
+ close;
+
+L_End:
+ close;
+}
diff --git a/npc/010-2_Dimonds_Cove/chef.txt b/npc/010-2_Dimonds_Cove/chef.txt
index 03149485..120e5a25 100644
--- a/npc/010-2_Dimonds_Cove/chef.txt
+++ b/npc/010-2_Dimonds_Cove/chef.txt
@@ -1,56 +1,71 @@
010-2.gat,33,25,0 script Chef 148,{
+
+ set @month, 4;
+ set @start_day, 15;
+ set @end_day, 30;
+
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 7) goto L_JellyBean;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 8) goto L_MakeJellyBean;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 9) goto L_SeeBunny;
+
+L_Begin:
mes "[Chef]";
+ mes "";
mes "\"I'm too busy right now to talk.\"";
callfunc "KadiyaSubquestConsts";
- if ((@Q_kadiya_status == @Q_STATUS_WANTS_CHOCOCAKE) && (countitem ("MopoxCurePotion") > 0))
- goto L_lace_chococake;
+ if ((@Q_kadiya_status == @Q_STATUS_WANTS_CHOCOCAKE) && (countitem ("MopoxCurePotion") > 0))
+ goto L_lace_chococake;
- if ((@Q_kadiya_status == @Q_STATUS_WANTS_ORANGECUPCAKE) && (countitem ("MopoxCurePotion") > 0))
- goto L_lace_cupcake;
- close;
+ if ((@Q_kadiya_status == @Q_STATUS_WANTS_ORANGECUPCAKE) && (countitem ("MopoxCurePotion") > 0))
+ goto L_lace_cupcake;
+ close;
L_lace_chococake:
- next;
- menu
+ next;
+ menu
"Sorry.", L_end,
- "I need your help with a sick young girl!", -;
+ "I need your help with a sick young girl!", -;
mes "[Chef]";
- mes "You explain Kadiya's situation to him.";
- mes "\"Hmrmf. I can't help you; I'm a chef, not a baker!\"";
- close;
+ mes "";
+ mes "You explain Kadiya's situation to him.";
+ mes "\"Hmrmf. I can't help you; I'm a chef, not a baker!\"";
+ close;
L_lace_cupcake:
- next;
- menu
+ next;
+ menu
"Sorry.", L_end,
- "I need your help with a sick young girl!", -;
+ "I need your help with a sick young girl!", -;
mes "[Chef]";
- mes "You explain Kadiya's situation to him.";
- mes "\"Hmrmf. I was about to make another batch of orange cupcakes. Do you have that potion with you?\"";
- next;
+ mes "";
+ mes "You explain Kadiya's situation to him.";
+ mes "\"Hmrmf. I was about to make another batch of orange cupcakes. Do you have that potion with you?\"";
+ next;
- menu
+ menu
"No, sorry.", L_bringit,
- "Yes, here you are.", -;
+ "Yes, here you are.", -;
- if (countitem ("MopoxCurePotion") < 1)
- goto L_bringit;
+ if (countitem ("MopoxCurePotion") < 1)
+ goto L_bringit;
mes "[Chef]";
- mes "He shudders as he smells the bottle.";
- mes "\"That is disgusting! How do you expect me to mask this?\"";
- mes "He ponders his own question for a moment.";
- next;
+ mes "";
+ mes "He shudders as he smells the bottle.";
+ mes "\"That is disgusting! How do you expect me to mask this?\"";
+ mes "He ponders his own question for a moment.";
+ next;
- mes "[Chef]";
- mes "\"Ah yes. We need to bind the smell in gingerbread. Bring me three pieces of gingerbread, one orange, and 500 GP for the other ingredients, and I will make you your cupcake.\"";
- next;
+ mes "[Chef]";
+ mes "";
+ mes "\"Ah yes. We need to bind the smell in gingerbread. Bring me three pieces of gingerbread, one orange, and 500 GP for the other ingredients, and I will make you your cupcake.\"";
+ next;
- menu
- "I'll go and get it.", L_end,
+ menu
+ "I'll go and get it.", L_end,
"Here you are!", -,
"Not now.", L_end;
@@ -59,53 +74,127 @@ L_lace_cupcake:
if (countitem ("MopoxCurePotion") < 1) goto L_no_potion;
if (zeny < 500) goto L_no_zeny;
- set zeny, zeny - 500;
- delitem "GingerBreadMan", 3;
- delitem "Orange", 1;
- delitem "MopoxCurePotion", 1;
+ set zeny, zeny - 500;
+ delitem "GingerBreadMan", 3;
+ delitem "Orange", 1;
+ delitem "MopoxCurePotion", 1;
- getitem "LacedOrangeCupcake", 1;
+ getitem "LacedOrangeCupcake", 1;
- mes "[Chef]";
- mes "\"Good, good. This should work.\"";
- mes "He crumbles the gingerbread, mixes it with the potion and some spices, and finally adds some cupcake batter and the orange pieces.";
- next;
+ mes "[Chef]";
+ mes "";
+ mes "\"Good, good. This should work.\"";
+ mes "He crumbles the gingerbread, mixes it with the potion and some spices, and finally adds some cupcake batter and the orange pieces.";
+ next;
- mes "[Chef]";
- mes "\"Take a seat.\"";
- mes "He fills the mixture into a cupcake form and puts it into the oven. You watch the cupcake grow for a while.";
- mes "Finally, he removes the form and carefully extracts the cupcake.";
- next;
+ mes "[Chef]";
+ mes "";
+ mes "\"Take a seat.\"";
+ mes "He fills the mixture into a cupcake form and puts it into the oven. You watch the cupcake grow for a while.";
+ mes "Finally, he removes the form and carefully extracts the cupcake.";
+ next;
- mes "[Chef]";
- mes "\"Here you are. It's a bit bigger than a regular cupcake and will taste a bit like ginger, I think, but otherwise it should be fine.\"";
- close;
+ mes "[Chef]";
+ mes "";
+ mes "\"Here you are. It's a bit bigger than a regular cupcake and will taste a bit like ginger, I think, but otherwise it should be fine.\"";
+ close;
L_no_gingerbread:
- mes "[Chef]";
- mes "\"I will need three pieces of gingerbread.\"";
- close;
+ mes "[Chef]";
+ mes "";
+ mes "\"I will need three pieces of gingerbread.\"";
+ close;
L_no_orange:
- mes "[Chef]";
- mes "\"Please bring me an orange for these cupcakes.\"";
- close;
+ mes "[Chef]";
+ mes "";
+ mes "\"Please bring me an orange for these cupcakes.\"";
+ close;
L_no_zeny:
- mes "[Chef]";
- mes "\"No. I need extra ingredients worth 500 GP, and I expect you to pay for those.\"";
- close;
+ mes "[Chef]";
+ mes "";
+ mes "\"No. I need extra ingredients worth 500 GP, and I expect you to pay for those.\"";
+ close;
L_no_potion:
- mes "[Chef]";
- mes "\"Where did your Mopox potion go?\"";
- close;
+ mes "[Chef]";
+ mes "";
+ mes "\"Where did your Mopox potion go?\"";
+ close;
L_bringit:
mes "[Chef]";
- mes "\"Bring it here when you do.\"";
- next;
+ mes "";
+ mes "\"Bring it here when you do.\"";
+ next;
-L_end:
+L_End:
close;
+
+L_JellyBean:
+ mes "[Chef]";
+ mes "";
+ mes "\"I can't talk right now... I'm too busy.\"";
+ next;
+ mes "\"Oh, wait. I see you are the adventurer who was speaking with the Easter Bunny. He has a really bad memory, you know? Every year he forgets who he needs to ask to get [Jelly Beans], and every year an adventurer comes to my kitchen asking if I can help the Easter Bunny get some.\"";
+ next;
+ mes "\"Even though I am really busy this time of year, I will help you make some [Jelly Beans] to put in the basket if you wish. Just to keep the tradition alive...\"";
+ menu
+ "I would really appreciate that!", -,
+ "Nah, I decided not to do that stupid quest.", L_End;
+ set QUEST_Easter11, 8;
+
+L_MakeJellyBean:
+ mes "[Chef]";
+ mes "";
+ mes "\"I will need you to bring me some candies.\"";
+ mes "\"I think 15 should be enough.\"";
+ mes "\"Sea slimes seem to have those, so try them.\"";
+ mes "\"And because it's the holidays, I'll add in the other ingredient for free.\"";
+ menu
+ "I have some candies!", -,
+ "Ok, I will be back soon.", L_End,
+ "I changed my mind, forget about it.", L_End;
+
+ if(countitem("Candy") < 15) goto L_EasterNotEnough;
+ if(countitem("Candy") >= 15) goto L_EasterEnough;
+ close;
+
+L_EasterNotEnough:
+ mes "[Chef]";
+ mes "";
+ mes "\"You do not have enough candies for me to work with yet.\"";
+ mes "\"Please go get more.\"";
+ close;
+
+L_EasterEnough:
+ getinventorylist;
+ if (@inventorylist_count == 100 && countitem("Candy") > 15) goto L_EasterTooMany;
+ if(countitem("Candy") < 15) goto L_EasterNotEnough;
+ delitem "Candy", 15;
+ getitem "JellyBeans", 1;
+ set QUEST_Easter11, 9;
+ mes "[Chef]";
+ mes "";
+ mes "\"You have gathered enough candies for me to make the [Jelly Beans].\"";
+ mes "He puts the candies into a pot and starts melting them.";
+ mes "He adds in some gooey stuff, then lets the solution cool for a moment before forming the [Jelly Beans].";
+ mes "\"Here are your [Jelly Beans].\"";
+ close;
+
+L_TooMany:
+ mes "[Chef]";
+ mes "";
+ mes "\"You don't have enough room for the [Jelly Beans]. Come back later.\"";
+ close;
+
+L_SeeBunny:
+ mes "[Chef]";
+ mes "";
+ mes "\"Oh yeah, you need to return to the Easter Bunny now.\"";
+ next;
+ goto L_Begin;
+ close;
+
}
diff --git a/npc/021-2_Tulimshar/bakery.txt b/npc/021-2_Tulimshar/bakery.txt
index 8fcddf81..b72a24b9 100644
--- a/npc/021-2_Tulimshar/bakery.txt
+++ b/npc/021-2_Tulimshar/bakery.txt
@@ -2,97 +2,186 @@
// The chef
021-2.gat,95,21,0 script Riskim 148,{
+
+ set @month, 4;
+ set @start_day, 15;
+ set @end_day, 30;
+
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 10) goto L_ChocMouboo;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 11) goto L_MakeChocMouboo;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 12) goto L_SeeBunny;
+
+L_Begin:
mes "[Riskim]";
+ mes "";
mes "\"Welcome to our bakery!\"";
+
callfunc "KadiyaSubquestConsts";
- if ((@Q_kadiya_status == @Q_STATUS_WANTS_CHOCOCAKE) && (countitem ("MopoxCurePotion") > 0))
- goto L_lace_chococake;
+ if ((@Q_kadiya_status == @Q_STATUS_WANTS_CHOCOCAKE) && (countitem ("MopoxCurePotion") > 0))
+ goto L_lace_chococake;
- if ((@Q_kadiya_status == @Q_STATUS_WANTS_ORANGECUPCAKE) && (countitem ("MopoxCurePotion") > 0))
- goto L_lace_cupcake;
+ if ((@Q_kadiya_status == @Q_STATUS_WANTS_ORANGECUPCAKE) && (countitem ("MopoxCurePotion") > 0))
+ goto L_lace_cupcake;
close;
L_lace_chococake:
- next;
+ next;
- menu
+ menu
"Thanks! Let me have a look around...", L_end,
- "Can you put this potion into a [Chocolate Cake]?", -,
+ "Can you put this potion into a [Chocolate Cake]?", -,
"Goodbye!", L_end;
mes "[Riskim]";
- mes "As you show Riskim the potion, he leans back, away from it.";
- mes "\"Ooooh, I remember that smell...\"";
- mes "\"Elanore's Mopox potion, right? She made me drink that, too...\"";
- mes "He chuckles.";
- mes "\"Yes, well, you do want to hide that somehow.\"";
- next;
+ mes "";
+ mes "As you show Riskim the potion, he leans back, away from it.";
+ mes "\"Ooooh, I remember that smell...\"";
+ mes "\"Elanore's Mopox potion, right? She made me drink that, too...\"";
+ mes "He chuckles.";
+ mes "\"Yes, well, you do want to hide that somehow.\"";
+ next;
mes "[Riskim]";
- mes "\"We'll need extra chocolate for that one. If you can give me ten pieces of chocolate and that potion, plus 400 GP, I will bake you a special [Chocolate Cake] that hides the taste.\"";
- next;
+ mes "";
+ mes "\"We'll need extra chocolate for that one. If you can give me ten pieces of chocolate and that potion, plus 400 GP, I will bake you a special [Chocolate Cake] that hides the taste.\"";
+ next;
- menu
+ menu
"I will get them for you.", L_end,
- "Here you are!", -,
- "Maybe later.", L_end;
+ "Here you are!", -,
+ "Maybe later.", L_end;
- if (countitem("ChocolateBar") < 10)
+ if (countitem("ChocolateBar") < 10)
goto L_lacking_ingredients;
- if (countitem("MopoxCurePotion") < 1)
+ if (countitem("MopoxCurePotion") < 1)
goto L_lacking_ingredients;
- if (zeny < 400)
+ if (zeny < 400)
goto L_lacking_zeny;
- delitem "MopoxCurePotion", 1;
- delitem "ChocolateBar", 10;
- getitem "LacedChocolateCake", 1;
- set zeny, zeny - 400;
+ delitem "MopoxCurePotion", 1;
+ delitem "ChocolateBar", 10;
+ getitem "LacedChocolateCake", 1;
+ set zeny, zeny - 400;
mes "[Riskim]";
- mes "\"Please have a seat!\"";
- mes "You watch as Riskim melts the chocolate and stirs in the potion, then glazes a cake with the mixture.";
- mes "\"It's a bit more chocolatey than your average chocolate cake, of course...\"";
- next;
+ mes "";
+ mes "\"Please have a seat!\"";
+ mes "You watch as Riskim melts the chocolate and stirs in the potion, then glazes a cake with the mixture.";
+ mes "\"It's a bit more chocolatey than your average chocolate cake, of course...\"";
+ next;
mes "[Riskim]";
- mes "Riskim hands you the cake.";
- mes "\"Here you are. I hope that this works.\"";
- close;
+ mes "";
+ mes "Riskim hands you the cake.";
+ mes "\"Here you are. I hope that this works.\"";
+ close;
L_lacking_zeny:
mes "[Riskim]";
- mes "\"I'm sorry, but I have to charge 400 GP.\"";
- close;
+ mes "";
+ mes "\"I'm sorry, but I have to charge 400 GP.\"";
+ close;
L_lacking_ingredients:
mes "[Riskim]";
- mes "\"Sorry, but I need ten [Chocolate Bar]s AND your cure potion for this. Please come back later when you have everything.\"";
- close;
+ mes "";
+ mes "\"Sorry, but I need ten [Chocolate Bar]s AND your cure potion for this. Please come back later when you have everything.\"";
+ close;
L_lace_cupcake:
- next;
+ next;
- menu
+ menu
"Thanks! Let me have a look around...", L_end,
- "Can you put this potion into an [Orange Cupcake]?", -,
+ "Can you put this potion into an [Orange Cupcake]?", -,
"Goodbye!", L_end;
mes "[Riskim]";
- mes "\"[Orange Cupcake]s? Oh dear... I'm sorry, but I have a very bad orange allergy.\"";
- next;
+ mes "";
+ mes "\"[Orange Cupcake]s? Oh dear... I'm sorry, but I have a very bad orange allergy.\"";
+ next;
mes "[Riskim]";
- mes "\"Perhaps the Chef at Dimond's Cove can help you? We get all our cupcakes from him.\"";
- next;
+ mes "";
+ mes "\"Perhaps the Chef at Dimond's Cove can help you? We get all our cupcakes from him.\"";
+ next;
-L_end:
- close;
+L_End:
+ close;
+L_ChocMouboo:
+ mes "[Riskim]";
+ mes "";
+ mes "\"Welcome to our bakery! Here you will find the best cakes in Tulimshar. And don't leave before you try one of our delicious Chocolate Pinkies!\"";
+ next;
+ menu
+ "Excuse me, sir? Did you say Chocolate Pinkies?", -;
+ mes "\"Yes! But there is no need to be alarmed, it is just plain chocolate molded in the shape of a small pinkie...\"";
+ next;
+ menu
+ "Do you have one in the shape of a mouboo? The Easter Bunny needs one.", -;
+ mes "\"The Easter Bunny? Interesting... I think I can help you make a [Chocolate Mouboo].\"";
+ menu
+ "Nah, I decided not to do that stupid quest.", L_End,
+ "I would really appreciate that!", -;
+ set QUEST_Easter11, 11;
+
+L_MakeChocMouboo:
+ mes "[Riskim]";
+ mes "";
+ mes "\"I will need you to bring me some [Chocolate Bar]s.\"";
+ mes "\"I think 5 bars should be enough.\"";
+ mes "\"Red slimes seem to have those, so try there.\"";
+ mes "\"I will also need a [Mouboo Figurine] to hollow out and use as a mold.\"";
+ mes "\"Any mage should be able to make you one out of a log, if you ask.\"";
+ menu
+ "I have everything you need.", -,
+ "Ok, I will be back soon.", L_End,
+ "I changed my mind, forget about it.", L_End;
+
+ if(countitem("ChocolateBar") < 5 || countitem("MoubooFigurine") < 1) goto L_EasterNotEnough;
+
+L_EasterEnough:
+ getinventorylist;
+ if (@inventorylist_count == 100 && countitem("ChocolateBar") > 5 && countitem("MoubooFigurine") > 1) goto L_EasterTooMany;
+ if(countitem("ChocolateBar") < 5 || countitem("MoubooFigurine") < 1) goto L_EasterNotEnough;
+ delitem "ChocolateBar", 5;
+ delitem "MoubooFigurine", 1;
+ getitem "ChocolateMouboo", 1;
+ set QUEST_Easter11, 12;
+ mes "[Riskim]";
+ mes "";
+ mes "\"Excellent. You have brought me the chocolate and the mold.\"";
+ mes "He places the chocolate in a pan to melt.";
+ mes "Next, he pours the melted chocolate into the mold.";
+ mes "Finally, he dips the mold in cold water for a moment to solidify the chocolate before skillfully cracking it open and handing you the finished product.";
+ mes "\"Here is your [Chocolate Mouboo].\"";
+ close;
+
+L_EasterNotEnough:
+ mes "[Riskim]";
+ mes "";
+ if(countitem("ChocolateBar") < 5) mes "\"You do not have enough [Chocolate Bar]s for me to work with yet.\"";
+ if(countitem("MoubooFigurine") < 1) mes "\"You do not have the [Mouboo Figurine] to use as a mold.\"";
+ mes "\"Please go get what I asked.\"";
+ close;
+
+L_EasterTooMany:
+ mes "[Riskim]";
+ mes "";
+ mes "\"You don't have enough room for the [Chocolate Mouboo]. Come back later.\"";
+ close;
+
+L_SeeBunny:
+ mes "[Riskim]";
+ mes "";
+ mes "\"You need to return to the Easter Bunny now.\"";
+ close;
}
// Server?
021-2.gat,82,23,0 script Sara 108,{
mes "[Sara]";
+ mes "";
mes "\"Hello!\"";
close;
}
@@ -103,6 +192,7 @@ L_end:
// Stockroom boy
021-2.gat,133,21,0 script Iormo 160,{
mes "[Iormo]";
+ mes "";
mes "\"This stock room can get messy.\"";
close;
}
@@ -110,12 +200,14 @@ L_end:
// An old couple eating at the bakery
021-2.gat,71,22,0 script Rynoh 159,{
mes "[Rynoh]";
+ mes "";
mes "\"The cakes may be expensive, but they sure are delicious!\"";
close;
}
021-2.gat,73,22,0 script Ontas 154,{
mes "[Ontas]";
+ mes "";
mes "\"We come here every week. This place has some of the best bread I've ever eaten!\"";
close;
}
diff --git a/npc/024-1_Tulimshar_Canyon/eomie.txt b/npc/024-1_Tulimshar_Canyon/eomie.txt
index 0bf187df..fb91b07b 100644
--- a/npc/024-1_Tulimshar_Canyon/eomie.txt
+++ b/npc/024-1_Tulimshar_Canyon/eomie.txt
@@ -1,7 +1,89 @@
// A professor at Tulimshar's magic academy
024-1.gat,72,94,0 script Eomie 164,{
+
+ set @month, 4;
+ set @start_day, 15;
+ set @end_day, 30;
+
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 4) goto L_Grass;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 5) goto L_MakeGrass;
+ if (gettime(6) == @month && gettime(5) >= @start_day && gettime(5) <= @end_day && QUEST_Easter11 == 6) goto L_SeeBunny;
+
+L_Greeting:
+ mes "[Eomie]";
+ mes "";
+ mes "\"I maintain this little spot of grass in the desert.\"";
+ close;
+
+L_Grass:
mes "[Eomie]";
+ mes "";
mes "\"I maintain this little spot of grass in the desert.\"";
+ next;
+ menu
+ "It looks beautiful. I wish I could find a [Grass Liner] like this.", -;
+ mes "\"A [Grass Liner]? Last year I helped the Easter Bunny with a [Grass Liner] for his basket... It was really easy... Is this liner for yourself?\"";
+ next;
+ menu
+ "No. Actually, it is for the Easter Bunny again...", -;
+ mes "\"Why didn't you say so before? I can help you make the [Grass Liner] for the basket if you wish.\"";
+ menu
+ "I would really appreciate that!", -,
+ "Nah, I decided not to do that stupid quest.", L_End;
+ set QUEST_Easter11, 5;
+
+L_MakeGrass:
+ mes "[Eomie]";
+ mes "";
+ mes "\"I will need you to bring me some [Grass Seed]s.\"";
+ mes "\"I think 5 seeds should be enough.\"";
+ mes "\"Squirrels tend to pick those up as they gather food.\"";
+ menu
+ "I have some seeds...", -,
+ "Ok, I will be back soon.", L_End,
+ "I changed my mind, forget about it.", L_End;
+
+ if(countitem("GrassSeed") < 5) goto L_EasterNotEnough;
+ if(countitem("GrassSeed") >= 5) goto L_EasterEnough;
+ close;
+
+L_EasterNotEnough:
+ mes "[Eomie]";
+ mes "";
+ mes "\"You do not have enough [Grass Seed]s for me to work with yet.\"";
+ mes "\"Please go get more.\"";
close;
+
+L_EasterEnough:
+ getinventorylist;
+ if (@inventorylist_count == 100 && countitem("GrassSeed") > 10) goto L_EasterTooMany;
+ if(countitem("GrassSeed") < 5) goto L_EasterNotEnough;
+ delitem "GrassSeed", 5;
+ getitem "GrassLiner", 1;
+ set QUEST_Easter11, 6;
+ mes "[Eomie]";
+ mes "";
+ mes "\"You have gathered enough [Grass Seed]s for me to grow the liner.\"";
+ mes "She plants the seeds and murmurs a spell over them.";
+ mes "You both watch the grass grow tall and when it's done growing,";
+ mes "she deftly gathers it for you.";
+ mes "\"Here is your [Grass Liner].\"";
+ close;
+
+L_EasterTooMany:
+ mes "[Eomie]";
+ mes "";
+ mes "\"You don't have enough room for the [Grass Liner]. Come back later.\"";
+ close;
+
+L_SeeBunny:
+ mes "[Eomie]";
+ mes "";
+ mes "\"You need to return to the Easter Bunny now.\"";
+ close;
+
+L_End:
+ close;
+
}