summaryrefslogtreecommitdiff
path: root/world/map/npc/042-1/tutorial.txt
blob: bed9843687f8a93ec33383bff35ae1999f89462f (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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
// This file is part of the Tutorial
// Author: Jenalya
// if you enter the tutorial area from outside, it is set to be already done
-|script|#TutorialConfig|-1
{
    end;

OnInit:
    set $@ScorpionFighter, 0;
    set $@ScorpionTimer, 0;
    set $@ScorpDeath, 0; 
    set $@SpokeToKaan, (1 << 31);
    end;
}
function|script|TutorialState
{
    callfunc "ClearVariables";
    set @tutorial, ((STARTAREA & NIBBLE_0_MASK) >> NIBBLE_0_SHIFT);
    set @kaan_talked, (STARTAREA & $@SpokeToKaan);
    return;
}
function|script|SetTutorialMask
{
    set STARTAREA, (STARTAREA & ~(NIBBLE_0_MASK) | (@tutorial_tmp << NIBBLE_0_SHIFT));
    set @tutorial_tmp, 0;
    return;
}
042-2.gat,21,26,0|script|TutDebug|154
{
    mes "[TutDebug]";
    mes "Reset?";
    menu
        "Yes.",L_Reset,
        "No.",L_End;

L_Reset:
    set TUT_var, 0;
    set @tutorial_tmp, 0;
    set STARTAREA, (STARTAREA & ~(NIBBLE_0_MASK) | (@tutorial_tmp << NIBBLE_0_SHIFT));
    set STARTAREA, STARTAREA &~ $@SpokeToKaan;
    mes "Reset!";
    goto L_End;

L_End:
    end;

OnInit:
    if(!debug)
        disablenpc "TutDebug";
    end;
}
042-1.gat,63,47,0|script|#tutorialoutside|45,0,0
{
    callfunc "TutorialState";
    if (@tutorial >= 8)
        goto L_Warp;
    goto L_ResetTutorial;

L_ResetTutorial:
    set @tutorial_tmp, 8;
    callfunc "SetTutorialMask";
    goto L_Warp;

L_Warp:
    warp "042-2.gat", 114, 92;
    end;
}