summaryrefslogtreecommitdiff
path: root/npc/015-3/arkim.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/015-3/arkim.txt')
-rw-r--r--npc/015-3/arkim.txt86
1 files changed, 86 insertions, 0 deletions
diff --git a/npc/015-3/arkim.txt b/npc/015-3/arkim.txt
index 6087333cc..f39b33dea 100644
--- a/npc/015-3/arkim.txt
+++ b/npc/015-3/arkim.txt
@@ -14,6 +14,9 @@
// Controls your own progress helping Arkim - Your timer
015-3,170,169,0 script Arkim NPC_TERRY,{
+ function pmap_intro;
+ function pmap_wrong;
+ function pmap_right;
mesn;
mesq lg("Hello, young girl...", "Hello, young boy...");
next;
@@ -143,9 +146,92 @@ L_Research:
goto L_Research;
L_Assign:
+ // NOTE: Map will be destroyed after first time, MAKE SURE TO MEMORIZE.
+ // Or you'll need to find ANOTHER copy, but this one won't be burned.
+ if (getq(HurnscaldQuest_PirateCave) >= 2 && countitem(PirateTreasureMap)) {
+ mesc l("Should we ask about the %s before leaving?", getitemlink(PirateTreasureMap));
+ select
+ l("Ask."),
+ l("Don't ask.");
+ mes "";
+ if (@menu == 1) goto L_PirateMap;
+ }
GHQ_Assign(Bat, "Bat");
end;
+L_PirateMap:
+ .@q = getq(HurnscaldQuest_PirateCave);
+ if (.@q == 2) pmap_intro();
+ else if (.@q == 3) pmap_intro();
+ else if (.@q == 4) pmap_wrong();
+ // IMPLICIT FALLTHROUGH
+ if (.@q == 5) pmap_right();
+ close;
+
+function pmap_intro {
+ mesn;
+ mesq l("There's no one who knows Butterfly Caves better than me, child. These are MY caves, after all.");
+ next;
+ mesn;
+ mesc l("%s makes a confused face.", .name$);
+ mesq l("But your silly map must be wrong. These passages do not connect themselves like this, but this should not be an issue, as they're not relevant.");
+ next;
+ mesn;
+ mesq l("To reach this place... You just need to follow the path after the waterfall. Come back to me after that.");
+ compareandsetq HurnscaldQuest_PirateCave, 2, 3;
+ close;
+}
+
+function pmap_wrong {
+ mesn;
+ mesq l("Welcome back, children. So, how was your treasure hunt? Did you manage to find the path?");
+ next;
+ mesn strcharinfo(0);
+ select
+ l("NO!"),
+ l("Not at all!"),
+ l("You barely know these caves."),
+ l("You send me the wrong way.");
+ mes "";
+ mesn;
+ mesq l("Calm down, don't get mad! I was wrong in trusting this map, it is definitely faulty. Lemme see it again...");
+ if (!countitem(PirateTreasureMap)) close; // Last chance...
+ next;
+ mesn;
+ mesc l("%s eyebrow furrows, as he brings the map closer to a torch.", .name$);
+ mesq l("These paths are all wrong! What is the problem with this map?!");
+ next;
+ mesc l("The map starts getting darker with the heat of the flame, and curiously, new shapes starts to form...");
+ next;
+ mesn;
+ mesq l("Aha! So that's what it was! The map was hiding its secrets in drawings made with acid. An old technique... But a very useful one.");
+ next;
+ delitem PirateTreasureMap, 1;
+ setq HurnscaldQuest_PirateCave, 5;
+ getexp 0, 600;
+ mesc l("Suddenly, the map %s!", col(l("burst up in flames"), 1));
+ mesc l("Seems like Arkim held it too close to the flame...");
+ next;
+ mesn;
+ mes "\""+l("I have some good and some bad news for you.");
+ mes l("The good one, is that now I know the right path.");
+ mes l("The bad one, is that you'll have to guide yourself without the map.")+"\"";
+ next;
+ return;
+}
+
+function pmap_right {
+ mes ".:: " + l("Direction for Pirate Caves") + " ::.";
+ mes "1. "+l("Go through the waterfall path.");
+ mes "2. "+l("Use the abandoned passage to the north... Usually, no one uses it.");
+ mes "3. "+l("After that, follow the path until you reach a great chamber...");
+ mes "4. "+l("Then take the middle entrance.");
+ next;
+ mesn;
+ mesq l("I wish you good luck. I remember these caves... They're dangerous. Make sure to be prepared before venturing further.");
+ close;
+}
+
OnInit:
.sex=G_MALE;
.distance=5;