local UIRebornMain = UIViewClass() local RebornToggleIDS = { [MDL.Reborn.RebornToggleIndex.Smelt + 1] = Const_IDS.IDS_EquipMelting_Melting_Title, [MDL.Reborn.RebornToggleIndex.Recast + 1] = Const_IDS.IDS_EquipMelting_Rebirth_Title, [MDL.Reborn.RebornToggleIndex.SoulCrystal + 1] = Const_IDS.IDS_Type_TreasureCrystal, [MDL.Reborn.RebornToggleIndex.RecycleFragment + 1] = Const_IDS.IDS_RFDevelop_FeedButton, } function UIRebornMain:OnOpened(context) UTL.Toggle.InitToggleGroupByIDS(self.toggles_Reborn, "txt", RebornToggleIDS) self:RegistSystemEvent(EventID.FunctionUnlockUpdate, self.RefreshRebornToggleUnlock) self:RegistSystemEvent(EventID.UI_Reborn_ConfirmButtonEffect, self.PlayConfirmEffect) self:RegistSystemEvent(CTL.RedPoint.RedPointKey.Reborn_RecycleFragment, self.RefreshRecycleFragmentRp) -- 界面标题 UIUtils.SetLabelText(self.UITemplateTitlePanel.lab_Title, Const_IDS.IDS_EquipMelting_Title) UIUtils.SetActive(self.UITemplateTitlePanel.btn_Info, true) local UnlockFunctionType = MDL.Unlock.FunctionType local smeltFuncId = UnlockFunctionType.EquipSmelt local recastFuncId = UnlockFunctionType.Recast self:RefreshRebornToggleUnlock(MDL.Reborn.RebornToggleIndex.Smelt, MDL.Unlock.IsUnlock(smeltFuncId)) self:RefreshRebornToggleUnlock(MDL.Reborn.RebornToggleIndex.Recast, MDL.Unlock.IsUnlock(recastFuncId)) self:RefreshRebornToggleUnlock(MDL.Reborn.RebornToggleIndex.SoulCrystal, false) -- 应策划需求 暂时屏蔽 self:RefreshRebornToggleUnlock(MDL.Reborn.RebornToggleIndex.RecycleFragment, MDL.Reborn.GetRecycleFragmentIsOpen()) -- 纳灵系统 self:RefreshRecycleFragmentRp(CTL.RedPoint.GetRedPointActive(CTL.RedPoint.RedPointKey.Reborn)) if context then self.subViewContext = context.subViewContext self.toggles_Reborn:SelectIndex(context.toggleIndex) else self.toggles_Reborn:SelectIndex(MDL.Reborn.RebornToggleIndex.Smelt) end end function UIRebornMain:PlayConfirmEffect() self.effect_Confirm:PlayUIEffect() end function UIRebornMain:RefreshRebornToggleUnlock(toggleIndex, state) local toggle = self.toggles_Reborn.toggles[toggleIndex] if toggle then UIUtils.SetActive(toggle, state) end end function UIRebornMain:OnBackButtonPressed() self:OnButtonClicked(self.UITemplateTitlePanel.btn_close) end function UIRebornMain:OnButtonClicked(comp) if self.UITemplateTitlePanel.btn_close == comp then self:CloseView(true) elseif comp == self.UITemplateTitlePanel.btn_Home then CTL.HomeMain.CloseViewBackHomeMain() elseif self.UITemplateTitlePanel.btn_Info == comp then UIManager.OpenView(Const_UI_Lua.UIEnum.UICommonNoteView, {id = LuaConst.NoteID.EquipMelting}) end end function UIRebornMain:OnValueChanged(comp, index) if comp == self.toggles_Reborn then if self.view then self.view:CloseView() self.view = nil end if index == MDL.Reborn.RebornToggleIndex.Smelt then self.view = self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIRebornSmelt), self.subViewContext) elseif index == MDL.Reborn.RebornToggleIndex.Recast then self.view = self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIRebornRecast), self.subViewContext) elseif index == MDL.Reborn.RebornToggleIndex.SoulCrystal then self.view = self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIRebornSoulCrystal), self.subViewContext) elseif index == MDL.Reborn.RebornToggleIndex.RecycleFragment then self.view = self.subView:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIRecycleFragment), self.subViewContext) end end end function UIRebornMain:RefreshRecycleFragmentRp(active) self.toggles_Reborn:SetRedPoint(MDL.Reborn.RebornToggleIndex.RecycleFragment, MDL.Reborn.GetRecycleFragmentIsOpen() and active) end return UIRebornMain