summaryrefslogtreecommitdiff
path: root/npc/034-1/yetiSpawn.txt
blob: c8668101abda92a6361d87a7faaa1d68109dcf02 (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
034-1,79,98,0	script	#Yerrnk_YetiTrigger	NPC32767,1,3,{
    @state = ((QUEST_Barbarians & $@Q_Barbarians_MASK) >> $@Q_Barbarians_SHIFT);
    if (@state != 7)
        end;

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

034-1,78,98,0	script	#Yerrnk_Yeti	NPC32767,{
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:
    $@Yerrnk_Yeti_Active = 0;
    $@Yerrnk_Yetifighter_ID = 0;
    end;

OnYetiDeath:
    @mobId = 1072;

    @state = ((QUEST_Barbarians & $@Q_Barbarians_MASK) >> $@Q_Barbarians_SHIFT);
    if (@state != 7)
        goto L_NonQuestKill;
    @state = 8;
    callsub S_Update_Mask;
    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:
    $@Yerrnk_Yeti_Active = 0;
    $@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;
}