public static bool CalculateIsShowRedPoint() { bool sign = false; MissionManager missionManager = GameManager.gameManager.MissionManager; foreach (List <Tab_DailyMission> dailyMission in TableManager.GetDailyMission().Values) { if (!missionManager.IsMissionHaveDone(dailyMission[0].MissionID)) { Tab_MissionBase missionBase = TableManager.GetMissionBaseByID(dailyMission[0].MissionID, 0); if (missionBase != null) { Tab_MissionOperationNum missionOp = TableManager.GetMissionOperationNumByID(missionBase.LogicID, 0); if (missionOp != null) { if (missionManager.GetMissionParam(dailyMission[0].MissionID, 0) < missionOp.OperationCount) { continue; } else { sign = true; break; } } } } } if (!sign) { int progress = GameManager.gameManager.PlayerDataPool.AwardActivityData.Activeness; int index = 0; foreach (List <Tab_ActivenessAward> award in TableManager.GetActivenessAward().Values) { if (progress >= award[0].MiniActiveness && index < 5) { bool claimed = GameManager.gameManager.PlayerDataPool.AwardActivityData.GetActivenessAwardFlag(award[0].Id); if (!claimed) { sign = true; break; } } index++; } } return(sign); }
/// <summary> /// 设置数据 /// </summary> /// <param name="mission"></param> public void SetData(Tab_DailyMission mission) { mMissionId = mission.MissionID; mGoToUIId = mission.UIName; MissionManager missionManager = GameManager.gameManager.MissionManager; Tab_MissionDictionary missionDic = TableManager.GetMissionDictionaryByID(mMissionId, 0); Tab_MissionBase missionBase = TableManager.GetMissionBaseByID(mMissionId, 0); if (missionBase == null || missionBase.LogicType != (int)TableType.Table_OperationNum) { LogModule.WarningLog("DailyMission Logic Type Error, id = " + mission.Id); return; } Tab_MissionOperationNum missionOp = TableManager.GetMissionOperationNumByID(missionBase.LogicID, 0); lblMissionName.text = string.Format(missionDic.MissionName, "", ""); sprIcon.spriteName = missionDic.MissionIcon; lblDesc.text = missionDic.MissionDesc; lblActive.text = StrDictionary.GetClientDictionaryString("#{1634}", mission.AwardActiveness); int progress = missionOp.OperationCount; if (missionManager.IsHaveMission(mMissionId)) { progress = missionManager.GetMissionParam(mMissionId, 0); doneArea.SetActive(false); rewardArea.SetActive(true); btnClaim.SetActive(missionManager.GetMissionState(mMissionId) == (byte)MissionState.Mission_Completed); UIEventListener.Get(btnClaim).onClick = ClaimReward; SetRewards(mission); } else { doneArea.SetActive(true); rewardArea.SetActive(false); btnClaim.SetActive(false); } lblProgress.text = progress + "/" + missionOp.OperationCount; UpdateProgress(progress, missionOp.OperationCount); UIEventListener.Get(btnGoTo).onClick = GoToUI; }