require("Base/BasePanel") TenRecruitPanel = Inherit(BasePanel) local this = TenRecruitPanel local cardList = {} local orginLayer local gameSetting=ConfigManager.GetConfig(ConfigName.GameSetting) local lotterySetting=ConfigManager.GetConfig(ConfigName.LotterySetting) local itemConfig=ConfigManager.GetConfig(ConfigName.ItemConfig) local artResourcesConfig =ConfigManager.GetConfig(ConfigName.ArtResourcesConfig) local privilegeConfig=ConfigManager.GetConfig(ConfigName.PrivilegeTypeConfig) local type --抽卡类型 local maxTimesId--特权id上限(今日召唤上限) --初始化组件(用于子类重写) function TenRecruitPanel:InitComponent() orginLayer = 0 this.sureBtn = Util.GetGameObject(self.transform, "sureBtn") this.againBtn = Util.GetGameObject(self.transform, "againBtn") this.againIcon=Util.GetGameObject(self.transform,"Tip/juan"):GetComponent("Image") this.againNum=Util.GetGameObject(self.transform,"Tip/Text"):GetComponent("Text") this.cardPre = Util.GetGameObject(self.transform, "card") this.grid = Util.GetGameObject(self.transform, "scroll/grid") self.effect = Util.GetGameObject(self.gameObject, "bg/effect") for i = 1, 10 do cardList[i] = SubUIManager.Open(SubUIConfig.RoleItemView, this.grid.transform) end end --绑定事件(用于子类重写) function TenRecruitPanel:BindEvent() Util.AddClick(self.sureBtn, function() -- UIManager.OpenPanel(UIName.RecruitPanel) self:ClosePanel() end) Util.AddClick(self.againBtn, function() local d=RecruitManager.GetExpendData(type) if BagManager.GetItemCountById(d[1])privilegeConfig[maxTimesId].Condition[1][2] then PopupTipPanel.ShowTip("无法超出每日召唤次数上限!") return end RecruitManager.RecruitRequest(type, function(msg) PrivilegeManager.RefreshPrivilegeUsedTimes(maxTimesId,10) UIManager.OpenPanel(UIName.SingleRecruitPanel, msg.drop.Hero, type,2) end) end) end --添加事件监听(用于子类重写) function TenRecruitPanel:AddListener() end --移除事件监听(用于子类重写) function TenRecruitPanel:RemoveListener() end function TenRecruitPanel:OnSortingOrderChange() Util.AddParticleSortLayer(self.effect, self.sortingOrder - orginLayer) orginLayer = self.sortingOrder for i = 1, #cardList do cardList[i]:SetEffectLayer(self.sortingOrder) end end --界面打开时调用(用于子类重写) function TenRecruitPanel:OnOpen(...) local data = { ... } local _roleDatas = data[1] type=data[2] for i = 1, #_roleDatas do cardList[i]:OnOpen(_roleDatas[i].id,false,false,-1,self.sortingOrder) local heorConfig = ConfigManager.GetConfigData(ConfigName.HeroConfig,_roleDatas[i].heroId) if heorConfig and heorConfig.Quality == 5 and heorConfig.Natural >= 13 then HeroManager.DetectionOpenFiveStarActivity(heorConfig.Star) end end local d=RecruitManager.GetExpendData(type) this.againIcon.sprite=Util.LoadSprite(artResourcesConfig[itemConfig[d[1]].ResourceID].Name) this.againNum.text="×"..d[2] maxTimesId=lotterySetting[1].MaxTimes --特权上限ID end --界面关闭时调用(用于子类重写) function TenRecruitPanel:OnClose() end --界面销毁时调用(用于子类重写) function TenRecruitPanel:OnDestroy() end return TenRecruitPanel