| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | using System.Collections.Generic;namespace GFGGame{    public class RedDotDataManager : SingletonBase<RedDotDataManager>    {        /// <summary>        /// 公告        /// 是否有未读公告        /// </summary>        /// <returns></returns>        public bool GetNoticeRed()        {            List<NoticeInfo> noticeInfos = NoticeDataManager.Instance.NoticeInfos;            for (int i = 0; i < noticeInfos.Count; i++)            {                if (noticeInfos[i].readStatus == false) return true;            }            return false;        }        /// <summary>        /// 任务        /// 是否有任务奖励、任务宝箱奖励可领        /// </summary>        /// <returns></returns>        public bool GetTaskRed()        {            Dictionary<int, TaskInfo> taskInfo = DailyTaskDataManager.Instance.TaskInfo;            foreach (int key in taskInfo.Keys)            {                if (DailyTaskDataManager.Instance.GetTaskStateById(key) == ConstBonusStatus.CAN_GET) return true;            }            Dictionary<int, int> livenessBoxInfos = DailyTaskDataManager.Instance.LivenessBoxInfos;            foreach (int key in livenessBoxInfos.Keys)            {                if (DailyTaskDataManager.Instance.GetBoxStateById(key) == ConstBonusStatus.CAN_GET) return true;            }            return false;        }        /// <summary>        /// 七天签到        /// </summary>        /// <returns></returns>        public bool GetDailyLoginRed()        {            return ActivityDataManager.Instance.dailyLoginBonusStatus == ConstBonusStatus.CAN_GET;        }        /// <summary>        /// 有邮件未读或未领奖励        /// </summary>        /// <returns></returns>        public bool GetMailRed()        {            if (MailDataManager.Instance.UnreadCount > 0) return true;            // Dictionary<long, MailInfo> mailInfoDic = MailDataManager.Instance.MailInfoDic;            // foreach (MailInfo mailInfo in mailInfoDic.Values)            // {            //     if (MailDataManager.Instance.GetMailState(mailInfo) == 1) return false;//数据已排序,第一个已读,则所没有含奖邮件            //     if (MailDataManager.Instance.GetMailState(mailInfo) == 3) return false;//数据已排序,第一个已领,则所有奖励已领            //     if (MailDataManager.Instance.GetMailState(mailInfo) == 2) return true;//数据已排序,有奖励未领            // }            return false;        }    }}
 |