summaryrefslogblamecommitdiff
path: root/world/map/npc/034-1/yetiSpawn.txt
blob: f18e78bebd10131a1b71de2f3c045ab9f87fc700 (plain) (tree)
1
2
3
4


                                                                        
                                                        













                                                                                 
                                             





















                                                                                       
                   



                                                     
      









                                                      
// This file belongs to the yeti hunting quest given by 033-1/yerrnk.txt
// Author: Jenalya

034-1.gat,79,98,0|script|#Yerrnk_YetiTrigger|32767,1,3,{
    set @Q_Barbarians_MASK, NIBBLE_0_MASK;
    set @Q_Barbarians_SHIFT, NIBBLE_0_SHIFT;
    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.gat,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.gat", 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 @Q_Barbarians_MASK, NIBBLE_0_MASK;
    set @Q_Barbarians_SHIFT, NIBBLE_0_SHIFT;
    set @state, ((QUEST_Barbarians & @Q_Barbarians_MASK) >> @Q_Barbarians_SHIFT);
    if (@state != 7)
        goto L_End;
    set @state, 8;
    callsub S_Update_Mask;
    message strcharinfo(0), "You defeated the Yeti.";

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

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