summaryrefslogtreecommitdiff
path: root/npc/006-2-5
diff options
context:
space:
mode:
Diffstat (limited to 'npc/006-2-5')
-rw-r--r--npc/006-2-5/dusk.txt89
-rw-r--r--npc/006-2-5/pouf.txt151
-rw-r--r--npc/006-2-5/reed.txt93
3 files changed, 333 insertions, 0 deletions
diff --git a/npc/006-2-5/dusk.txt b/npc/006-2-5/dusk.txt
new file mode 100644
index 000000000..9e523ca02
--- /dev/null
+++ b/npc/006-2-5/dusk.txt
@@ -0,0 +1,89 @@
+// TMW-2 scripts.
+// Original Authors: Hal9000 & Qwerty Dragon
+// TMW-2 Authors:
+// +seeds
+// dangerduck
+// Description:
+// Piou captain who gives information about the war, and the piou queen.
+
+006-2-5,36,25,0 script Captain Dusk NPC_PIOU_KNIGHT_R,{
+ function duskHello;
+ function duskAboutQueen;
+ function duskAboutWar;
+ .@q=getq(LilitQuest_Pouf);
+
+ if (.@q <= 2)
+ {
+ .@r = rand2(3);
+ if (.@r == 0)
+ {
+ npctalk3 l("Don't think you'll sneak anything by me. I'm watching you...");
+ }
+ else if (.@r == 1)
+ {
+ npctalk3 l("I don't tolerate a piou, or %s, who is afraid of hard work.", get_race());
+ }
+ else
+ {
+ npctalk3 l("Best steer clear of the Princess, %s. It won't go well if you upset her.", strcharinfo(0));
+ }
+ }
+ else if (.@q == 3)
+ {
+ duskHello();
+ }
+ close;
+
+function duskHello {
+ mesn;
+ mesq l("Welcome to the Order of the Piou Knights, %s.", strcharinfo(0));
+ next;
+ select
+ l("Where is the Piou Queen?"),
+ l("How is the war going?"),
+ l("I just wanted to say hi.");
+ mes "";
+ switch (@menu) {
+ case 1:
+ duskAboutQueen();
+ break;
+ case 2:
+ duskAboutWar();
+ break;
+ case 3:
+ break;
+ }
+ return;
+}
+
+function duskAboutQueen {
+ mesn;
+ mesq l("Queen +seeds of Piou Isles is busy coordinating war efforts at the front.");
+ mesn;
+ mesq l("She's a fierce piou, leading our troops into the heart of each battle. I admire her bravery.");
+ mesn;
+ mesq l("Princess Pouf has been given leadership until our Queen returns. Should Queen +seeds perish, Princess Pouf will take the crown.");
+ mesn;
+ mesq l("Fight bravely and well, %s, and perhaps our Queen will survive to return to her beloved Isles.", strcharinfo(0));
+ mesn;
+ duskHello();
+}
+
+function duskAboutWar {
+ mesn;
+ mesq l("So far neither the Duck Side or the Piou Knights have gained the upper hand in the war.");
+ mesn;
+ mesq l("However, our mages have recently sensed something dark stirring.");
+ mesn;
+ mesq l("I fear something terrible is rising, and I do not know if we can weather the coming storm.");
+ mesn;
+ mesc l("The captain falls quiet, and appears to be lost in thought.");
+ mesn;
+ return;
+}
+
+OnInit:
+ .sex = G_OTHER;
+ .distance = 4;
+ end;
+}
diff --git a/npc/006-2-5/pouf.txt b/npc/006-2-5/pouf.txt
new file mode 100644
index 000000000..6b42846c4
--- /dev/null
+++ b/npc/006-2-5/pouf.txt
@@ -0,0 +1,151 @@
+// TMW-2 scripts.
+// Original Authors: Hal9000 & Qwerty Dragon
+// TMW-2 Authors:
+// dangerDuck
+// +seeds
+// Description:
+// Piou royal who asks players to prove themselves against piou knights.
+
+function script PoufMobCount {
+ .@q=getq(LilitQuest_Pouf);
+ .@t=getq2(LilitQuest_Pouf);
+ if (.@q == 1 && killedrid == PiouKnight)
+ {
+ setq2(LilitQuest_Pouf, .@t+1);
+ }
+ if (.@t+1 >= 10)
+ {
+ setq(LilitQuest_Pouf, 2);
+ }
+
+ // Report progress
+ dispbottom l("@@/@@", .@t+1, 10);
+
+ return;
+}
+
+006-2-5,38,23,0 script Princess Pouf NPC_PIOU_QUEEN,{
+ function poufChallenge;
+ function poufQuest;
+ function poufQuestReport;
+ function poufQuestReward;
+ function poufQuestFinished;
+ if (BaseLevel < 60)
+ {
+ mesn;
+ mesq l("You are too weak to pass my test.");
+ next;
+ mesn;
+ mesc l("Return when you are stronger.");
+ }
+ else
+ {
+ poufChallenge();
+ }
+ closedialog;
+ close;
+
+function poufChallenge {
+ .@q=getq(LilitQuest_Pouf);
+ if (.@q == 0)
+ {
+ mesn;
+ mesq l("Welcome to my Isles, traveller.");
+ next;
+ mesc l("To show you are worthy of remaining here, you must prove yourself to me! Do you accept my challenge?"), 1;
+ if (askyesno() == ASK_NO)
+ return;
+ poufQuest();
+ }
+ else if (.@q == 1)
+ {
+ poufQuestReport();
+ }
+ else if (.@q == 2)
+ {
+ poufQuestReward();
+ }
+ else
+ {
+ poufQuestFinished();
+ }
+ return;
+}
+
+function poufQuest {
+ mes "";
+ mesn;
+ mesq l("Defeat 10 of my bravest @@ to prove yourself a warrior, brave of heart and strong of arm!", getmonsterlink(PiouKnight));
+ next;
+ select
+ l("Point the way! Little yellow birds can't be that hard."),
+ l("Scary pious with armor? No thank you!");
+ mes "";
+ switch (@menu) {
+ case 1:
+ mesn;
+ mesq l("Excellent. You will find them in the training room beneath this chamber.");
+ next;
+ setq(LilitQuest_Pouf, 1, 0);
+ break;
+ case 2:
+ next;
+ mesq l("You are clearly not brave enough for this test. Leave my sight at once, chicken.");
+ break;
+ }
+ return;
+}
+
+function poufQuestReport {
+ mesn;
+ mesq l("You've only killed @@/10 @@! You must defeat more to win my favor.", getq2(LilitQuest_Pouf),getmonsterlink(PiouKnight));
+ next;
+ return;
+}
+
+function poufQuestReward {
+ mesn;
+ mesq l("You've defeated 10 of my knights without flinching! You are truly a brave warrior.");
+ next;
+ mesn;
+ mesc l("The princess flies off her perch and alights upon your right and left shoulder in succession.");
+ next;
+ mesn;
+ mesq l("I dub thee Honorary Piou Knight @@, with all the rewards and duties of the position.", strcharinfo(0));
+ next;
+ mesn;
+ mesc l("The princess produces a small, shiny bronze feather and pins it to your lapel, then returns to her perch.");
+ next;
+ mesn;
+ mesq l("Make me proud, knight!");
+ inventoryplace BronzePin, 1;
+ getitem BronzePin, 1;
+ getexp(91479, 24989);
+ setq(LilitQuest_Pouf, 3);
+ next;
+ return;
+}
+
+function poufQuestFinished {
+ mesn;
+ .@r = rand2(3);
+ if (.@r == 0)
+ {
+ npctalk3 l("I bid you a good %s, brave knight.", (is_night() ? l("evening") : l("day")));
+ }
+ else if (.@r == 1)
+ {
+ npctalk3 l("Fight bravely for Queen +seeds and our isles, honorable knight!");
+ }
+ else
+ {
+ npctalk3 l("I wish you success on your ventures, Knight @@.", strcharinfo(0));
+ }
+ return;
+}
+
+OnInit:
+ .sex = G_OTHER;
+ .distance = 3;
+ end;
+}
diff --git a/npc/006-2-5/reed.txt b/npc/006-2-5/reed.txt
new file mode 100644
index 000000000..03a83bf62
--- /dev/null
+++ b/npc/006-2-5/reed.txt
@@ -0,0 +1,93 @@
+// TMW-2 scripts.
+// Original Authors: Hal9000 & Qwerty Dragon
+// TMW-2 Authors:
+// +seeds
+// dangerduck
+// Description:
+// Piou captain who gives information about shrewboo mounts and the Piou Knights.
+
+006-2-5,40,25,0 script Captain Reed NPC_PIOU_KNIGHT_L,{
+ function reedHello;
+ function reedAboutKnights;
+ function reedAboutShrewboos;
+ .@q=getq(LilitQuest_Pouf);
+
+ if (.@q <= 2)
+ {
+ .@r = rand2(3);
+ if (.@r == 0)
+ {
+ npctalk3 l("This is no place for a weakling like you. I suggest you leave.");
+ }
+ else if (.@r == 1)
+ {
+ npctalk3 l("Allowing you to remain on our Isles is dangerous. Tread carefully, %s.", get_race());
+ }
+ else
+ {
+ npctalk3 l("I'll be keeping an eye on you, %s. Don't make trouble.", strcharinfo(0));
+ }
+ }
+ else if (.@q == 3)
+ {
+ reedHello();
+ }
+ close;
+
+function reedHello {
+ mesn;
+ mesq l("Do you need assistance, Knight %s?", strcharinfo(0));
+ next;
+ select
+ l("What can you tell me about the Piou Knights?"),
+ l("Why do Piou Knights need mounts if they can fly?"),
+ l("I just wanted to say hi.");
+ mes "";
+ switch (@menu) {
+ case 1:
+ reedAboutKnights();
+ break;
+ case 2:
+ reedAboutShrewboos();
+ case 3:
+ // fallthrough
+ break;
+ }
+ return;
+}
+
+function reedAboutKnights {
+ mesn;
+ mesq l("The Order of Piou Knights was originally created as a defense against hunters from the humanoid races.");
+ mesn;
+ mesc l("Our Order stopped the hunters from harming any piou on Piou Isles, but it could not do anything for the pious who refused to live here.");
+ mesn;
+ mesq l("We grew in strength and knowledge over time, and dedicated ourselves to upholding justice and peace on the Isles, and in the world.");
+ mesn;
+ mesq l("When the ducks joined the Moubootaur and created the Duck Side, our convictions and oaths to the Order ensured we would oppose them.");
+ mesn;
+ mesc l("The humanoid races do not consider ducks or pious to be a threat, thus we are the only line of defense against the Duck Side.");
+ mesn;
+ mesq l("Remember that, %s. You dedicated yourself to the Order of Piou Knights, and you are now sworn to oppose the Duck Side.", strcharinfo(0));
+ mesn;
+ reedHello();
+}
+
+function reedAboutShrewboos {
+ mesn;
+ mesq l("Our warriors are burdened with strong, yet heavy, armor.");
+ mesn;
+ mesc l("Due to this detriment to our speed and ability to fly, we started training shrewboos as mounts.");
+ mesn;
+ mesq l("Over time, we improved our training, and our warboos are now extremely efficient fighting steeds.");
+ mesn;
+ mesq l("They also give Piou Knights a much needed speed boost against the ducks, who are naturally fast.");
+ mesn;
+ reedHello();
+}
+
+OnInit:
+ .sex = G_OTHER;
+ .distance = 4;
+ end;
+}