summaryrefslogtreecommitdiff
path: root/world/map/npc/034-1/yetiSpawn.txt
blob: c1f6031265274129c0584cff386326178ab623ce (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
// This file belongs to the yeti hunting quest given by 033-1/yerrnk.txt
// Author: Jenalya

034-1,79,98,0|script|#Yerrnk_YetiTrigger|32767,1,3
{
    set @state, ((QUEST_Barbarians & $@Q_Barbarians_MASK) >> $@Q_Barbarians_SHIFT);
    if (@state != 7)
        end;

    if ($@Yerrnk_Yeti_Active != 0)
        end;
    set $@Yerrnk_Yetifighter_ID, getcharid(3);
    set $@Yerrnk_Yeti_Active, 1;
    donpcevent "#Yerrnk_Yeti::OnYeti";
    end;
}

034-1,78,98,0|script|#Yerrnk_Yeti|32767
{
end;

OnYeti:
    if (attachrid($@Yerrnk_Yetifighter_ID) == 0)
        goto L_Abort;

    message strcharinfo(0), "There is the Yeti!";
    areamonster "034-1", 67, 93, 74, 102, "", 1072, 1, "#Yerrnk_Yeti::OnYetiDeath";
    end;

L_Abort:
    set $@Yerrnk_Yeti_Active, 0;
    set $@Yerrnk_Yetifighter_ID, 0;
    end;

OnYetiDeath:
    set @MobID, 1072;

    set @state, ((QUEST_Barbarians & $@Q_Barbarians_MASK) >> $@Q_Barbarians_SHIFT);
    if (@state != 7)
        goto L_NonQuestKill;
    set @state, 8;
    callsub S_Update_Mask;
    set BOSS_POINTS, BOSS_POINTS + 40;
    message strcharinfo(0), "You defeated the Yeti and gain 40 Boss Points giving you a total of " + BOSS_POINTS + ".";
    goto L_End;

L_End:
    set $@Yerrnk_Yeti_Active, 0;
    set $@Yerrnk_Yetifighter_ID, 0;
    end;

L_NonQuestKill:
    message strcharinfo(0), "The dying Yeti takes you along to the other side.";
    heal -Hp, 0;
    goto L_End;

S_Update_Mask:
        set QUEST_Barbarians,
            (QUEST_Barbarians & ~($@Q_Barbarians_MASK))
                | (@state << $@Q_Barbarians_SHIFT);
        return;
}