-- 暴风达成奖励预览界面 local UIStormRewardAchievement = UIViewClass() function UIStormRewardAchievement:OnOpened(context) self:RefreshRewards() end function UIStormRewardAchievement:RefreshRewards() self.totalScore = MDL.Storm.GetTodayMaxScore() self.rewardCfgArray = {} local selectIndex = 0 for i, v in DataSheetManager.StormScoreReward:GetEnumerator() do table.insert(self.rewardCfgArray, v) if self.totalScore >= v.AchieveScore then selectIndex = i - 1 self.myScoreID = v.ID end end self.loop_Rank:ReloadAll(self.rewardCfgArray) self.loop_Rank:MoveIndex(selectIndex) end function UIStormRewardAchievement:OnCellInit(scrollRect, index, cellTable, data) local isOk, nextData = DataSheetManager.StormScoreReward:TryGetDataByID(data.ID + 1) if not isOk then UIUtils.SetLabel(cellTable.txt_Desc, string.FormatByIdsId(Const_IDS["IDS_DemonGod_UI_40"], UTL.String.GetCountStr(data.AchieveScore))) else UIUtils.SetLabel(cellTable.txt_Desc, string.FormatByIdsId(Const_IDS["IDS_DemonGod_UI_41"], UTL.String.GetCountStr(data.AchieveScore), UTL.String.GetCountStr(nextData.AchieveScore))) end -- 当前标签 UIUtils.SetActive(cellTable.group_Now.gameObject, self.myScoreID == data.ID) local repeatData = DataSheetManager.StormScoreRewardRepeat:GetDataByAttrRepeatID(data.RewardRepeatID) for i, rewardData in ipairs(repeatData.Item_Table) do local contentItem = cellTable.group_Items[i] if not contentItem then contentItem = self:InstantiateCellCollection(cellTable.cell.gameObject, cellTable.group_Items, self.item_Template.gameObject) end UIUtils.SetActive(contentItem.gameObject, true) contentItem.ItemID = rewardData.ItemID UTL.Item.SetItemCell(contentItem.item, rewardData.ItemID, rewardData.ItemNum, false) end for i = #repeatData.Item_Table + 1, #cellTable.group_Items do UIUtils.SetActive(cellTable.group_Items[i].gameObject, false) end end function UIStormRewardAchievement:OnCellClicked(scrollRect, index, cellTable, target, data) for _, v in ipairs(cellTable.group_Items) do if target == v.item.event_Click then UTL.ItemTips.ShowCommonTipsById(v.ItemID) return end end end return UIStormRewardAchievement