diff options
Diffstat (limited to 'world/map/npc/002-3/mine_triggerone.txt')
-rw-r--r-- | world/map/npc/002-3/mine_triggerone.txt | 44 |
1 files changed, 30 insertions, 14 deletions
diff --git a/world/map/npc/002-3/mine_triggerone.txt b/world/map/npc/002-3/mine_triggerone.txt index b757c453..c4e7569f 100644 --- a/world/map/npc/002-3/mine_triggerone.txt +++ b/world/map/npc/002-3/mine_triggerone.txt @@ -1,13 +1,19 @@ //Sandstorm mine trigger 1 Trigger 002-3 35,43 (127) +// Variables used: nibble 4 and 5 of QUEST_SouthTulimshar 002-3.gat,30,47,0|script|Button|127,0,0,{ - if (TMW_Quest == 36) goto L_Trigger_Wrong_1; - if (TMW_Quest == 35) goto L_Trigger_Wrong_1; - if (TMW_Quest == 34) goto L_Trigger_1; + // 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_Wrong_1; + if (@state == 23) goto L_Trigger_Wrong_1; + if (@state == 22) goto L_Trigger_1; mes "There is a large button on the ground. A key hole appears on the button."; - close; + goto L_Close; L_Trigger_Wrong_1: mes "There is a large button on the ground. A key hole appears on the button."; @@ -15,17 +21,18 @@ L_Trigger_Wrong_1: "Put the key in, turn right.", L_Right_Wrong_1, "Put the key in, turn left.", L_Left_Wrong_1, "Do nothing.", L_Nothing_1; - close; L_Right_Wrong_1: - set TMW_Quest, 34; + set @state, 22; + callsub S_Update_Var; mes "You turn the key right."; - close; + goto L_Close; L_Left_Wrong_1: - set TMW_Quest, 34; + set @state, 22; + callsub S_Update_Var; mes "You turn the key left."; - close; + goto L_Close; L_Trigger_1: mes "There is a large button on the ground. A key hole appears on the button."; @@ -33,19 +40,28 @@ L_Trigger_1: "Put the key in, turn right.", L_Right_1, "Put the key in, turn left.", L_Left_1, "Do nothing.", L_Nothing_1; - close; L_Right_1: - set TMW_Quest, 35; + set @state, 23; + callsub S_Update_Var; mes "You turn the key right. A clicking sound echoes throughout the mine."; - close; + goto L_Close; L_Left_1: - set TMW_Quest, 34; + set @state, 22; + callsub S_Update_Var; mes "You turn the key left."; - close; + goto L_Close; L_Nothing_1: 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; } |