using ET; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace GFGGame { public class ActivityAfuGiftDataManager : SingletonBase { private ActivityInfo info; public ActivityInfo Info { get => info; set => info = value; } private int _indexDay; private bool _isBuy; //已经领奖levelId private List _normalRewards = new List(); //已经高级领奖levelId private List _superRewards = new List(); private List _rewardCfgs; public List RewardCfgs { get => _rewardCfgs; set => _rewardCfgs = value; } private bool _isOpen; public bool IsOpen { get => _isOpen; set => _isOpen = value; } private bool _needRefresh; public bool NeedRefresh { get => _needRefresh; set => _needRefresh = value; } public bool CheckIconShow() { var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.AFZL); return activityInfo != null && activityInfo.StartTime <= TimeHelper.ServerNow() && activityInfo.EndTime > TimeHelper.ServerNow(); } public void InitActivityInfo() { Info = ActivityGlobalDataManager.Instance.GetActivityInfoOneByType(ActivityType.AFZL); RewardCfgs = ActivityLoginCfgArray.Instance.GetCfgsByid(Info.ActivityId); } public int GetNormalRewardStateByDay(int indexDay) { return _normalRewards[indexDay]; } public int GetSuperRewardStateByDay(int indexDay) { return _superRewards[indexDay]; } public void SetRewardStateList(List list, bool isVip) { if (isVip) { _superRewards = new List(list); } else { _normalRewards = new List(list); } } public void SetIsBuy(bool isBuy) { _isBuy = isBuy; } public bool GetIsBuy() { return _isBuy; } public void SetIndexDay(int indexDay) { _indexDay = indexDay; } public int GetIndexDay() { return _indexDay; } public bool HaveCanGetReward() { if (!_isOpen) { return false; } int passDay = GetIndexDay(); for (int i = passDay - 1; i >= 0; i--) { if (GetNormalRewardStateByDay(i) == ConstBonusStatus.CAN_GET || GetSuperRewardStateByDay(i) == ConstBonusStatus.CAN_GET) { return true; } } return false; } public void Clear() { _isOpen = false; _needRefresh = true; //info = null; //_isBuy = false; //_indexDay = 1; //_normalRewards.Clear(); //_superRewards.Clear(); } } }