local GMEspecially = quick_class("GMEspecially", BasePanel) local actRewardConfig = ConfigManager.GetConfig(ConfigName.ActivityRewardConfig) local gameSetting=ConfigManager.GetConfigData(ConfigName.GameSetting,1) local kMaxReward = 5 local index = 0 local cursortingOrder local isFirstOpen = false function GMEspecially:InitComponent() self.spLoader = SpriteLoader.New() cursortingOrder = 0 self.backBtnNew = Util.GetGameObject(self.transform, "BG") self.backBtn = Util.GetGameObject(self.transform, "frame") self.title = Util.GetGameObject(self.backBtn, "bg/title"):GetComponent("Image") self.items = {} self.rewardContent = {} self.rewardContentEffect = {} self.rewardContentbg = {} self.rewardList = {} for i = 1, kMaxReward do self.rewardContent[i] = Util.GetGameObject(self.backBtn, "bg/rewardContent/itemPos_" .. i) self.rewardContentEffect[i] = Util.GetGameObject(self.rewardContent[i], "Kuang") self.rewardContentbg[i] = Util.GetGameObject(self.rewardContent[i], "Image") effectAdapte(self.rewardContentEffect[i]) self.rewardList[i] = SubUIManager.Open(SubUIConfig.ItemView, self.rewardContent[i].transform) end self.dealBtn = Util.GetGameObject(self.backBtn,"bg/dealBtn") self.dealText = Util.GetGameObject(self.dealBtn, "Text"):GetComponent("Text") self.dealText.text="立即体验" self.UI_effect_DailyRechargePanel_particle = Util.GetGameObject(self.transform, "frame/UI_effect_DailyRechargePanel_particle") end function GMEspecially:BindEvent() Util.AddClick(self.dealBtn, function() self:ClosePanel() end) for i = 1, #self.items do Util.AddClick(self.items[i].go, function() if i ~= index then index = i self:RefreshPanel() end end) end end local func=nil function GMEspecially:OnOpen(_func) func=_func --GMEspecially:SetSortingOrder(6300) self.UI_effect_DailyRechargePanel_particle:SetActive(true) end function GMEspecially:AddListener() end function GMEspecially:RemoveListener() end function GMEspecially:OnSortingOrderChange() Util.AddParticleSortLayer( self.UI_effect_DailyRechargePanel_particle, self.sortingOrder - cursortingOrder) for i = 1, #self.rewardContentEffect do Util.AddParticleSortLayer( self.rewardContentEffect[i], self.sortingOrder - cursortingOrder) end cursortingOrder = self.sortingOrder end function GMEspecially:OnShow() self.title.sprite = self.spLoader:LoadSprite("gm_GMEspecially_text_zh") self.title:SetNativeSize() self:RefreshPanel() end function GMEspecially:OnClose() if func then func() end end function GMEspecially:OnDestroy() self.spLoader:Destroy() end function GMEspecially:RefreshPanel() table.walk(self.rewardList, function(rewardPosItem) rewardPosItem.gameObject:SetActive(false) end) table.walk(self.rewardContent, function(rewardPosItem) rewardPosItem.gameObject:SetActive(false) end) table.walk(self.rewardContentbg, function(rewardPosItem) rewardPosItem.gameObject:SetActive(false) end) -- for i, rewardInfo in ipairs(gameSetting.BTBornItemShow) do -- self.rewardContent[i].gameObject:SetActive(true) -- end LogError("#gameSetting.BTBornItemShow=="..#gameSetting.BTBornItemShow) for i = 1, #gameSetting.BTBornItemShow do if self.rewardContent[i] then self.rewardContent[i].gameObject:SetActive(true) end end self.thread = coroutine.start(function() coroutine.wait(0.2) for i, rewardInfo in ipairs(gameSetting.BTBornItemShow) do if self.rewardList[i] then self.rewardList[i]:OnOpen(false, rewardInfo, 1.1,true) self.rewardList[i]:ResetNameColor(Vector4.New(0.298,0.133,0.102,1)) self.rewardList[i]:ResetBtnInteractable(false) self.rewardList[i].gameObject:SetActive(true) self.rewardContentbg[i].gameObject:SetActive(true) end end end) end function GMEspecially:OnDealBtnClicked() end return GMEspecially