local BaseCell = require (GConst.TYPEOF_LUA_CLASS.BASE_CELL) local ResourceCell = class("ResourceCell", BaseCell) function ResourceCell:ctor() end function ResourceCell:init() local uiMap = self:getUIMap() self.resImg = uiMap['currency_cell.res_img'] self.addImg = uiMap['currency_cell.add_img'] self.numTx = uiMap['currency_cell.num_tx'] self.timeTx = uiMap['currency_cell.time_tx'] self.addTx = uiMap["currency_cell.add_tx"] end function ResourceCell:show(itemId, hideAddImg) -- hideAddImg = hideAddImg or false -- self:hide() -- if not itemId then -- return -- end -- self.baseObject:setActive(true) -- self.num = nil -- local obj = DataManager.BagData.ItemData:getItemById(itemId) -- self.resImg:setSprite(obj:getIconRes()) -- self:unBindAll() -- self:bind(obj, "isDirty", function(binder, value) -- self:refreshTextRightNow() -- end) -- self.baseObject:removeClickListener() -- self.timeTx:setVisible(false) -- self.itemId = itemId -- if itemId == GConst.ItemConst.ITEM_ID_GEM then -- self.baseObject:addClickListener(function() -- if ModuleManager:getIsOpen(ModuleManager.MODULE_KEY.SHOP, true) then -- EventManager:dispatchEvent(EventManager.CUSTOM_EVENT.CHANGE_MAIN_CITY_PAGE, {page = 5, storeIdx = 4}) -- end -- end) -- self.addImg:setVisible(not hideAddImg) -- elseif itemId == GConst.ItemConst.ITEM_ID_GOLD then -- if ModuleManager:getIsOpen(ModuleManager.MODULE_KEY.SHOP, true) then -- self.baseObject:addClickListener(function() -- EventManager:dispatchEvent(EventManager.CUSTOM_EVENT.CHANGE_MAIN_CITY_PAGE, {page = 5, storeIdx = 2}) -- end) -- end -- self.addImg:setVisible(not hideAddImg) -- else -- self.addImg:setVisible(not hideAddImg) -- end -- self:refreshCurrencyAddTx(itemId, nil) end function ResourceCell:refreshCurrencyAddTx(itemId, bigNum) -- if self.itemId == itemId then -- if bigNum then -- local obj = DataManager.BagData.ItemData:getItemById(self.itemId) -- if obj:getItemType() == 6 then -- self.addTx:setText("+" .. tostring(BigNumOpt.bigNum2Num(bigNum))) -- else -- self.addTx:setText("+" .. BigNumOpt.bigNum2Str(bigNum)) -- end -- else -- self.addTx:setText(nil) -- end -- end end function ResourceCell:updateTime() if self.itemId then --local curTime = DataManager.BagData:getTimelyItemRecoveryTime(self.itemId) --if curTime <= 0 then -- self.timeTx:setText("") --else -- self.timeTx:setText(GFunc.getTimeStrWithMS(curTime)) --end end end function ResourceCell:hide() self.baseObject:setActive(false) end function ResourceCell:setAnchoredPosition(x, y) self.baseObject:setAnchoredPosition(x, y, 0) end function ResourceCell:getAnchoredPosition() return self.baseObject:getAnchoredPosition() end function ResourceCell:refreshTextRightNow() -- if not self.itemId then -- return -- end -- local obj = DataManager.BagData.ItemData:getItemById(self.itemId) -- local bigNum = obj:getBigNum() -- if bigNum.value < 0 then -- self.numTx:setText(0) -- elseif obj:getItemType() == 6 then -- self.numTx:setText(BigNumOpt.bigNum2Num(bigNum)) -- else -- self.numTx:setText(BigNumOpt.bigNum2Str(bigNum)) -- end end function ResourceCell:refreshText() if self.numTx == nil then return end local text = self.numTx:getComponent(GConst.TYPEOF_UNITY_CLASS.UI_TEXT_MESH_PRO).text self.numTx:setText("") self.numTx:setText(text) end function ResourceCell:doScaleFlyImg() GFunc.doScaleFlyImg(self.resImg) end return ResourceCell