BagItem

--UI_BagItem.lua
local BaseIcon = require "ui.UI_BaseIcon"--基地图标
local UI_BagItem = Inherit(BaseIcon)--背包道具
UI_BagItem:DynamicLoad("/Game/UI/HUD/Bag/BagItem.BagItem")--动态载入
--Event
local OnClicked
--Data
local m_IconWidget	--物品ICON
local m_eItemType	--物品类型
local m_iItemID		--物品ID
local m_iOutTime	--过期时间
local m_sName		--物品名字
local m_bIsEmpty 	--是否是占位用的空物品

function UI_BagItem:Ctor(controller)
	self:BindWidgets()
	self:InitEvent()
end

function UI_BagItem:BindWidgets()--捆绑小工具
	self.UI_IMG_Select = self:Wnd("Image_Select")
	self.UI_BORDER_IconParent = self:Wnd("Border_Icon")--边框图标
	self.UI_LABEL_Name = self:Wnd("TextBlock_Name")
	self.UI_BUTTON_Event = self:Wnd("Button_Event")
	self.UI_IMG_New = self:Wnd("Image_New")
	self.UI_IMG_New:SetVisibility(ESlateVisibility.Collapsed)
	self:Wnd("CanvasPanel_none"):SetVisibility(ESlateVisibility.Hidden)
end

function UI_BagItem:InitEvent()
	self.UI_IMG_Select:SetVisibility(ESlateVisibility.Collapsed)
	self.UI_BUTTON_Event:Event("OnClicked", self.OnClickedEvent, self)
end

function UI_BagItem:OnClickedEvent()	--点击事件
	if self.m_bIsEmpty then return end
	if self.OnClicked then
		self.OnClicked(self)
	end
end

function UI_BagItem:SetWidgetInfo(_ItemType, _ItemID, _OutTime, _ItemCfg)	--设置窗口信息
	if self.m_IconWidget then
		self.m_IconWidget:Destroy()
		self.m_IconWidget = nil
	end
	self.m_bIsEmpty = false
	self.m_eItemType = _ItemType
	self.m_iItemID = _ItemID
	self.m_iOutTime = _OutTime
	self.m_IconWidget = self:InitAllItemIcon(_ItemType, _ItemID, 0)
	self.m_IconWidget:SetUseEvent(false)
	self.m_IconWidget:SetWidgetSize(self.UI_BORDER_IconParent.Slot:GetSize().X)
	self.m_IconWidget:SetQuality(_ItemCfg.ItemQuality)
	UPanelWidget.AddChild(self.UI_BORDER_IconParent, self.m_IconWidget)
	self:SetIsSelect(false)
end

function UI_BagItem:GetItemType()	--获取道具类型
	return self.m_eItemType
end

function UI_BagItem:GetItemID()	--获取道具ID
	return self.m_iItemID
end

function UI_BagItem:GetOutTime()	--获取过期时间
	return self.m_iOutTime
end

function UI_BagItem:GetIconWidget()	--获取窗口图标
	return self.m_IconWidget
end

function UI_BagItem:SetItemName(_ItemName)	--设置道具名字
	self.m_sName = _ItemName
	self.UI_LABEL_Name:SetText(_ItemName)
end

function UI_BagItem:SetIsSelect(_bSelect)	--设置是选中
	if _bSelect then
		self.UI_IMG_Select:SetVisibility(ESlateVisibility.Visible)
	else
		self.UI_IMG_Select:SetVisibility(ESlateVisibility.Collapsed)
	end
end

function UI_BagItem:SetIsNewItem(_bIsNewItem)	--设置是新的道具
	if _bIsNewItem then
		self.UI_IMG_New:SetVisibility(ESlateVisibility.Visible)
	else
		self.UI_IMG_New:SetVisibility(ESlateVisibility.Collapsed)
	end
end

function UI_BagItem:SetIsEmptyItem()	--设置是空的道具
	self.m_bIsEmpty = true
	self:Wnd("CanvasPanel_normal"):SetVisibility(ESlateVisibility.Hidden)
	self:Wnd("CanvasPanel_none"):SetVisibility(ESlateVisibility.SelfHitTestInvisible)
end

function UI_BagItem:DestroyChildren()
	if self.m_IconWidget then
		self.m_IconWidget:Destroy()
		self.m_IconWidget = nil
	end
end

return UI_BagItem

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值