public void RefreshSingleActivity(stRefreshLivenessDataUserCmd_S cmd) { DataID = cmd.type; ActiveTotalValue = cmd.liveness; LivenessData info = new LivenessData() { type = cmd.type, liveness_num = cmd.liveness_num, time = cmd.times }; DailyDataBase table = GameTableManager.Instance.GetTableItem <DailyDataBase>(DataID); ListSort(activeList); ActiveDic[cmd.type] = info; for (int i = 0; i < activeList.Count; i++) { if (activeList[i].type == info.type) { activeList[i] = info; } } Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.DAILY_RESSINGLEDATA, null); stShowMainPanelRedPoint st = new stShowMainPanelRedPoint() { modelID = (int)WarningEnum.Daily, direction = (int)WarningDirection.None, bShowRed = HaveRewardBoxCanGet(), }; Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.MAINPANEL_SHOWREDWARING, st); }
public void UpdateUI(LivenessData list) { if (null == dailyData) { return; } SetName(dailyData.name); SetIcon(dailyData.icon); SetState(dailyData.recommend); isInSchedule = DataManager.Manager <DailyManager>().UpdateDataLeftTime(dailyData, out leftSeconds); if (list.time >= dailyData.MaxTimes && dailyData.MaxTimes != 0) { m_btn_Go.isEnabled = false; btn_go_label.text = tm.GetLocalText(LocalTextType.Local_TXT_Notice_Daily_Finish); } else { IPlayer player = MainPlayerHelper.GetMainPlayer(); if (player != null && player.GetProp((int)CreatureProp.Level) < dailyData.minLevel) { SetOpenBtn(false, dailyData.minLevel); } else { SetBtnSchedule(dailyData); } } SetLabelValue(list); }
private void SetLabelValue(LivenessData list) { bool ShowMask = dailyData.MaxTimes != 0 && list.time >= dailyData.MaxTimes; if (dailyData.MaxTimes == 0) { m_label_Times.text = ColorManager.GetColorString(ColorType.JZRY_Gray, "次数:不限"); } else { string text = string.Format("次数:{0}/{1}", list.time, dailyData.MaxTimes); if (list.time < dailyData.MaxTimes) { m_label_Times.text = ColorManager.GetColorString(ColorType.JZRY_Gray, text); } else { m_label_Times.text = ColorManager.GetColorString(ColorType.JZRY_Green, text); } } m_spr_Mask.gameObject.SetActive(ShowMask); string text2 = string.Format("活跃:{0}/{1}", list.liveness_num, dailyData.MaxActive); if (list.liveness_num < dailyData.MaxActive) { m_label_Active.text = ColorManager.GetColorString(ColorType.JZRY_Gray, text2); } else { m_label_Active.text = ColorManager.GetColorString(ColorType.JZRY_Green, text2); } }
public void Reset(bool depthClearData = false) { liveness = new LivenessData(); activeList.Clear(); dataID = 0; completedNum = 0; activeSingleValue = 0; activeTotalValue = 0; rewardID = 0; rewardBoxList.Clear(); canGetBoxList.Clear(); ActiveDic.Clear(); }
/// <summary> /// 商城格子数据刷新 /// </summary> /// <param name="grid"></param> /// <param name="index"></param> private void OnUpdateMallGridData(UIGridBase grid, int index) { if (grid is UITabGrid) { if (index > DailyTabValues.Count) { Engine.Utility.Log.Error("DailyPanel OnUpdateMallGridData faield,mallTabDic data errir"); return; } UITabGrid tabGrid = grid as UITabGrid; tabGrid.SetName(DailyTabValues[index]); tabGrid.SetHightLight(activeTabId == index ? true : false); tabGrid.SetGridData(index); } else if (grid is UIDailyGrid) { DailyDataBase data = dailyDataList[index]; if (DataManager.Manager <DailyManager>().ActiveDic.ContainsKey(data.id)) { LivenessData list = DataManager.Manager <DailyManager>().ActiveDic[data.id]; if (data != null && list != null) { UIDailyGrid dailyGrid = grid as UIDailyGrid; dailyGrid.SetDailyData(data, list); dailyGrid.SetSelect(index == m_lstDailyID.IndexOf(selectDailyId)); dailyGrid.onClickDailyGrid = onClickDailyGrid; } } } else if (grid is UIDailyCalendarGrid) { UIDailyCalendarGrid data = grid as UIDailyCalendarGrid; if (data != null) { data.SetGridData(dailyIDs[index]); data.SetBg(todayIsMatch); } } else if (grid is UIDailyRewardGrid) { UIDailyRewardGrid data = grid as UIDailyRewardGrid; if (data != null) { if (index < m_lstRewardID.Count) { data.SetGridData(m_lstRewardID[index]); } } } }
public void ListSort(List <LivenessData> list) { tempList1.Clear(); tempList2.Clear(); tempList3.Clear(); tempList4.Clear(); tempList6.Clear(); openList.Clear(); closeList.Clear(); for (int i = 0; i < list.Count; i++) { DailyDataBase data = GameTableManager.Instance.GetTableItem <DailyDataBase>(list[i].type); if (data != null) { int level = MainPlayerHelper.GetPlayerLevel(); if (level >= data.minLevel) { openList.Add(list[i]); } else { closeList.Add(list[i]); } if (!ActiveDic.ContainsKey(list[i].type)) { ActiveDic.Add(list[i].type, list[i]); } } } long leftSeconds = 0; for (int x = 0; x < openList.Count; x++) { DailyDataBase data = GameTableManager.Instance.GetTableItem <DailyDataBase>(openList[x].type); if (data != null) { if (data.MaxTimes == 0 || (data.MaxTimes > openList[x].time && data.MaxTimes != 0)) { bool InSchedule = DataManager.Manager <DailyManager>().UpdateDataLeftTime(data, out leftSeconds); if (InSchedule) { if (data.recommend == 1) { tempList1.Add(openList[x]); } else if (data.recommend == 2) { tempList2.Add(openList[x]); } else { tempList3.Add(openList[x]); } } else { tempList4.Add(openList[x]); } } else { tempList6.Add(openList[x]); } } } LivenessData temp = new LivenessData(); for (int a = 0; a < closeList.Count; a++) { DailyDataBase data1 = GameTableManager.Instance.GetTableItem <DailyDataBase>(closeList[a].type); if (data1 != null) { for (int b = closeList.Count - 1; b > a; b--) { DailyDataBase data2 = GameTableManager.Instance.GetTableItem <DailyDataBase>(closeList[b].type); if (data2 != null) { if (data1.minLevel > data2.minLevel) { temp = closeList[a]; closeList[a] = closeList[b]; closeList[b] = temp; } } } } } activeList.Clear(); activeList.AddRange(tempList1); activeList.AddRange(tempList2); activeList.AddRange(tempList3); activeList.AddRange(tempList4); activeList.AddRange(tempList6); activeList.AddRange(closeList); }
public void SetDailyData(DailyDataBase data, LivenessData list) { dailyData = data; DailyID = data.id; UpdateUI(list); }