示例#1
0
        protected UserMedal GetUserMedal(User user)
        {
            UserMedal userMedal = null;

            foreach (UserMedal medal in user.UserMedals)
            {
                if (medal.MedalID == Medal.ID)
                {
                    userMedal = medal;
                }
            }
            if (userMedal == null)
            {
                MedalLevel level = Medal.GetMedalLevel(user, true);
                if (level != null)
                {
                    userMedal             = new UserMedal();
                    userMedal.MedalID     = Medal.ID;
                    userMedal.MedalLeveID = level.ID;
                    userMedal.Url         = level.IconSrc;
                    userMedal.UserID      = user.UserID;
                }
            }

            return(userMedal);
        }
示例#2
0
        /// <summary>
        /// 是否是自动获取的
        /// </summary>
        /// <param name="userMedal"></param>
        /// <returns></returns>
        protected bool IsAutoGet(UserMedal userMedal)
        {
            Medal medal = GetMedal(userMedal.MedalID);

            if (medal.IsCustom)
            {
                return(false);
            }

            bool isAuto;

            if (isAutoGets.TryGetValue(userMedal.MedalID, out isAuto))
            {
                return(isAuto);
            }

            MedalLevel level = medal.GetMedalLevel(user, true);

            if (level == null)
            {
                isAuto = false;
            }
            else
            {
                if (medal.GetMedalLevel(user, false).Value > level.Value)
                {
                    isAuto = false;
                }
                else
                {
                    isAuto = true;
                }
            }

            isAutoGets.Add(userMedal.MedalID, isAuto);

            return(isAuto);
        }
示例#3
0
 protected string GetMedalLevelName(User user)
 {
     if (MedalLevelID == null)
     {
         MedalLevel level = Medal.GetMedalLevel(user, false);
         if (level == null)
         {
             return("--");
         }
         return(level.Name);
     }
     else if (MedalLevel != null)
     {
         return(MedalLevel.Name);
     }
     else
     {
         return("--");
     }
 }