123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- ---@class KLUILifetimeGiftPanel:UIKmlLuaPanelBase
- ---@field view KLUILifetimeGiftPanelView
- local KLUILifetimeGiftPanel = class(UIKmlLuaPanelBase)
- local this =KLUILifetimeGiftPanel
- --终身礼包
- ---创建时调用一次
- function this:Init()
- --礼包列表
- GUI:DataListInitData(self.view.RewardContent,function()
- return self:ItemRewardItemCountFunc()
- end,function(realIndex)
- return self:ItemRewardItemGetFunc(realIndex)
- end,function(realIndex, kmlcontrol)
- return self:ItemRewardItemInitFunc(realIndex, kmlcontrol)
- end, function(realIndex, kmlcontrol)
- return self:ItemRewardItemUpdateFunc(realIndex, kmlcontrol)
- end)
- self.Item_Reward_all_item = {}
- end
- --region 礼包列表
- function this:ItemRewardItemCountFunc()
- return #self.allRewardData
- end
- function this:ItemRewardItemGetFunc(realIndex)
- local cfgData = self.allRewardData[realIndex + 1]
- local item = GUI:UIPanel_Open("dev/outui/LifetimeGift/Item/KLUILifetimeGiftPackage/KLUILifetimeGiftPackageItem",self.view.RewardContent,self,cfgData,true)
- self.Item_Reward_all_item[realIndex + 1] = item
- return item.view.root
- end
- function this:ItemRewardItemInitFunc(realIndex, kmlcontrol)
- end
- function this:ItemRewardItemUpdateFunc(realIndex, kmlcontrol)
- local cfgData = self.allRewardData[realIndex + 1]
- self.Item_Reward_all_item[realIndex + 1]:RefreshItem(cfgData)
- end
- function this:RefreshGiftList()
- self.allRewardData = {}
- for i,idStr in pairs(self.rechargeIds) do
- local id = tonumber(idStr)
- local cfg = SL:GetConfig("cfg_recharge",id,"id")
- if cfg then
- local subCfg = SL:GetConfig("cfg_Lifetimegiftbag",cfg.parameter,"id")
- if subCfg and ConditionManager.Check4D(subCfg.condition) then
- local data = {}
- data.rechargeCfg = cfg
- data.lifetimeCfg = subCfg
- table.insert(self.allRewardData,data)
- end
- end
- end
- table.sort(self.allRewardData,function(a, b)
- return a.lifetimeCfg.sortId < b.lifetimeCfg.sortId
- end)
- GUI:DataListUpdateData(self.view.RewardContent)
- end
- --endregion 礼包列表
- ---注册UI事件和服务器消息
- function this:RegistEvents()
- SL:RegisterLuaNetMsg(LuaMessageIdToClient.RES_RECHARGE_ACTION,self.ResRecharge,self)
- SL:RegisterLUAEvent(LUA_EVENT_LIFETIME_GIFT_COUNT_RECHARGE_CHANGE, self.LUA_EVENT_LIFETIME_GIFT_COUNT_RECHARGE_CHANGE, self)
- end
- function this:ResRecharge(id, message)
- if not message or not message.type or message.type ~= "7" then
- return
- end
- self.rechargeIds = message.data
- self:RefreshGiftList()
- end
- function this:LUA_EVENT_LIFETIME_GIFT_COUNT_RECHARGE_CHANGE()
- self:RefreshGiftList()
- end
- ---创建或者刷新界面数据时调用
- function this:Refresh()
- SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_RECHARGE_ACTION,{type="7",action="panel"})
- end
- function this:Close()
- SL:UnRegisterLuaNetMsg(LuaMessageIdToClient.RES_RECHARGE_ACTION,self.ResRecharge,self)
- self.rechargeIds = nil
- end
- return this
|