123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- ---@class KLRechargeActivityTwoItem:UIKmlLuaPanelBase
- ---@field view KLRechargeActivityTwoItemView
- local KLRechargeActivityTwoItem = class(UIKmlLuaPanelBase)
- local this =KLRechargeActivityTwoItem
- --限时礼包单个礼包
- ---创建时调用一次
- function this:Init()
- self.canBuy = false
- --道具奖励
- GUI:DataListInitData(self.view.giftDataList,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 = {}
- GUI:Effect_Create(self.view.RedDot,{
- effectid="40001",mpos="-47,-16,0",mscale="0.75,0.8,0.75",mrotate="0,0,0"
- })
- end
- --region 道具奖励列表
- function this:ItemRewardItemCountFunc()
- return #self.allItemRewardData
- end
- function this:ItemRewardItemGetFunc(realIndex)
- local itemId = self.allItemRewardData[realIndex + 1][1]
- local itemCount = self.allItemRewardData[realIndex + 1][2]
- local item = GUI:Item_Create(self.view.giftDataList,{
- width = 60,
- height = 60,
- itemid = itemId,
- --mfixsize = "80,80",
- tips = "1",
- itemcustomcount = itemCount,
- })
- GUI:AddOnClickEvent(item,self,function()
- SL:OpenTips(nil,itemId)
- end)
- self.Item_Reward_all_item[realIndex + 1] = item
- return item.kmlControl
- end
- function this:ItemRewardItemInitFunc(realIndex, kmlcontrol)
- end
- function this:ItemRewardItemUpdateFunc(realIndex, kmlcontrol)
- local itemId = self.allItemRewardData[realIndex + 1][1]
- local itemCount = self.allItemRewardData[realIndex + 1][2]
- local item = self.Item_Reward_all_item[realIndex + 1]
- GUI:Item_setItemId(item,itemId)
- --GUI:Item_setItemCount(item,itemCount)
- GUI:Item_setItemCount(item,tostring(itemCount))
- GUI:AddOnClickEvent(item,self,function()
- SL:OpenTips(nil,itemId)
- end)
- end
- function this:RefreshItemList(gift)
- self.allItemRewardData = gift
- GUI:DataListUpdateData(self.view.giftDataList)
- end
- --endregion 道具奖励列表
- ---注册UI事件和服务器消息
- function this:RegistEvents()
- GUI:AddOnClickEvent(self.view.buyButton, self, self.BuyButtonOnClick)
- end
- function this:BuyButtonOnClick()
- if not self.args.canBuy then
- --SL:TipMessage({ SL:GetConfig('cfg_string', 330).text, 1, NoticeType.NoticeMid })
- SL:TipMessage( "请先解锁上一档礼包",1, NoticeType.NoticeMid)
- return
- end
- SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_BUY_TIME_LIMIT_GIFT ,{id = self.args.giftCfg.id})
- end
- ---创建或者刷新界面数据时调用
- function this:Refresh()
- if self.args then
- --高度
- GUI:Image_loadTexture(self.view.BG,string.format("Texture/img_rechargeBg%d.png",self.args.giftCfg.sort))
- --道具列表
- self:RefreshItemList(self.args.giftCfg.gift)
- --按钮
- if self.args.hasBuy then
- GUI:setVisible(self.view.buyButton,false)
- else
- GUI:setVisible(self.view.buyButton,true)
- if table.count(self.args.giftCfg.cost) == 0 then
- GUI:setVisible(self.view.zuanshi,false)
- GUI:Text_setString(self.view.buyCount,"免费")
- else
- --GUI:Image_loadTexture(self.view.zuanshi,) --TODO:根据道具id显示图标
- GUI:setVisible(self.view.zuanshi,true)
- --GUI:setContentSize(self.view.zuanshi,43,24) --组件自适应偶尔会把宽改成0
- GUI:Text_setString(self.view.buyCount,tostring(self.args.giftCfg.cost[2]))
- end
- if self.args.canBuy then
- GUI:setVisible(self.view.LockUI,false)
- else
- GUI:setVisible(self.view.LockUI,true)
- end
- end
- end
- end
- function this:RefreshItem(args)
- self.args = args
- self:Refresh()
- end
- function this:Close()
- self.canBuy = false
- end
- return this
|