local UIWjBattleBuffViewView = require("UIClimbingTower/UIWjBattleBuffViewView_Generate") function UIWjBattleBuffViewView:OnAwake(data) self.controller = require("UIClimbingTower/UIWjBattleBuffViewCtr"):new() self.controller:Init(self) self.controller:SetData(data) end function UIWjBattleBuffViewView:AddEventListener() ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name) ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name,UIEventNames.WJ_ON_BATTLE_CHANGE,self,self.SetItems) end function UIWjBattleBuffViewView:FillContent(data, uiBase) self.uiBase = uiBase local gameObject = self.uiBase:GetRoot() if gameObject ~= nil then self.gameObject = gameObject self.transform = gameObject.transform end self:InitGenerate(self.transform, data) self:Init() end function UIWjBattleBuffViewView:Init() self:SetItems() end function UIWjBattleBuffViewView:RemoveEventListener() ManagerContainer.LuaEventMgr:Unregister(self.uiData.name) end function UIWjBattleBuffViewView:AddUIEventListener() self.uiBase:AddButtonEventListener(self.BtnClose.button,self,self.OnClickClose) self.uiBase:AddButtonEventListener(self.btnBack.button,self,self.OnClickClose) end function UIWjBattleBuffViewView:OnHide() end function UIWjBattleBuffViewView:OnShow(data) self.controller:SetData(data) end function UIWjBattleBuffViewView:OnClose() end function UIWjBattleBuffViewView:OnDispose() self.controller:OnDispose() end function UIWjBattleBuffViewView:SetItems() local buffinfos = ManagerContainer.DataMgr.TowerDataMgr:GetCurAllBattleBuffInfo() local datalist = buffinfos.infos self.scrollView.loopHorizontalScrollRect:ClearCells() CommonUtil.LoopGridViewEleCreateNew(self, self.scrollView.loopHorizontalScrollRect, self.content.horizontalLayoutGroup, datalist, 0, self, self.UpdateItem, nil,nil,0); end function UIWjBattleBuffViewView:UpdateItem(_itemLua, _idx,_data) if not _itemLua or not _data then return end --_itemLua.gameObject:SetParent(wnd.content.transform) CommonUtil.UpdateItemPrefab(self, _itemLua, _data, Enum.ItemIEnterType.Bag,self,self.OnClickBattleBuffBtn) end function UIWjBattleBuffViewView:OnClickBattleBuffBtn(btn,data) local curdata = data[0] local itemCfgData = ManagerContainer.CfgMgr:GetItemById(curdata.cost[1]) local param = {} param[1] = I18N.T(itemCfgData.Name) param[2] = curdata.cost[2] param[3] = I18N.T('WjBattleType'..curdata.id) local tipData = {'WjBattleBuffBuy',param,curdata,self,self.BuyBattleBuf} ManagerContainer.LuaUIMgr:Open(Enum.UIPageName.UINoticeTips, tipData) end function UIWjBattleBuffViewView:OnClickClose() self:UIClose() end function UIWjBattleBuffViewView:BuyBattleBuf(data) --ManagerContainer.DataMgr.TowerDataMgr:SetCurBattleBuffInfo(data.id,data.curLv + 1) local buffs = self:CreatBuff({data.id}) ManagerContainer.DataMgr.TowerDataMgr:SendWjBuffReq(buffs) end function UIWjBattleBuffViewView:CreatBuff(ids) local buffs ={} for i = 1, 3, 1 do local isup = false for j = 1, #ids, 1 do if ids[j] == i then isup = true end end if isup then buffs['buff'..i] = 1 else buffs['buff'..i] = 0 end end --LogError(Inspect(buffs)) return buffs end return UIWjBattleBuffViewView