// 013-3.gat,71,21,0|script|#DemonMineBarrier1#_M|45,1,1 { callfunc "ClearVariables"; set @state, ((QUEST_Hurnscald & NIBBLE_2_MASK) >> NIBBLE_2_SHIFT); if (@state >= 2) goto L_End; if (@state == 1 && countitem("Soul") >= 1) goto L_Has_Soul; message strcharinfo(0), "A barrier around the opening pushes you back as you approach."; warp "013-3.gat", 71, 25; goto L_End; L_Has_Soul: message strcharinfo(0), "The barrier around the opening allows you passage."; set @state, 2; callsub S_Update_Mask; delitem "Soul", 1; 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; }