64 lines
1.7 KiB
Lua
64 lines
1.7 KiB
Lua
|
---@class WBP_DragItemVisual_C:UUserWidget
|
|||
|
---@field CanvasPanel_Images UCanvasPanel
|
|||
|
---@field Image_Icon UImage
|
|||
|
---@field WidgetSwitcher_BG UWidgetSwitcher
|
|||
|
--Edit Below--
|
|||
|
local WBP_DragItemVisual = {
|
|||
|
bInitDoOnce = false;
|
|||
|
bHasInit = false
|
|||
|
};
|
|||
|
|
|||
|
function WBP_DragItemVisual:Construct()
|
|||
|
WBP_DragItemVisual.SuperClass:Construct()
|
|||
|
self.bHasInit = true
|
|||
|
self.Image_Icon:SetVisibility(ESlateVisibility.SelfHitTestInvisible)
|
|||
|
end
|
|||
|
|
|||
|
-- function WBP_DragItemVisual:Tick(MyGeometry, InDeltaTime)
|
|||
|
|
|||
|
-- end
|
|||
|
|
|||
|
-- function WBP_DragItemVisual:Destruct()
|
|||
|
|
|||
|
-- end
|
|||
|
|
|||
|
-- 这个数据只会是一个 Id,一个 Count
|
|||
|
function WBP_DragItemVisual:SetVisualItemData(InData, InBrush)
|
|||
|
if self == nil then
|
|||
|
print("此时还未创建,说明有问题")
|
|||
|
else
|
|||
|
print("此时已经创建")
|
|||
|
end
|
|||
|
if not self.bHasInit then
|
|||
|
return
|
|||
|
end
|
|||
|
--让数据为空的不要进行拖拽
|
|||
|
if InData == nil then
|
|||
|
self:SetVisibility(ESlateVisibility.Collapsed)
|
|||
|
return
|
|||
|
end
|
|||
|
|
|||
|
print(string.format("实现了 OnDragDetected 方法"))
|
|||
|
print(string.format("[WBP_FittingDragVisual:SetVisualItemData] 获取 ItemData 里面的数据:Id:%d, Count: %d", InData.ItemID, InData.ItemCount))
|
|||
|
-- 通过表查找对应的图片并加载
|
|||
|
local Icon = nil
|
|||
|
if GameDataManager ~= nil then
|
|||
|
Icon = GameDataManager.GetItemInfoByItemID(InData.ItemID).Icon
|
|||
|
end
|
|||
|
|
|||
|
self:SetItemBGColor(GetItemQualityLevel(InData.ItemID))
|
|||
|
if Icon ~= nil then
|
|||
|
print("Icon 是有值的")
|
|||
|
UIManager.LoadTexture(self.Image_Icon, Icon)
|
|||
|
self.Image_Icon:SetVisibility(ESlateVisibility.SelfHitTestInvisible)
|
|||
|
else
|
|||
|
print("Icon 为空~")
|
|||
|
self.Image_Icon:SetVisibility(ESlateVisibility.SelfHitTestInvisible)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function WBP_DragItemVisual:SetItemBGColor(InLevel)
|
|||
|
self.WidgetSwitcher_BG:SetActiveWidgetIndex(InLevel)
|
|||
|
end
|
|||
|
|
|||
|
return WBP_DragItemVisual;
|