82 lines
2.1 KiB
Lua
Raw Normal View History

2025-01-04 23:00:19 +08:00
---@class WB_BuffSelectItem_C:UUserWidget
---@field CanvasPanel_IsUpLevel UCanvasPanel
---@field Image_3 UImage
---@field Image_BuffIcon UImage
---@field NewButton_BuffSelect UNewButton
---@field TextBlock_Name UTextBlock
--Edit Below--
local WB_BuffSelectItem = { bInitDoOnce = false; };
--[==[ Construct
function WB_BuffSelectItem:Construct()
end
-- Construct ]==]
-- function WB_BuffSelectItem:Tick(MyGeometry, InDeltaTime)
-- end
-- function WB_BuffSelectItem:Destruct()
-- end
function WB_BuffSelectItem:LuaInit()
if self.bInitDoOnce then
return;
end
self.bInitDoOnce = true;
WidgetLibrary.BindButtonClicked(self.NewButton_BuffSelect, self.ClickSelect, self)
end
function WB_BuffSelectItem:UpdateIncreaseType(InIncreaseType)
self:LuaInit()
--UGCLogSystem.Log("[WB_BuffSelectItem_UpdateIncreaseType]")
local PC = UGCSystemLibrary.GetLocalPlayerController()
-- 判断是否为升级
if PC:GetOwnedIncreaseLevel(InIncreaseType) > 0 then
self.CanvasPanel_IsUpLevel:SetVisibility(ESlateVisibility.HitTestInvisible)
else
self.CanvasPanel_IsUpLevel:SetVisibility(ESlateVisibility.Collapsed)
end
-- 设置名字
self.TextBlock_Name:SetText(tostring(GodOfWarConfig.IncreaseName[InIncreaseType]))
-- 设置图案
UGCSystemLibrary.AsyncLoadAsset(GodOfWarConfig.IncreaseIcon[InIncreaseType],
function(InTex)
if UE.IsValid(InTex) then
self.Image_BuffIcon:SetBrushFromTexture(InTex, false)
end
end,
nil,
true
)
end
function WB_BuffSelectItem:ClickSelect()
-- UGCLogSystem.Log("[WB_BuffSelectItem_ClickSelect]")
if self.SelectCallBackFunc then
if self.SelectCallBackObj then
self.SelectCallBackFunc(self.SelectCallBackObj, self:GetIndex())
else
self.SelectCallBackFunc(self:GetIndex())
end
end
end
function WB_BuffSelectItem:BindClickSelect(Func, Obj)
self.SelectCallBackFunc = Func
self.SelectCallBackObj = Obj
end
function WB_BuffSelectItem:SetIndex(InIndex)
self.Index = InIndex
end
function WB_BuffSelectItem:GetIndex()
return self.Index
end
return WB_BuffSelectItem;