summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--npc/006-2-1/piouchef.txt150
1 files changed, 150 insertions, 0 deletions
diff --git a/npc/006-2-1/piouchef.txt b/npc/006-2-1/piouchef.txt
new file mode 100644
index 000000000..2536053e5
--- /dev/null
+++ b/npc/006-2-1/piouchef.txt
@@ -0,0 +1,150 @@
+// TMW2 Script
+// Author:
+// dangerDuck
+// +seeds
+// Description:
+// Piou chef who asks you to check on a missing delivery.
+
+006-2-1,35,75,0 script Piou Chef NPC_PIOU_COOK,{
+ function chefAssign;
+ function chefWait;
+ function chefSupplyList;
+ function chefGiveDelivery;
+ function chefClose;
+ .@q=getq(LilitQuest_PiouChef);
+ mesn;
+ mesc l("The chef is muttering under his breath while kneading a pile of soft dough.");
+ next;
+ select
+ rif(.@q == 0, l("Do you need help with anything?")),
+ rif(.@q == 1, l("I have the supplies you asked for.")),
+ l("I better leave him to his work.");
+ mes "";
+ switch (@menu) {
+ case 1:
+ chefAssign();
+ break;
+ case 2:
+ chefWait();
+ break;
+ case 3:
+ chefGiveDelivery();
+ break;
+ default:
+ chefClose();
+ break;
+ }
+ close;
+
+function chefAssign {
+ if (BaseLevel < 50) {
+ mesn;
+ mesq l("Unfortunately, a mere fledgling like you is not strong enough to help us.");
+ next;
+ elderClose();
+ return;
+ }
+ mesn;
+ mesq l("Your information is correct, %s. Pirates have been plaguing our shores and cutting off our supply lines.", get_race());
+ next;
+ mesn;
+ mesq l("We are in desperate need of food and nesting material, as well as our sacred supply of @@.", getitemlink(CrystallizedMaggot));
+ next;
+ setq LilitQuest_PiouChef, 1;
+ chefSupplyList();
+ chefClose();
+ return;
+}
+
+function chefWait {
+ do
+ {
+ mesn;
+ mesq l("Did you bring the supplies?");
+ next;
+ select
+ l("Yes, I have them right here."),
+ l("What did you want? I've forgotten."),
+ l("Not yet. I've been... delayed.");
+ mes "";
+ switch (@menu) {
+ case 1:
+ chefGiveDelivery();
+ break;
+ case 2:
+ chefSupplyList();
+ break;
+ case 3:
+ chefClose();
+ close;
+ break;
+ }
+ } while (true);
+ return;
+}
+
+function chefSupplyList {
+ do
+ {
+ mesn;
+ mesq l("We need @@, @@, and @@ for our regular stores and nesting materials, and @@ for the royal kitchen.", 300, getitemlink(Moss), 250, getitemlink(RoastedMaggot), 20, getitemlink(FishBox), 1, getitemlink(CrystallizedMaggot));
+ next;
+ mesn;
+ mesq l("Please hurry, our citizens are going hungry, and you do NOT want to find out what a crowd of hungry pious will do!");
+ close;
+ return;
+}
+
+function chefGiveDelivery {
+ if (countitem(Moss) < 300 ||
+ countitem(RoastedMaggot) < 250 ||
+ countitem(FishBox) < 20 ||
+ countitem(CrystallizedMaggot) < 1) {
+ mesn;
+ mesq l("This isn't what I requested!!! Perhaps you should count your items more carefully.");
+ next;
+ mesn;
+ mesq l("If you aren't more careful, we might... accidentally... mistake you for an agent of the Duck Side.");
+ percentheal -99, 0;
+ close;
+ }
+
+ delitem(Moss, 300);
+ delitem(RoastedMaggot, 250);
+ delitem(FishBox, 20);
+ delitem(CrystallizedMaggot, 1);
+
+ getexp(34576, 19226);
+ setq(LilitQuest_PiouChef, 2);
+
+ mes "";
+ next;
+ mesn;
+ mesq l("I appreciate the help, %s. Come back anytime for a tasty dish!", get race());
+ close;
+}
+
+function chefClose {
+ mesn;
+ mesq l("Keep your eye out for pesky ducks, %s. I have a new sauce I want to try out...", strcharinfo(0));
+ next;
+ mesn;
+ if (BaseLevel < 50) {
+ mesq l("Perhaps you may be of assistance later.");
+ } else {
+ mesq l("Go away, %s! Can't you see I'm busy?", get_race());
+ }
+ close;
+ return;
+}
+
+OnInit:
+ .sex = G_OTHER;
+ .distance = 4;
+ end;
+
+OnInstanceInit:
+ disablenpc instance_npcname(.name$);
+ end;
+}
+