local UITalentSkillTips = require("View/Common/UITalentSkillTips") local UITalentSkillTipsPreview = UIViewClass(UITalentSkillTips) local SkillIconPath = ConstAssetPathConfig.SkillImagePath function UITalentSkillTipsPreview:RefreshTalentSkillInfo(context) UIUtils.SetActive(self.group_LockInfo, true) local heroId, talentId = context.heroId, context.talentId local talentData = MDL.HeroStar.GetHeroTalentDataByTalentId(heroId, talentId) local talentList = talentData.DevelopEffectID local name, desc = MDL.HeroStar.GetTalentNameAndDesc(talentList[1]) self.txt_TalentName.text = name self.txt_TalentDes.text = desc local developEffectData = DataSheetManager.DevelopEffectData:GetDataByID(talentId) UIUtils.SetImageByAssetBundle(self.img_Talent, string.format(SkillIconPath, developEffectData.Icon)) local level = MDL.HeroStar.GetHeroTalentLevel(heroId, talentId) self.txt_Lv.text = #talentList local isLock = false UIUtils.SetActive(self.group_Level, not isLock and level > 0) UIUtils.SetActive(self.group_LockCondition.gameObject, isLock) UIUtils.SetActive(self.group_Locked.gameObject, isLock) UIUtils.SetActive(self.group_LevelUpHint.gameObject, not isLock) self.state_DesLock:SetState(isLock and 0 or 1) if context.isMax or CTL.HeroStar.IsHeroReachMaxStar(heroId) then UIUtils.SetLabelText(self.txt_LevelUpHint, Const_IDS.IDS_HeroSkill_UnlockHint_FairFight) else UIUtils.SetLabel(self.txt_LevelUpHint, string.FormatByIdsId(Const_IDS.IDS_TalentSkill_UnlockHint2, UTL.Attr.GetHeroBreakTargetLevelByTalentId(heroId, talentId))) end self:RefreshTalentTypeTag(talentData.Display_Table) self:RefreshTalentLevelList(heroId, talentList, level) if level > 1 then self.loop_TalentSkill:MoveIndex(level - 2) end end function UITalentSkillTipsPreview:OnCellInit(scrollRect, index, cellTable, data) local level = data.level local talentId = data.talentId local isInLevel = (index + 2) == level local name, desc = MDL.HeroStar.GetTalentNameAndDesc(talentId) cellTable.txt_Level.text = string.FormatByIdsId(Const_IDS["IDS_TalentSkill_Level"], index + 2) cellTable.txt_Talent.text = desc if isInLevel then cellTable.state_Talent:SetState(2) else cellTable.state_Talent:SetState(1) end end return UITalentSkillTipsPreview