Example #1
0
        /// <summary>
        /// 提取技能或放生得到经验
        /// </summary>
        /// <param name="player">角色</param>
        /// <param name="id">宠物唯一标识</param>
        /// <param name="petsid">宠物</param>
        /// <param name="ft">操作方式</param>
        /// <param name="pl">宠物所有位置</param>
        /// <param name="gs">操作</param>
        public static void PetExp(PlayerBusiness player, string id, string petsid, FinanceType ft, GoodsSource gs, int pl,int level)
        {
            GameConfig gc = GameConfigAccess.Instance.FindOneById(petsid);
            if (gc == null)
                return;

            Variant v = gc.Value;
            if (v == null)
                return;

            //角色得到经验
            int p1exp = v.GetIntOrDefault("P1exp");
            //宠物取得经验
            int p2exp = v.GetIntOrDefault("P2exp");

            if (p1exp > 0)
            {
                player.AddExperience(p1exp, ft);
            }

            if (p2exp > 0 && player.Pet != null)
            {
                player.AddPetExp(player.Pet, p2exp, true, (int)ft);
            }

            player.AddLog(Actiontype.PetRemove, petsid, level, gs, id, pl);
        }