SwallowBagItem = SwallowBagItem or BaseClass(BaseItem)
|
|
function SwallowBagItem:__init(parent_wnd, prefab_asset, layer_name)
|
|
self.base_file = "bag"
|
|
self.layout_file = "BagItem"
|
|
self.is_delay_callback = true
|
|
self.model = BagModel:getInstance()
|
|
|
|
self:Load()
|
|
end
|
|
|
|
function SwallowBagItem:Load_callback()
|
|
self.default_conta = self:GetChild("default_conta").gameObject
|
|
self.equip_conta = self:GetChild("equip_conta")
|
|
self.imgLock = self:GetChild("imgLock").gameObject
|
|
self.touch = self:GetChild("touch").gameObject
|
|
self.imgSelect = self:GetChild("swallow_select").gameObject
|
|
-- self.imgSelect2 = self:GetChild("imgSelect/image").gameObject
|
|
self.icon_item = SwallowBagIconItem.New(self.equip_conta)
|
|
self.icon_item:SetItemSize(82,82)
|
|
self.touch:SetActive(false)
|
|
|
|
-- self.imgSelect2:SetActive(false)
|
|
SetAnchoredPosition(self.default_conta.transform,-0.352,0.991)
|
|
self.default_conta:SetActive(false)
|
|
|
|
if self.need_refreshData then
|
|
self:SetData(self.data,self.index)
|
|
self:UpdateSelect()
|
|
end
|
|
|
|
|
|
|
|
self:InitEvent()
|
|
end
|
|
|
|
function SwallowBagItem:InitEvent()
|
|
local function onClickHandler(target)
|
|
local state = not self.imgSelect.activeSelf
|
|
self:SetSelect(state)
|
|
end
|
|
AddClickEvent(self.touch,onClickHandler)
|
|
end
|
|
|
|
function SwallowBagItem:SetData(data,index)
|
|
self.data = data
|
|
self.index = index
|
|
if self.is_loaded then
|
|
if self.data == nil then
|
|
self:ClearData()
|
|
return
|
|
end
|
|
self.touch:SetActive(true)
|
|
if self.data.goods_num > 0 then
|
|
if self.icon_item then
|
|
self.icon_item:SetVisible(true)
|
|
self.icon_item:SetData(self.data)
|
|
end
|
|
else
|
|
self:ClearData()
|
|
end
|
|
else
|
|
self.need_refreshData = true
|
|
end
|
|
end
|
|
|
|
function SwallowBagItem:SetVoid()
|
|
self:ClearData()
|
|
end
|
|
|
|
function SwallowBagItem:ClearData()
|
|
self.data = nil
|
|
self.default_conta:SetActive(true)
|
|
self.touch:SetActive(false)
|
|
self.imgSelect:SetActive(false)
|
|
if self.icon_item then
|
|
self.icon_item:SetVisible(false, false)
|
|
end
|
|
end
|
|
|
|
function SwallowBagItem:SetSelect(bool)
|
|
if self.data then
|
|
-- if self.data.color >= 3 and bool then
|
|
-- local ok_callback = function()
|
|
-- if self._use_delete_method then return end
|
|
-- if self.is_loaded then
|
|
-- self.imgSelect.gameObject:SetActive(bool)
|
|
-- end
|
|
-- self.model:Fire(BagModel.CLICK_EQUIP_ITEM,self.data.type,self.index,bool)
|
|
-- end
|
|
-- Alert.show("您选中的装备为稀有装备,确定要吞噬吗?", Alert.Type.Two, ok_callback, nil,"确定", "取消")
|
|
-- else
|
|
-- self.imgSelect:SetActive(bool)
|
|
-- self.model:Fire(BagModel.CLICK_EQUIP_ITEM,self.data.type,self.index,bool)
|
|
-- end
|
|
self.imgSelect:SetActive(bool)
|
|
self.model:Fire(BagModel.CLICK_EQUIP_ITEM,self.data.type, self.data.type_id, self.index, bool)
|
|
end
|
|
end
|
|
|
|
function SwallowBagItem:UpdateSelect()
|
|
if self.is_loaded then
|
|
if self.data == nil then
|
|
self.imgSelect:SetActive(false)
|
|
return
|
|
end
|
|
self.imgSelect:SetActive(self.data.isSelect)
|
|
else
|
|
self.need_refreshData = true
|
|
end
|
|
end
|
|
|
|
function SwallowBagItem:__delete()
|
|
if self.icon_item then
|
|
self.icon_item:DeleteMe()
|
|
end
|
|
end
|