using FairyGUI; using UI.ActivityMain; using System.Collections; using System.Collections.Generic; using ET; namespace GFGGame { public class ActivityMainTipsView : BaseView { private UI_ActivityMainTipsUI _ui; private AdCfg[] activitydata; private List showActivity = new List(); public override void Dispose() { if (_ui != null) { _ui.Dispose(); _ui = null; } base.Dispose(); } protected override void OnInit() { base.OnInit(); packageName = UI_ActivityMainTipsUI.PACKAGE_NAME; _ui = UI_ActivityMainTipsUI.Create(); this.viewCom = _ui.target; isfullScreen = true; _ui.m_icon.onClick.Add(OnBtnAdJump); _ui.m_btnChange.onClick.Add(OnClickChange); _ui.m_backBtn.onClick.Add(OnClickChange); _ui.m_notTips.onClick.Add(OnClickTips); } protected override void OnShown() { base.OnShown(); if(activitydata == null) { activitydata = AdCfgArray.Instance.dataArray; } _ui.m_t4.Play(); UpdateInfo(); } protected override void OnHide() { showActivity.Clear(); activitydata = null; base.OnHide(); } private void UpdateView() { long endTime = 0; if (showActivity[0] != null || showActivity != null) { if(showActivity[0].activityId != 0) { ActivityInfo activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(showActivity[0].activityId); endTime = activityInfo.EndTime; } else { endTime = TimeUtil.DateTimeToTimestamp(showActivity[0].endTime); } } else { this.Hide(); return; } long curTime = TimeHelper.ServerNow(); _ui.m_activityTime.text = string.Format("剩余{0}", TimeUtil.FormattingTimeTo_DDHHmm(endTime - curTime)); _ui.m_icon.url = "ui://ActivityMainTips/" + showActivity[0].res; // _ui.m_activityDesc.text = showActivity[0].desc; } private void UpdateInfo() { showActivity.Clear(); for (int i=0; i < activitydata.Length; i++) { AdCfg adCfg = activitydata[i]; if (adCfg.activityId > 0) { if (ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId) == null) continue; ActivityInfo activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId); if (TimeHelper.ServerNow() < activityInfo.StartTime || TimeHelper.ServerNow() > activityInfo.EndTime) continue; } if (adCfg.NoticeTips != null || adCfg.NoticeTips != "") { if(adCfg.activityId != 0) { ActivityInfo activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(adCfg.activityId); if (TimeHelper.ServerNow() < activityInfo.StartTime || TimeHelper.ServerNow() > activityInfo.EndTime) { } else { showActivity.Add(adCfg); continue; } } if (adCfg.startTime != "" && adCfg.startTime != null) { long startTime = TimeUtil.DateTimeToTimestamp(adCfg.startTime); long endTime = TimeUtil.DateTimeToTimestamp(adCfg.endTime); if (TimeHelper.ServerNow() < startTime || TimeHelper.ServerNow() > endTime) { continue; } else { showActivity.Add(adCfg); } } } } UpdateView(); } private void OnClickChange() { _ui.m_t0.Play(); showActivity.RemoveAt(0); if (showActivity.Count == 0) { this.Hide(); return; } UpdateView(); _ui.m_t1.Play(); } private void OnClickTips() { if(ActivityDataManager.Instance.todayActivityTips) { _ui.m_notTips.url = "ui://ActivityMain/jrbzts_off"; ActivityDataManager.Instance.todayActivityTips = false; } else { _ui.m_notTips.url = "ui://ActivityMain/ts_jrbzts"; ActivityDataManager.Instance.todayActivityTips = true; } } private void OnBtnAdJump() { AdCfg adCfg = showActivity[0]; object[] param = null; int jumpIndex = 0; if (adCfg.jumpId == nameof(LimitChargeView)) { param = new object[] { adCfg.activityId }; } if (adCfg.jumpId == nameof(NewLimitChargeView)) { param = new object[] { adCfg.activityId }; } if (adCfg.jumpId == nameof(LuckyBoxView)) { jumpIndex = adCfg.jumpParamArr[0]; } if (jumpIndex != 0) ViewManager.Show($"GFGGame.{adCfg.jumpId}", jumpIndex); else ViewManager.Show($"GFGGame.{adCfg.jumpId}", param); } } }