| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- local UIFashionComposeCtr = class("UIFashionComposeCtr", require("UICtrBase"))
- function UIFashionComposeCtr:Init(view)
- self.view = view
- end
- function UIFashionComposeCtr:SetData(data)
- self.asyncIdx = 0
- if data == nil then return end
- self.data = data
- -- 初始化数据
- end
- function UIFashionComposeCtr:GetAsyncIdx()
- self.asyncIdx = self.asyncIdx + 1
- return self.asyncIdx
- end
- function UIFashionComposeCtr:GetData()
- return self.data
- end
- function UIFashionComposeCtr:OnDispose()
- self.data = nil
- self.view = nil
- end
- function UIFashionComposeCtr:GetCfgId()
- return self.data.cfgId
- end
- --- 是否能制作时装的错误判断
- ---@return integer 0:可以制作;1:金币不足;2:钻石不足;3:道具不足;4:已拥有
- function UIFashionComposeCtr:GetErrorCode()
- local fashionPaperCfgData = ManagerContainer.CfgMgr:GetFashionPaperById(self:GetCfgId())
- local owned = ManagerContainer.DataMgr.FashionData:Contains(fashionPaperCfgData.FashionId)
- if owned then
- return 4
- end
- local makeMaterial = fashionPaperCfgData.MakeMaterial
- if type(makeMaterial[1]) == 'number' then
- makeMaterial = {makeMaterial}
- end
- local materialCfgId = nil
- local materialNum = nil
- for i = 1, #makeMaterial do
- materialCfgId = makeMaterial[i][1]
- materialNum = makeMaterial[i][2]
- local materialItemCfgData = ManagerContainer.CfgMgr:GetItemById(materialCfgId)
- if materialItemCfgData.ResType == Enum.ItemType.Coin then
- if ManagerContainer.DataMgr.UserData:GetOwnCoin() < materialNum then
- return 1
- end
- elseif materialItemCfgData.ResType == Enum.ItemType.Diamond then
- if ManagerContainer.DataMgr.UserData:GetOwnDiamond() < materialNum then
- return 2
- end
- else
- if ManagerContainer.DataMgr.BagData:GetItemCountByCfgId(materialCfgId) < materialNum then
- return 3
- end
- end
- end
- return 0
- end
- function UIFashionComposeCtr:SendCompose()
- ManagerContainer.NetManager:SendMessage(ProtoMsgId.CS_FASHION_COMPOSE_REQ, {paper_cfg_id = self:GetCfgId()})
- end
- return UIFashionComposeCtr
|