using ET; using GFGGame; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Assets.Game.HotUpdate.Data { public class ActivityTeaDataManager : SingletonBase { public List ItemSynthetics = new List(); /**********************************************************新春活动*************************************************/ public List NpcInfoList = new List(); public bool GetRewardRed() { if (ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.NewYearVisit) == 0) { return false; } RoleLimitData limitData = RoleLimitDataManager.GetLimitData(ActivityVisitCfgArray.Instance.dataArray[0].limitId); int time = limitData.TotalPlayMax - limitData.PlayTimes; foreach (NpcVisitProto t in NpcInfoList) { if (t.RewrdStatus == 1 || (t.UnlockStatus == 1 && time>0 )) { return true; } } return false; } //获取华容道可用次数 public bool CheckHRDRed() { if (ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.AfternoonLeisure) == 0) { return false; } RoleLimitData limitData; limitData = RoleLimitDataManager.GetLimitData(300); int times = limitData.TotalPlayMax - limitData.PlayTimes; if(times > 0) { //当有关卡没通过时 for (int i = 0; i < MiniGameDateManager.Instance.gameinfoList.Count; i++) { if (MiniGameDateManager.Instance.gameinfoList[i].GameType == 3) { if (!MiniGameDateManager.Instance.gameinfoList[i].IsCleared) { return true; } } } return false; } else { return false; } } //合成红点 public bool GetActivitySyntheticRed() { if (ActivityDataManager.Instance.GetCurOpenActiveByType(ActivityType.ItemSynthetic) == 0) { return false; } var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.ItemSynthetic); ActivityOpenCfg activityOpenCfg = ActivityOpenCfgArray.Instance.GetCfg(activityInfo.ActivityId); var suitCfg = SuitCfgArray.Instance.GetCfg(activityOpenCfg.paramsArr[0]); for (int i = 0; i < suitCfg.partsArr.Length; i++) { ItemCfg itemSyntheticCfg = ItemCfgArray.Instance.GetCfg(suitCfg.partsArr[i]); var materiarsArr = itemSyntheticCfg.syntheticMateriarsArr; if (ItemDataManager.GetItemNum(materiarsArr[0][0]) >= materiarsArr[0][1] && ItemDataManager.GetItemNum(materiarsArr[1][0]) >= materiarsArr[1][1]) return true; } return false; } //新年拜访任务红点 public bool CheckVisitTaskRed(int npcID = 0) { if (npcID == 0) { for (int i = 0; i < ActivityVisitCfgArray.Instance.dataArray.Length; i++) { if ((NpcInfoList.Count > i) && NpcInfoList[i].UnlockStatus == 2) { foreach (int j in ActivityVisitCfgArray.Instance.dataArray[i].taskIdArr) { if (TaskDataManager.Instance.GetTaskStateById(j) == 1) { return true; } } } } } else { foreach (int j in ActivityVisitCfgArray.Instance.GetCfg(npcID).taskIdArr) { if (TaskDataManager.Instance.GetTaskStateById(j) == 1) { return true; } } } return false; } } }