summaryrefslogtreecommitdiff
path: root/world/map/npc/002-4/mine_triggertwo.txt
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/002-4/mine_triggertwo.txt')
-rw-r--r--world/map/npc/002-4/mine_triggertwo.txt70
1 files changed, 70 insertions, 0 deletions
diff --git a/world/map/npc/002-4/mine_triggertwo.txt b/world/map/npc/002-4/mine_triggertwo.txt
new file mode 100644
index 00000000..4af6ad7e
--- /dev/null
+++ b/world/map/npc/002-4/mine_triggertwo.txt
@@ -0,0 +1,70 @@
+//Sandstorm mine trigger
+// Variables used:
+// - nibble 4 and 5 of QUEST_SouthTulimshar
+// - in FLAGS, FLAG_OPENED_UNDERGROUND
+
+002-4.gat,100,37,0|script|Button|400,0,0,
+{
+ // This NPC previously used the variable TMW_Quest
+ callfunc "ClearVarTMW_Quest";
+
+ set @state, ((QUEST_SouthTulimshar & BYTE_2_MASK) >> BYTE_2_SHIFT);
+
+ if (@state == 24) goto L_Trigger_2;
+ if (@state == 23) goto L_Trigger_Wrong_2;
+ if (@state == 22) goto L_Trigger_Wrong_2;
+
+ mes "There is a large button on the ground. A key hole appears on the button.";
+ goto L_Close;
+
+L_Trigger_Wrong_2:
+ mes "There is a large button on the ground. A key hole appears on the button.";
+ menu
+ "Put the key in, turn right.", L_Right_Wrong_2,
+ "Put the key in, turn left.", L_Left_Wrong_2,
+ "Do nothing.", L_Nothing_2;
+
+L_Right_Wrong_2:
+ set @state, 22;
+ callsub S_Update_Var;
+ mes "You turn the key right.";
+ goto L_Close;
+
+L_Left_Wrong_2:
+ set @state, 22;
+ callsub S_Update_Var;
+ mes "You turn the key left.";
+ goto L_Close;
+
+L_Trigger_2:
+ mes "There is a large button on the ground. A key hole appears on the button.";
+ menu
+ "Put the key in, turn right.", L_Right_2,
+ "Put the key in, turn left.", L_Left_2,
+ "Do nothing.", L_Nothing_2;
+
+L_Right_2:
+ set @state, 22;
+ callsub S_Update_Var;
+ mes "You turn the key right.";
+ goto L_Close;
+
+L_Left_2:
+ set @state, 25;
+ callsub S_Update_Var;
+ set FLAGS, FLAGS | FLAG_OPENED_UNDERGROUND;
+ mes "You turn the key left. A clicking sound echoes throughout the mine, followed by a loud thump.";
+ goto L_Close;
+
+L_Nothing_2:
+ mes "You leave the button alone.";
+ goto L_Close;
+
+L_Close:
+ set @state, 0;
+ close;
+
+S_Update_Var:
+ set QUEST_SouthTulimshar, (QUEST_SouthTulimshar & ~(BYTE_2_MASK) | (@state << BYTE_2_SHIFT));
+ return;
+}