local UICommonTipsPanel = UIViewClass() function UICommonTipsPanel:OnOpened(context) local lineUpIds = MDL.Player.GetHeroLinUpIds() local activeFormationA, kingomA = self:RefreshFormation(1, self.group_Info1, lineUpIds[1], lineUpIds[2]) local activeFormationB, kingomB = self:RefreshFormation(2, self.group_Info2, lineUpIds[3], lineUpIds[4]) local activeFormationC, kingomC = self:RefreshFormation(3, self.group_Info3, lineUpIds[5], lineUpIds[6]) local titleIDS, desIDS = CTL.AssistanceFight.GetBuffTitleAndDes(10) UIUtils.SetLabel(self.group_Info4.lab_Name, titleIDS) UIUtils.SetLabel(self.group_Info4.lab_Harm, desIDS) local isActive = activeFormationA and activeFormationB and activeFormationC and kingomA ~= kingomB and kingomB ~= kingomC self.group_Info4.UIState:SetState(isActive and 1 or 0) UIUtils.SetGray(self.group_Info4.group_TeamBuff.img_TeamBuff, not isActive) end function UICommonTipsPanel:OnBackButtonPressed() self:OnButtonClicked(self.close) end function UICommonTipsPanel:OnButtonClicked(comp) if comp == self.close or comp == self.Bottom then self:CloseView() end end function UICommonTipsPanel:RefreshFormation(formationIndex, group, mainHeroId, subHeroId) local titleIDS, desIDS = CTL.AssistanceFight.GetBuffTitleAndDes(1) UIUtils.SetLabel(group.lab_Name, titleIDS) UIUtils.SetLabel(group.lab_Harm, UIUtils.GetLocalizedTxt(Const_IDS["IDS_Formation_Team" .. formationIndex]) .. desIDS) group.UIState:SetState(0) if mainHeroId <= 0 then CTL.AssistanceFight.SetActiveFormationIcon(group.group_TeamBuff.img_TeamBuff, 1) UIUtils.SetGray(group.group_TeamBuff.img_TeamBuff, true) for i, v in ipairs (group.group_TeamBuff.group_Light) do UIUtils.SetActive(group.group_TeamBuff.group_Light[i], false) end return false, -1 end local qualityLevel = CTL.AssistanceFight.CalculateFormationBuffLevel(mainHeroId, subHeroId) local mainHeroKingdom = DataSheetManager.HeroNum:GetDataByID(mainHeroId).Kingdom CTL.AssistanceFight.SetActiveFormationIcon(group.group_TeamBuff.img_TeamBuff, mainHeroKingdom) -- 设置BUFF效果 if qualityLevel > 0 then local tIDS, dIDS = CTL.AssistanceFight.GetBuffTitleAndDes(qualityLevel) UIUtils.SetLabel(group.lab_Name, tIDS) UIUtils.SetLabel(group.lab_Harm, UIUtils.GetLocalizedTxt(Const_IDS["IDS_Formation_Team" .. formationIndex]) .. dIDS) group.UIState:SetState(1) end UIUtils.SetGray(group.group_TeamBuff.img_TeamBuff, qualityLevel == 0) for i, v in ipairs (group.group_TeamBuff.group_Light) do UIUtils.SetActive(group.group_TeamBuff.group_Light[i], qualityLevel >= i) end return qualityLevel ~= 0, mainHeroKingdom end return UICommonTipsPanel