local UIWeaponForgeSoulSkillUp = UIViewClass() function UIWeaponForgeSoulSkillUp:OnOpened(context) UIUtils.SetLabelText(self.UITemplatePopUpZero.txt_Title, Const_IDS.IDS_WeaponForgeSoul_Title) self.skillId = context.skillId self.heroId = context.weaponId self.curSkillLevel = MDL.DivineWeaponForgeSoul.GetWeaponForgeSoulSkillLv(self.heroId, self.skillId) self.oldSkillLevel = self.curSkillLevel - 1 self:InitBreak() end function UIWeaponForgeSoulSkillUp:InitBreak() local newData = DataSheetManager.MagicWeaponForgeSoulSkill:GetDataByForgeSoulSkillID_ForgeSoulSkillLevel(self.skillId, self.curSkillLevel) if self.oldSkillLevel == 0 then self.txt_Last.text = UIUtils.GetLocalizedTxt(Const_IDS.IDS_Jade_Resonance_8) else self.txt_Last.text = string.FormatByIdsId(Const_IDS.IDS_BreakThrough_Lv, self.oldSkillLevel) end self.txt_Now.text = string.FormatByIdsId(Const_IDS.IDS_BreakThrough_Lv, self.curSkillLevel) UIUtils.SetLabelText(self.txt_TalentName, Const_IDS[newData.ForgeSoulSkillName]) UIUtils.SetImageByAssetBundle(self.img_SoulSkill, newData.ForgeSoulSkillIcon) local cfg = DataSheetManager.MagicWeaponForgeSoulEffect:GetDataByMagicWeaponForgeSoulSkillLevel(self.curSkillLevel) UIUtils.SetImageByAssetBundle(self.img_Frame, cfg.ForgeSoulSkillIconBG2) self.img_Frame:SetNativeSize() for i = 1, self.curSkillLevel do local data = DataSheetManager.MagicWeaponForgeSoulSkill:GetDataByForgeSoulSkillID_ForgeSoulSkillLevel(self.skillId, i) self.loop_SoulSkill:AddData(data, 0) end self.loop_SoulSkill:MoveEnd() if Localization.IsEnglish() or Localization.IsIndonesian() or Localization.IsThailand() then self.txt_SkillDesc.text = "" else local cfg = DataSheetManager.MagicWeaponForgeSoulData:GetDataByMagicWeaponID(self.heroId) for index, skillId in ipairs(cfg.ForgeSoulSkill) do if self.skillId == skillId then self.txt_SkillDesc.text = UIUtils.GetLocalizedTxt(Const_IDS[cfg.ForgeSoulSkillName[index]]) break end end end UIUtils.SetActive(self.img_Line, true) UIUtils.SetActive(self.loop_SoulSkill, true) end function UIWeaponForgeSoulSkillUp:OnButtonClicked(comp) if comp == self.UITemplatePopUpZero.Bottom then self:CloseView() UIManager.OpenView(Const_UI_Lua.UIEnum.UIWeaponForgeSoulUPPanel, {heroId = self.heroId}) end end function UIWeaponForgeSoulSkillUp:OnCellInit(scrollRect, index, cellTable, data) cellTable.txt_Talent.text = UTL.String.FormatCombineTextByID(data.ForgeSoulSkillDes) cellTable.txt_Level.text = string.FormatByIdsId(Const_IDS.IDS_BreakThrough_Lv, data.ForgeSoulSkillLevel) if self.oldSkillLevel < data.ForgeSoulSkillLevel then UIUtils.SetActive(cellTable.img_New, true) cellTable.state_Talent:SetState(1) else UIUtils.SetActive(cellTable.img_New, false) cellTable.state_Talent:SetState(0) end end return UIWeaponForgeSoulSkillUp