UGCProjects/SoloKing/Script/UI/Tool/WB_DamageTextButton.lua
2025-01-04 23:00:19 +08:00

48 lines
1.3 KiB
Lua

---@class WB_DamageTextButton_C:UUserWidget
---@field NewButton_Shovel UNewButton
---@field WidgetSwitcher_ChangeShovel UWidgetSwitcher
--Edit Below--
---@type WB_DamageTextButton_C
local WB_DamageTextButton = { bInitDoOnce = false }
function WB_DamageTextButton:Construct()
self:LuaInit();
end
function WB_DamageTextButton:LuaInit()
if self.bInitDoOnce then return ; end
self.bInitDoOnce = true;
UITool.BindButtonClicked(self.NewButton_Shovel, self.OnClickButton, self)
UGCEventSystem.AddListener(EventTypes.UpdateEnableDamageText, self.OnUpdateDamageText, self)
self:OnUpdateDamageText(LocalPlayerController.EnableDamageText);
end
function WB_DamageTextButton:OnUpdateDamageText(IsEnable)
self.EnableDamageText = IsEnable;
self:SetEnableDamageText(self.EnableDamageText);
end
WB_DamageTextButton.EnableDamageText = true;
function WB_DamageTextButton:OnClickButton()
self.EnableDamageText = not self.EnableDamageText;
self:SetEnableDamageText(self.EnableDamageText);
end
function WB_DamageTextButton:SetEnableDamageText(IsEnable)
self.WidgetSwitcher_ChangeShovel:SetActiveWidgetIndex(IsEnable and 1 or 0);
-- 发送 RPC
LocalPlayerController:SetEnableDamageText(IsEnable);
end
-- function WB_DamageTextButton:Tick(MyGeometry, InDeltaTime)
-- end
-- function WB_DamageTextButton:Destruct()
-- end
return WB_DamageTextButton