/******************检测是否有未领取的每日月卡奖励****************************/ //需要监听事件,另外和时间也有关系 // GameEventDispatcher.Inst.addEventListener(GameEventID.UI_RefreshMonthCard, OnMonthCardDataChange); /// <summary> /// 检测是否有未领取的每日月卡奖励,该逻辑还应注意事件监听和时间,存在问题 /// </summary> /// <returns></returns> public bool CheckUnclaimedMonthCard() { bool _result = false; for (int i = 0; i < m_MonthCardList.Count; i++) { MonthcardTemplate _monthCardTemp = m_MonthCardList[i]; //获取月卡持续天数 int _duration = _monthCardTemp.getDuration(); var _cardData = m_ObjectSelf.GetMontCardInfoById(_monthCardTemp.GetID()); if (_duration < 0) //永久时间 { if (_cardData == null || _cardData.istodayget != 1) { _result = true; break; } } else//限时月卡 { if (_cardData != null) { DateTime _dt = TimeUtils.ConverMillionSecToDateTime(_cardData.overtime, m_ObjectSelf.ServerTimeZone); if (_cardData.istodayget != 1 && m_ObjectSelf.ServerDateTime < _dt)//未过期; { _result = true; break; } } } } return(_result); }
public void InitInfo(MonthcardTemplate monthcardT) { mt = monthcardT; titleTxt.text = GameUtils.getString(mt.getName()); welfareTxt.text = GameUtils.getString("monthcard_content1"); iconBg.sprite = UIResourceMgr.LoadSprite(common.defaultPath + mt.getBaseicon()); iconBg.SetNativeSize(); iconImg.sprite = UIResourceMgr.LoadSprite(common.defaultPath + mt.getIcon()); ExchangeTemplate ex = DataTemplate.GetInstance().GetExchangeTemplateByMonthCardId(monthcardT.getId()); if (ex != null) { costTxt.text = ex.getPrice().ToString(); } itemIconImg1.sprite = GameUtils.GetSpriteByResourceType(EM_RESOURCE_TYPE.Gold); itemIconImg1.gameObject.SetActive(mt.getDailydiamond() > 0); itemCountTxt1.text = mt.getDailydiamond() <= 0 ? "" : mt.getDailydiamond().ToString(); itemIconImg2.sprite = GameUtils.GetSpriteByResourceType(EM_RESOURCE_TYPE.Money); itemIconImg2.gameObject.SetActive(mt.getDailygold() > 0); itemCountTxt2.text = mt.getDailygold() <= 0 ? "" : mt.getDailygold().ToString(); SetMonthcardType(mt.getDuration() > 0 ? Monthcard_Type.Limited : Monthcard_Type.Forever); }