local baseCell = autoImport("BaseCell"); RecipeCell = class("RecipeCell", baseCell); autoImport("ItemCell"); autoImport("ItemData"); function RecipeCell:Init() self:InitCell(); self:AddCellClickEvent(); end function RecipeCell:InitCell() local itemGO = self:FindGO("ItemCell"); self.itemCell = ItemCell.new(itemGO); self.itemCell:HideNum() self.name = self:FindComponent("Name", UILabel); self.effect = self:FindComponent("Effect", UILabel); self.chooseSymbol = self:FindGO("ChooseSymbol"); end function RecipeCell:SetData(data) self.data = data; if(data)then self.gameObject:SetActive(true); local sData = data.staticData; if(data.unlock)then local product = sData.Product; local productItem = data:GetProductItem(); if(productItem)then self.itemCell:SetData(productItem); local matchNum = FunctionFood.Me():Match_MakeNum(data.staticData.id); if(matchNum)then if(matchNum > 0)then self.name.text = sData.Name .. string.format("(%s)", matchNum); else self.name.text = sData.Name; end end self.effect.text = productItem:GetFoodEffectDesc(); UIUtil.WrapLabel (self.effect) end else self.itemCell:SetData(nil); self.name.text = "??????"; self.effect.text = "????????"; end self.chooseSymbol:SetActive(sData.id == self.chooseid); else self.gameObject:SetActive(false); end end function RecipeCell:Refresh() self:SetData(self.data); end function RecipeCell:SetChoose(chooseid) self.chooseid = chooseid; if(self.data and self.data.staticData.id == self.chooseid)then self.chooseSymbol:SetActive(true); else self.chooseSymbol:SetActive(false); end end