summaryrefslogtreecommitdiff
path: root/world/map/npc/013-3/barrier.txt
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/013-3/barrier.txt')
-rw-r--r--world/map/npc/013-3/barrier.txt27
1 files changed, 20 insertions, 7 deletions
diff --git a/world/map/npc/013-3/barrier.txt b/world/map/npc/013-3/barrier.txt
index 6de45440..63c5eae9 100644
--- a/world/map/npc/013-3/barrier.txt
+++ b/world/map/npc/013-3/barrier.txt
@@ -1,17 +1,30 @@
//
013-3.gat,71,21,0|script|#DemonMineBarrier1#_M|45,1,1,{
- if (QUEST_demon_mines >= 2) close;
- if (QUEST_demon_mines == 1 && countitem("JackOSoul") >= 1) goto L_Has_Jack_O_Soul;
+ callfunc "ClearVariables";
- mes "A barrier around the opening pushes you back as you approach.";
+ set @state, ((QUEST_Hurnscald & NIBBLE_2_MASK) >> NIBBLE_2_SHIFT);
+
+ if (@state >= 2) goto L_Close;
+ if (@state == 1 && countitem("JackOSoul") >= 1) goto L_Has_Jack_O_Soul;
+
+ message strcharinfo(0), "A barrier around the opening pushes you back as you approach.";
warp "013-3.gat", 71, 25;
- close;
+ goto L_End;
L_Has_Jack_O_Soul:
- mes "The barrier around the opening allows you passage.";
- set QUEST_demon_mines, 2;
+ message strcharinfo(0), "The barrier around the opening allows you passage.";
+ set @state, 2;
+ callsub S_Update_Mask;
delitem "JackOSoul", 1;
- close;
+ goto L_End;
+
+L_End:
+ set @state, 0;
+ end;
+
+S_Update_Mask:
+ set QUEST_Hurnscald, (QUEST_Hurnscald & ~(NIBBLE_2_MASK)) | (@state << NIBBLE_2_SHIFT);
+ return;
}