73 lines
1.9 KiB
Lua
73 lines
1.9 KiB
Lua
local ItemCell = class("ItemCell", BaseCell)
|
|
|
|
function ItemCell:init()
|
|
local uiMap = self:getUIMap()
|
|
self.icon = uiMap["item_cell.icon"]
|
|
self.num = uiMap["item_cell.num"]
|
|
self.bg = uiMap["item_cell.bg"]
|
|
self.mask = uiMap["item_cell.mask"]
|
|
self.check = uiMap["item_cell.check"]
|
|
self.fragment =uiMap["item_cell.fragment"]
|
|
end
|
|
|
|
function ItemCell:refresh(entity)
|
|
self:_refresh(entity:getId(), entity:getCount())
|
|
end
|
|
|
|
function ItemCell:refreshByCfg(id, count)
|
|
self:_refresh(id, count)
|
|
end
|
|
|
|
function ItemCell:_refresh(itemId, count)
|
|
local cfg = ConfigManager:getConfig("item")[itemId]
|
|
self.bg:setSprite(GConst.ATLAS_PATH.ICON_ITEM, GConst.FRAME_QLT[cfg.qlt])
|
|
self.num:setText(GFunc.num2Str(count))
|
|
if cfg.type == GConst.ItemConst.ITEM_TYPE.HERO_FRAGMENT then
|
|
local heroInfo = ConfigManager:getConfig("hero")[cfg.parameter]
|
|
if heroInfo then
|
|
self.icon:setLocalScale(0.86, 0.86, 0.86)
|
|
self.icon:setSprite(GConst.ATLAS_PATH.ICON_HERO, heroInfo.icon)
|
|
else
|
|
self.icon:setSprite(GConst.ATLAS_PATH.COMMON, "common_alpha")
|
|
end
|
|
self.fragment:setVisible(true)
|
|
else
|
|
self.icon:setLocalScale(1, 1, 1)
|
|
self.icon:setSprite(GConst.ATLAS_PATH.ICON_ITEM, cfg.icon)
|
|
self.fragment:setVisible(false)
|
|
end
|
|
self.mask:setVisible(false)
|
|
self.check:setVisible(false)
|
|
end
|
|
|
|
function ItemCell:setTouchEnable(enable)
|
|
self:getBaseObject():setTouchEnable(enable == true)
|
|
end
|
|
|
|
function ItemCell:addClickListener(func)
|
|
self:getBaseObject():addClickListener(func)
|
|
end
|
|
|
|
function ItemCell:showMask(showMask)
|
|
local uiMap = self:getUIMap()
|
|
local mask = uiMap["item_cell.mask"]
|
|
mask:setVisible(showMask == true)
|
|
end
|
|
|
|
function ItemCell:showCheck(showCheck)
|
|
local uiMap = self:getUIMap()
|
|
local check = uiMap["item_cell.check"]
|
|
check:setVisible(showCheck == true)
|
|
end
|
|
|
|
function ItemCell:showLock(showLock)
|
|
end
|
|
|
|
function ItemCell:setNum(numStr)
|
|
local uiMap = self:getUIMap()
|
|
local num = uiMap["item_cell.num"]
|
|
num:setText(numStr)
|
|
end
|
|
|
|
return ItemCell
|