local UIHeroAdvancedSuccess = UIViewClass() function UIHeroAdvancedSuccess:OnOpened(context) local heroId = context[1] local nowAdvanceId = MDL.Advanced.GetHeroAdvancedInfo(heroId) local lastAdvanceId = nowAdvanceId - 1 UIUtils.SetLabelText(self.UITemplatePopUpZero.txt_Title, Const_IDS.IDS_HeroAdvance_Advanced) self:RefreshStars(nowAdvanceId, lastAdvanceId) self:RefreshAdvancedTitle(heroId, nowAdvanceId) self:RefreshAttrs(heroId, nowAdvanceId) self:RefreshHeroHeadImage(heroId) CTL.Sound.PlayGameSound("UI_advanced") end function UIHeroAdvancedSuccess:OnButtonClicked(comp) if comp == self.UITemplatePopUpZero.Bottom then self:CloseView() end end function UIHeroAdvancedSuccess:OnClosed() CTL.FormationResonance.OpenSubResonanceLevelUp() end function UIHeroAdvancedSuccess:RefreshHeroHeadImage(heroId) UTL.Item.SetHeroIconByHeroId(self.img_AvatarBefore, heroId, MDL.HeroAwaken.GetIsHeroAwaken(heroId)) UTL.Item.SetHeroIconByHeroId(self.img_AvatarAfter, heroId, MDL.HeroAwaken.GetIsHeroAwaken(heroId)) end function UIHeroAdvancedSuccess:RefreshAttrs(heroId, advanceId) local attrId = DataSheetManager.HeroAdvanceAttr:GetDataByAdvanceTemplateID_AdvanceID(DataSheetManager.HeroNum:GetDataByID(heroId).AdvanceTemplateID, advanceId).LvupAttr if attrId > 0 then local attrTable = DataSheetManager.HeroAdvLvupRepeat:GetDataByLvupRepeatID(attrId).Lvup_Table for i, v in ipairs(self.group_InfoBottom) do if attrTable[i] then UIUtils.SetActive(v.gameObject, true) local attrName = DataSheetManager.AttrData:GetDataByID(attrTable[i].LvupType).Name UIUtils.SetLabelText(v.txt_Attr, Const_IDS[attrName]) UIUtils.SetLabel(v.txt_Num, "+" .. attrTable[i].LvupNum) else UIUtils.SetActive(v.gameObject, false) end end end end function UIHeroAdvancedSuccess:RefreshStars(nowAdvanceId, lastAdvanceId) local nowAdvancedData = DataSheetManager.HeroAdvance:GetDataByAdvanceID(nowAdvanceId) CTL.Advanced.InstantiateStarCell(self, self.group_StarAfter[1].gameObject, self.group_StarAfter, nowAdvancedData.SumStar, nowAdvancedData.LightStar, nowAdvancedData.StarColorIcon, nowAdvancedData.StarLockIcon) UIUtils.SetLabel(self.txt_AdvancedAfter, string.FormatByIdsId(Const_IDS[nowAdvancedData.AdvanceDesc], nowAdvancedData.Stage, nowAdvancedData.LightStar)) local lastAdvancedData = DataSheetManager.HeroAdvance:GetDataByAdvanceID(lastAdvanceId) CTL.Advanced.InstantiateStarCell(self, self.group_StarBefore[1].gameObject, self.group_StarBefore, lastAdvancedData.SumStar, lastAdvancedData.LightStar, lastAdvancedData.StarColorIcon, lastAdvancedData.StarLockIcon) UIUtils.SetLabel(self.txt_AdvancedBefore, string.FormatByIdsId(Const_IDS[lastAdvancedData.AdvanceDesc], lastAdvancedData.Stage, lastAdvancedData.LightStar)) end function UIHeroAdvancedSuccess:RefreshAdvancedTitle(heroId, nowAdvanceId) local descTitle, desc = CTL.Advanced.GetNextBigAdvanceTitleAndDesc(heroId, nowAdvanceId) self.txt_AdvancedInfo.text = desc end return UIHeroAdvancedSuccess