local UIPKRoomBase = UIViewClass() local YES_DES = UIUtils.GetLocalizedTxt(Const_IDS["IDS_PK_RoomInfo_5"]) local NO_DES = UIUtils.GetLocalizedTxt(Const_IDS["IDS_PK_RoomInfo_6"]) local HIGHLIGHT_TEXT_COLOR = "71C565" function UIPKRoomBase:OnOpened() self:RegistSystemEvent(EventID.UI_UpdateRoomInfo, self.UpdateHouseInfo) self:RegistSystemEvent(EventID.UI_UpdateRoomSettingInfo, self.UpdateRoomSettingPanel) self:RegistSystemEvent(EventID.UI_UpdateMemberState, self.UpdatePlayerHeads) self:RegistSystemEvent(EventID.UI_FairPlay_SyncSoloSeasonInfoUpdate, self.RefreshFormationHeroes) self:RegistSystemEvent(EventID.UI_CloseAndRecoverView, self.OnCloseAndRecoverView) self:RegistSystemEvent(EventID.UI_FairPlay_RefreshHeroWinRateInfo,self.EnterChooseHero) self:InitPanel() self.chatView = self.subView_Chat:OpenView(GetViewClass(Const_UI_Lua.UIEnum.UIPKRoomChatView)) self:TryStartEnterWatchBattleChecker() end function UIPKRoomBase:InitPanel() self.heroFormationNumber = 0 local RoomData = CTL.CustomRoom.GetRoomDataTB(MDL.CustomRoom.GetRoomData().BriefInfo, MDL.CustomRoom.GetRoomData().SupplementInfo) -- 设置标题和 self.activityID = RoomData.ActivityID UIUtils.SetActive(self.group_1v1.gameObject, false) UIUtils.SetActive(self.group_3v3.gameObject, false) if RoomData.ActivityID == LuaConst.ActivityType.SyncSoloPK then -- 1v1 PK UIUtils.SetActive(self.group_1v1.gameObject, true) UIUtils.SetLabelText(self.UITemplateTitlePanel.lab_Title, Const_IDS["IDS_PK_Room_1v1Title"]) self:RefreshFormationHeroes() elseif RoomData.ActivityID == LuaConst.ActivityType.SyncTVTPK then -- 3V3 PK UIUtils.SetActive(self.group_3v3.gameObject, true) UIUtils.SetLabelText(self.UITemplateTitlePanel.lab_Title, Const_IDS["IDS_PK_Room_3v3Title"]) end self.filterObj = self.group_Owner.loop_LevelSelect self:UpdateRoomSettingPanel() self:UpdatePlayerHeads() end function UIPKRoomBase:UpdateHouseInfo() self:UpdateRoomSettingPanel() self:UpdatePlayerHeads() self:TryStartEnterWatchBattleChecker() end function UIPKRoomBase:TryStartEnterWatchBattleChecker() self:StopRepeatFunc(self.EnterWatchBattleChecker) if MDL.CustomRoom.GetIsWatcher() and MDL.CustomRoom.GetIsReadyEnterWatch() then self:StartRepeatFunc(self.EnterWatchBattleChecker, 3) end end function UIPKRoomBase:EnterWatchBattleChecker() if MDL.CustomRoom.GetIsReadyEnterWatch() == false then self:StopRepeatFunc(self.EnterWatchBattleChecker) return end if self.activityID == LuaConst.ActivityType.SyncSoloPK then MDL.WatchBattle.WatchBattleRequest(MDL.CustomRoom.GetCurRoomWatchBattleId(), MDL.WatchBattle.WatchBattleType.PK1v1) elseif self.activityID == LuaConst.ActivityType.SyncTVTPK then MDL.WatchBattle.WatchBattleRequest(MDL.CustomRoom.GetCurRoomWatchBattleId(), MDL.WatchBattle.WatchBattleType.PK3v3) end end function UIPKRoomBase:UpdateRoomSettingPanel() local setting = MDL.CustomRoom.GetInRoomSetting() local isOwner = MDL.CustomRoom.IsRoomOwner() UIUtils.SetLabel(self.txt_RoomName, MDL.CustomRoom.GetCurRoomName()) UIUtils.SetActive(self.group_Owner.gameObject, false) UIUtils.SetActive(self.group_Member.gameObject, false) local filterDes = string.FormatByIdsId(Const_IDS["IDS_PK_RoomInfo_1"], CTL.CustomRoom.GetLevelDescByActivityID(setting.ActivityID, setting.AccessDan)) self.curFilterLv = setting.AccessDan if isOwner then UIUtils.SetActive(self.group_Owner.gameObject, true) -- 房间号 UIUtils.SetLabel(self.group_Owner.txt_RoomNum, string.FormatByIdsId(Const_IDS["IDS_PK_RoomInfo_4"], setting.RoomID)) local isCodeInputShow = self.curCodeToggleState and self.curCodeToggleState or setting.RequirePassword self.group_Owner.toggle_Code.isOn = isCodeInputShow UIUtils.SetActive(self.group_Owner.obj_CodeInputField, isCodeInputShow) if setting.RequirePassword then self.group_Owner.obj_CodeInputField.text = MDL.CustomRoom.GetRoomPWD() else self.group_Owner.obj_CodeInputField.text = nil end -- 筛选列表 self:RefreshFilterDes(setting.AccessDan) else UIUtils.SetActive(self.group_Member.gameObject, true) -- 房间号 UIUtils.SetLabel(self.group_Member.txt_RoomNum, string.FormatByIdsId(Const_IDS["IDS_PK_RoomInfo_4"], setting.RoomID)) -- 准入等级 UIUtils.SetLabel(self.group_Member.txt_EnterLimit_Member, filterDes) -- 是否需要密码 local codeDes = setting.RequirePassword and YES_DES or NO_DES UIUtils.SetLabel(self.group_Member.txt_Code, string.FormatByIdsId(Const_IDS["IDS_PK_RoomInfo_3"], codeDes)) end end function UIPKRoomBase:UpdatePlayerHeads() local groupCollection = self.activityID == LuaConst.ActivityType.SyncSoloPK and self.group_1v1 or self.group_3v3 local isWatcher = MDL.CustomRoom.GetIsWatcher() local isSelfOwner = MDL.CustomRoom.IsRoomOwner() local memberDic = MDL.CustomRoom.GetInRoomMemberDic() local isChoosingHero = MDL.CustomRoom.GetCurRoomIsChoosingHero() -- 准备 开始按钮房主、房间成员视角 UIUtils.SetActive(groupCollection.btn_Start, isSelfOwner) UIUtils.SetActive(groupCollection.btn_Ready, not isSelfOwner and not isWatcher) if groupCollection.btn_Change then UIUtils.SetActive(groupCollection.btn_Change, isWatcher == false) end local pos, isReady, isOnline = MDL.CustomRoom.GetMyStateInfo() UIUtils.SetLabelText(groupCollection.txt_Ready, isReady and Const_IDS["IDS_PK_Room_Formation_Button_4"] or Const_IDS["IDS_PK_Room_Formation_Button_3"]) if self.activityID == LuaConst.ActivityType.SyncTVTPK then if isWatcher and MDL.CustomRoom.GetCurRoomIsChoosingHero() then UIUtils.SetLabelText(self.group_3v3.txt_WatchChoice,Const_IDS.IDS_PK_PickPhase) else self.group_3v3.txt_WatchChoice.text = nil end end -- 更新头像 for index, Collection in ipairs(groupCollection.head_Array) do Collection.state_Me:SetState(0) UIUtils.SetActive(Collection.bg_add.gameObject, isSelfOwner) -- 房主标识 local playerData = memberDic[index - 1] if playerData then local isPlayerSelf = playerData.BriefInfo.ACID == BattleDataGetter.GetAcID() UIUtils.SetActive(Collection.Default.gameObject, true) UIUtils.SetActive(Collection.Empty.gameObject, false) UIUtils.SetActive(Collection.ico_RoomOwner.gameObject, MDL.CustomRoom.IsRoomOwner(playerData.BriefInfo.ACID)) Collection.state_Me:SetState(isPlayerSelf and 1 or 0) -- 交换按钮 if Collection.btn_Change then UIUtils.SetActive(Collection.btn_Change, not isPlayerSelf) if isWatcher then if isChoosingHero then UIUtils.SetActive(Collection.btn_Change, false) else UIUtils.SetActive(Collection.btn_Change, true) Collection.btn_Change:SetGray(true, false) end else Collection.btn_Change:SetGray(false) end end UIUtils.SetActive(Collection.img_KickOut, isSelfOwner and not isPlayerSelf) if playerData.isRobot then CTL.Character.SetRobotHead(Collection.UIHeroHead) Collection.group_Gender:SetState(2) UIUtils.SetLabel(Collection.lab_RoleName, CTL.Character.GetRobotName(playerData.BriefInfo.ACID)) UIUtils.SetActive(Collection.groupBG.gameObject, false) UIUtils.SetActive(Collection.txt_Level.gameObject, false) else if isWatcher and self.activityID == LuaConst.ActivityType.SyncTVTPK then UIUtils.SetActive(Collection.groupBG.gameObject, isChoosingHero == false) UIUtils.SetActive(Collection.txt_Level.gameObject, isChoosingHero == false) else UIUtils.SetActive(Collection.groupBG.gameObject, true) UIUtils.SetActive(Collection.txt_Level.gameObject, true) end -- 头像 CTL.Character.SetPortraitAndFrame(Collection.UIHeroHead, playerData.BriefInfo.PortraitID, playerData.BriefInfo.FrameID) -- 性别 Collection.group_Gender:SetState(playerData.BriefInfo.Sex == 1 and 0 or 1) -- 玩家名称 local name = not isPlayerSelf and playerData.BriefInfo.Name or UTL.Color.FormatTextByColor(HIGHLIGHT_TEXT_COLOR, playerData.BriefInfo.Name) UIUtils.SetLabel(Collection.lab_RoleName, name) -- 服务器ID UIUtils.SetLabel(Collection.txt_Sever, CTL.CrossServer.GetServerShowStr(playerData.BriefInfo.ShowServerID)) -- 段位等级 UIUtils.SetLabel(Collection.txt_Level, CTL.CustomRoom.GetLevelDescByActivityID(self.activityID, playerData.BriefInfo.Dan)) end -- 是否在线 UIUtils.SetActive(Collection.img_OffLine.gameObject, playerData.SupplementInfo.Online == false) -- 是否准备 local isReadyLogoShow = playerData.SupplementInfo.Online and playerData.SupplementInfo.CurState == MDL.CustomRoom.MemberState.Ready and not MDL.CustomRoom.IsRoomOwner(playerData.BriefInfo.ACID) UIUtils.SetActive(Collection.img_Ready, isReadyLogoShow) -- 是否正在交换遮罩倒计时 if MDL.CustomRoom.IsInExchangeCD() and isPlayerSelf then Collection.img_Change:ResetAndBeginTimer(false, MDL.CustomRoom.AbleExchangeTimestamp - UTL.Time.GetServerTimestamp()) else Collection.img_Change:EndTimer() end if Collection.state_btnChange then Collection.state_btnChange:SetState(0) end --更新武将 if Collection.group_Formation_Watch then if isWatcher then UIUtils.SetActive(Collection.group_Formation_Watch.gameObject, true) self:SetPKHeroList(Collection.group_Formation_Watch, LuaConst.ActivityType.SyncSoloPK, playerData.SupplementInfo.heroList, playerData.SupplementInfo.awakenList) else UIUtils.SetActive(Collection.group_Formation_Watch.gameObject, false) end end if Collection.Hero_Watch then if isWatcher and isChoosingHero then UIUtils.SetActive(Collection.Hero_Watch, true) self:SetPKHeroList(Collection.cell_Hero_Watch, LuaConst.ActivityType.SyncTVTPK, playerData.SupplementInfo.heroList, playerData.SupplementInfo.awakenList) else UIUtils.SetActive(Collection.Hero_Watch, false) end end else UIUtils.SetActive(Collection.Empty.gameObject, true) UIUtils.SetActive(Collection.btn_AddRobot.gameObject, isSelfOwner) UIUtils.SetActive(Collection.Default.gameObject, false) if Collection.btn_Change then UIUtils.SetActive(Collection.btn_Change, true) if isWatcher then Collection.btn_Change:SetGray(true, false) else Collection.btn_Change:SetGray(false) end end if Collection.state_btnChange then Collection.state_btnChange:SetState(1) end if Collection.group_Formation_Watch then if isWatcher then UIUtils.SetActive(Collection.group_Formation_Watch.gameObject, true) self:SetPKHeroList(Collection.group_Formation_Watch, LuaConst.ActivityType.SyncSoloPK) else UIUtils.SetActive(Collection.group_Formation_Watch.gameObject, false) end end if Collection.Hero_Watch then UIUtils.SetActive(Collection.Hero_Watch, false) end end end end function UIPKRoomBase:SetPKHeroList(collection, activityID, heroList, awakenList) if activityID == LuaConst.ActivityType.SyncSoloPK then for i = 2, 6, 2 do local mainHeroId = heroList and heroList[i - 1] or 0 local mainAwaken = awakenList and awakenList[i - 1] or false local cell = collection.group_Hero[i / 2] UIUtils.SetActive(cell.img_MainHero, mainHeroId > 0) UIUtils.SetActive(cell.img_MainEmpty, not (mainHeroId > 0)) UIUtils.SetActive(cell.img_experience01, self:IsExperienceFreeHero(mainHeroId)) if mainHeroId > 0 then UTL.Item.SetHeroIconByHeroId(cell.img_MainHero, mainHeroId, mainAwaken) end local subHeroId = heroList and heroList[i] or 0 local subAwaken = awakenList and awakenList[i] or false UIUtils.SetActive(cell.img_SubHero, subHeroId > 0) UIUtils.SetActive(cell.img_SubEmpty, not (subHeroId > 0)) UIUtils.SetActive(cell.img_experience02, self:IsExperienceFreeHero(subHeroId)) if subHeroId > 0 then UTL.Item.SetHeroIconByHeroId(cell.img_SubHero, subHeroId, subAwaken) end end else local mainHeroId = heroList and heroList[1] or 0 local mainAwaken = awakenList and awakenList[1] or false UIUtils.SetActive(collection.img_MainHero, mainHeroId > 0) UIUtils.SetActive(collection.img_MainEmpty, not (mainHeroId > 0)) if mainHeroId > 0 then UTL.Item.SetHeroIconByHeroId(collection.img_MainHero, mainHeroId, mainAwaken) end local subHeroId = heroList and heroList[2] or 0 local subAwaken = awakenList and awakenList[2] or false UIUtils.SetActive(collection.img_SubHero, subHeroId > 0) UIUtils.SetActive(collection.img_SubEmpty, not (subHeroId > 0)) if subHeroId > 0 then UTL.Item.SetHeroIconByHeroId(collection.img_SubHero, subHeroId, subAwaken) end end end function UIPKRoomBase:RefreshFormationHeroes() local isWatcher = MDL.CustomRoom.GetIsWatcher() if isWatcher then UIUtils.SetActive(self.group_1v1.group_Formation_1v1, false) else UIUtils.SetActive(self.group_1v1.group_Formation_1v1, true) local formationList = MDL.CustomRoom.LoadSoloPKFormation() for i = 2, 6, 2 do local mainHeroId = formationList[i - 1] local cell = self.group_1v1.group_Hero[i / 2] UIUtils.SetActive(cell.img_MainHero, mainHeroId > 0) UIUtils.SetActive(cell.img_MainEmpty, not (mainHeroId > 0)) UIUtils.SetActive(cell.img_experience01, self:IsExperienceFreeHero(mainHeroId)) if mainHeroId > 0 then UTL.Item.SetHeroIconByHeroId(cell.img_MainHero, CTL.HeroAwaken.DecodeHeroId(mainHeroId)) self.heroFormationNumber = self.heroFormationNumber + 1 end local subHeroId = formationList[i] UIUtils.SetActive(cell.img_SubHero, subHeroId > 0) UIUtils.SetActive(cell.img_SubEmpty, not (subHeroId > 0)) UIUtils.SetActive(cell.img_experience02, self:IsExperienceFreeHero(subHeroId)) if subHeroId > 0 then UTL.Item.SetHeroIconByHeroId(cell.img_SubHero, CTL.HeroAwaken.DecodeHeroId(subHeroId)) self.heroFormationNumber = self.heroFormationNumber + 1 end end end end function UIPKRoomBase:IsExperienceFreeHero(heroId) if heroId <= 0 then return false end -- 限免武将 if MDL.SyncSolo.CheckIsTemporaryFreeHero(heroId) then return false end -- 体验卡武将 if MDL.SyncSolo.CheckIsExperienceFreeHero(heroId) then return true end return false end function UIPKRoomBase:OnBackButtonPressed() self:OnButtonClicked(self.UITemplateTitlePanel.btn_close) end function UIPKRoomBase:OnButtonClicked(comp) if comp == self.UITemplateTitlePanel.btn_close then local ids = MDL.CustomRoom.GetIsWatcher() and Const_IDS.IDS_PK_WatchQuit or Const_IDS.IDS_PK_Room_Tips_1 local roomData = MDL.CustomRoom.GetRoomData().BriefInfo UTL.MessageBox.ShowOKCancelBox(nil, ids, function() MDL.CustomRoom.LeaveCustomRoomReq(roomData.ActivityID, roomData.RoomID) end ) elseif comp == self.UITemplateTitlePanel.btn_Home then local ids = MDL.CustomRoom.GetIsWatcher() and Const_IDS.IDS_PK_WatchQuit or Const_IDS.IDS_PK_Room_Tips_1 UTL.MessageBox.ShowOKCancelBox(nil, ids, function() local roomData = MDL.CustomRoom.GetRoomData().BriefInfo MDL.CustomRoom.LeaveCustomRoomReq(roomData.ActivityID, roomData.RoomID) CTL.HomeMain.CloseViewBackHomeMain() end ) elseif comp == self.UITemplateTitlePanel.btn_Info then local id = self.activityID == LuaConst.ActivityType.SyncSoloPK and LuaConst.NoteID.PKRoom1 or LuaConst.NoteID.PKRoom3 UIManager.OpenView(Const_UI_Lua.UIEnum.UICommonNoteView, { id = id }) elseif comp == self.group_Member.img_Copy or comp == self.group_Owner.img_Copy then UIUtils.GetSystemCopyText(MDL.CustomRoom.GetInRoomSetting().RoomID) CTL.Tips.AddTipsMsg(Const_IDS["IDS_PK_RoomNum_Copy"]) elseif comp == self.group_Owner.btn_ChangeRoomName then UIManager.OpenView(Const_UI_Lua.UIEnum.UIPKChangeRoomNamePanel) elseif comp == self.btn_Friend then CTL.Friend.OpenFriendPanel(CTL.Friend.MainIndex.Main) elseif comp == self.group_Owner.event_Level then -- 房主关闭段位准入列表 self:SetFilterLoopShow(true) elseif comp == self.group_Owner.event_Close then -- 房主打开段位准入列表 self:SetFilterLoopShow(false) elseif comp == self.group_1v1.btn_Change or comp == self.group_1v1.group_Hero_Btn then local pos, meIsReady, online = MDL.CustomRoom.GetMyStateInfo() if meIsReady then CTL.Tips.AddTipsMsg(Const_IDS["IDS_PK_Exchanging_Tips_5"]) return end MDL.Replay.FairPlayHeroWinRateReq(MDL.FairPlay.FairPlayType.Solo) --和1V1主界面一样,拉胜率协议再开始选将 elseif comp == self.group_1v1.btn_Ready then MDL.CustomRoom.MemberChangeStateReq() elseif comp == self.group_1v1.btn_Start then -- 1v1点击开始 MDL.CustomRoom.CustomRoomEnterBattleReq() elseif comp == self.group_3v3.btn_Start then -- 3V3点击开始 MDL.CustomRoom.CustomRoomEnterBattleReq() elseif comp == self.group_3v3.btn_Ready then MDL.CustomRoom.MemberChangeStateReq() else self:OnClickPlayerHeads(comp) end end function UIPKRoomBase:EnterChooseHero(type) if type ~= MDL.FairPlay.FairPlayType.Solo then return end UIManager.OpenAndPushAll(Const_UI_Lua.UIEnum.UIPKSoloFormationPanel, nil, "FairPlay/BossChallenge/UIBossChallengeFormation") end function UIPKRoomBase:OnValueChanged(comp, index) if comp == self.group_Owner.toggle_Code then self.curCodeToggleState = index -- 是否需要密码 if index == false then UIUtils.SetActive(self.group_Owner.obj_CodeInputField, false) MDL.CustomRoom.ChangeCustomRoomInfoReq(MDL.CustomRoom.SettingOptType.ChangeRoomPassword, nil, nil, false, -1) else UIUtils.SetActive(self.group_Owner.obj_CodeInputField, true) end elseif comp == self.group_Owner.obj_CodeInputField then self.group_Owner.obj_CodeInputField.text = UTL.String.CutStrByLength(index, 6) end end function UIPKRoomBase:OnEndEdit(comp, value) if comp == self.group_Owner.obj_CodeInputField then if not CTL.CustomRoom.IsValidPWD(value) then -- 设置密码失败重置信息 self:UpdateRoomSettingPanel() return end MDL.CustomRoom.ChangeCustomRoomInfoReq(MDL.CustomRoom.SettingOptType.ChangeRoomPassword, nil, nil, true, value) end end function UIPKRoomBase:OnClickPlayerHeads(clickedBtn) local memberDic = MDL.CustomRoom.GetInRoomMemberDic() local pos, meIsReady, online = MDL.CustomRoom.GetMyStateInfo() local group_Collection = self.activityID == LuaConst.ActivityType.SyncSoloPK and self.group_1v1.head_Array or self.group_3v3.head_Array for index, Collection in ipairs(group_Collection) do local playerData = memberDic[index - 1] if clickedBtn == Collection.img_KickOut then -- 踢人 MDL.CustomRoom.KickOutMemberReq(playerData.BriefInfo.ACID) return elseif clickedBtn == Collection.bg_Head_Add then if not MDL.CustomRoom.IsRoomOwner() then return end -- 邀请 UIManager.OpenView(Const_UI_Lua.UIEnum.UIPKInviteInPanel, { activityID = self.activityID }) return elseif clickedBtn == Collection.btn_Change then -- 交换位置逻辑 if not playerData then MDL.CustomRoom.MemberEXPositionReq(index - 1) else if MDL.CustomRoom.IsInExchangeCD() then if #MDL.CustomRoom.InteractingQueue == 0 then -- 交换CD中 CTL.Tips.AddTipsMsg(Const_IDS["IDS_PK_Exchanging_Tips_1"]) else -- 正在交换等待响应中 CTL.Tips.AddTipsMsg(Const_IDS["IDS_PK_Room_Tips_10"]) end return end if meIsReady then -- 自己在准备中 CTL.Tips.AddTipsMsg(Const_IDS["IDS_PK_Exchanging_Tips_2"]) return end if playerData then if playerData.SupplementInfo.CurState == MDL.CustomRoom.MemberState.Ready then CTL.Tips.AddTipsMsg(Const_IDS["IDS_PK_Exchanging_Tips_4"]) return end if playerData.SupplementInfo.Online == false then CTL.Tips.AddTipsMsg(Const_IDS["IDS_PK_Exchanging_Tips_3"]) return end end -- 更换位置 MDL.CustomRoom.MemberEXPositionReq(index - 1) return end elseif clickedBtn == Collection.btn_AddRobot then MDL.CustomRoom.CustomRoomAddRobotReq(self.activityID, MDL.CustomRoom.GetInRoomSetting().RoomID, index - 1) end end end function UIPKRoomBase:RefreshFilterDes(filterLv) UIUtils.SetLabel(self.group_Owner.labLocal_Level, CTL.CustomRoom.GetLevelDescByActivityID(self.activityID, filterLv)) self.filterRankLevel = filterLv self:SetFilterLoopShow(true) self.filterObj:ReloadAll(CTL.CustomRoom.GetPKLimitRankLevelList(self.activityID)) self:SetFilterLoopShow(false) end function UIPKRoomBase:SetFilterLoopShow(isShow) if isShow and self.filterObj.gameObject.activeInHierarchy == false then UIUtils.SetActive(self.group_Owner.img_Arrow01.gameObject, false) UIUtils.SetActive(self.group_Owner.img_Arrow02.gameObject, true) UIUtils.SetActive(self.filterObj, true) else UIUtils.SetActive(self.group_Owner.img_Arrow01.gameObject, true) UIUtils.SetActive(self.group_Owner.img_Arrow02.gameObject, false) UIUtils.SetActive(self.filterObj, false) end end function UIPKRoomBase:OnCellInit(scrollRect, index, cellTable, data) UIUtils.SetLabel(cellTable.txt_Uncheck, data.desc) UIUtils.SetActive(cellTable.img_Selected, self.filterRankLevel == data.level) end function UIPKRoomBase:OnCellSelect(scrollRect, index, cellTable, data) if scrollRect == self.filterObj then MDL.CustomRoom.ChangeCustomRoomInfoReq(MDL.CustomRoom.SettingOptType.ChangeRoomAccessDan, nil, data.level) self:SetFilterLoopShow(false) end end return UIPKRoomBase