summaryrefslogtreecommitdiff
path: root/world/map/npc/013-3/barrier.txt
blob: 442870d91351ec1e4730ed31b36bb1123b00e1e1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//

013-3,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", 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;
}