summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--npc/021-1/logic.txt28
-rw-r--r--npc/021-1/yeti.txt3
2 files changed, 27 insertions, 4 deletions
diff --git a/npc/021-1/logic.txt b/npc/021-1/logic.txt
index 7908ad31f..3195be1d9 100644
--- a/npc/021-1/logic.txt
+++ b/npc/021-1/logic.txt
@@ -22,15 +22,32 @@ function script CindySwitch_Check_211 {
}
// Passages
-021-1,155,196,0 script #MainCindyLogic NPC_NO_SPRITE,0,0,{
+021-1,155,196,0 script #0211Logic NPC_NO_SPRITE,0,0,{
end;
OnTouch:
.@q=getq(NivalisQuest_Cindy);
if (.@q < 3) end;
if ($@CINDY_STATE > gettimetick(2) || $@CINDY_STATE == 0) goto L_Safe;
if ($@CINDY_STATE % 2 == 0) goto L_Blocked;
- if (CindySwitch_Check_211() == 5)
- warp "021-2", 80, 102;
+ if (CindySwitch_Check_211() == 5) {
+ .@pos=rand(0,8);
+ if (.@q == 4)
+ warp "021-1", .xp[.@pos], .yp[.@pos];
+ else
+ warp "021-2", 80, 102;
+ } else {
+ switch (CindySwitch_Check_211()) {
+ case 0:
+ case 1:
+ end;
+ case 2:
+ case 3:
+ dispbottom l("A few switches aren't triggered yet."); break;
+ case 4:
+ case 5:
+ dispbottom l("A single switch is not online - Cannot pass without all of them on."); break;
+ }
+ }
end;
L_Blocked:
@@ -40,6 +57,11 @@ L_Blocked:
L_Safe:
dispbottom l("There's no reason to enter these caves now.");
end;
+
+OnInit:
+ setarray .xp, 25, 43, 97, 142, 274, 52, 36, 52, 120;
+ setarray .yp, 300, 300, 300, 300, 299, 176, 79, 77, 73;
+ end;
}
021-1,136,29,0 script #FrostiaGateway NPC_NO_SPRITE,0,0,{
diff --git a/npc/021-1/yeti.txt b/npc/021-1/yeti.txt
index 154c61964..8f5d2a425 100644
--- a/npc/021-1/yeti.txt
+++ b/npc/021-1/yeti.txt
@@ -120,7 +120,8 @@ L_Instructions:
next;
mesc l("Directions: ");
mesc l("You must flip all 5 switches on this cave, and then walk accross the cave blocked with an etheral crystal.");
- mesc l("It'll lead you to somewhere random on this cave to keep intruders out. Just walk there again while all switches are still active.");
+ mesc l("First timers will be lead to somewhere random on this cave to keep intruders out. Just walk there again while all switches are still active.");
+ mesc l("This random cave-warping only happens once, too.");
mesc l("The Throne Room is the last room. You can reactive any switch which turns itself off.");
next;
mesc l("Notes: ");