Exemple #1
0
        public void AddPetBuff(ClientSession session, Mate mate)
        {
            int cardId = -1;

            if (MateBuffs.TryGetValue(mate.NpcMonsterVNum, out cardId) && session.Character.Buff.All(b => b.Card.CardId != cardId))
            {
                session.Character.AddBuff(new Buff.Buff(cardId, isPermaBuff: true));
            }
            foreach (NpcMonsterSkill skill in mate.Monster.Skills.Where(sk => PetSkills.Contains(sk.SkillVNum)))
            {
                session.SendPacket(session.Character.GeneratePetskill(skill.SkillVNum));
            }
        }
Exemple #2
0
        public void AddPetBuff(ClientSession session, Mate mate)
        {
            if (session == null || mate == null)
            {
                return;
            }

            if (MateBuffs.TryGetValue(mate.NpcMonsterVNum, out var cardId) &&
                session.Character.Buff.All(b => b.Card.CardId != cardId))
            {
                session.Character.AddBuff(new Buff((short)cardId, isPermaBuff: true));
            }

            if (mate.MateType != MateType.Pet)
            {
                return;
            }

            foreach (NpcMonsterSkill skill in mate.Monster.Skills.Where(sk => PetSkills.Contains(sk.SkillVNum)))
            {
                session.SendPacket(session.Character.GeneratePetSkill(skill.SkillVNum));
            }
        }