40 lines
1.2 KiB
Lua
40 lines
1.2 KiB
Lua
|
---@class WBP_SkillSelectButton_C:UUserWidget
|
||
|
---@field Button_UseSkill UButton
|
||
|
---@field Image_0 UImage
|
||
|
--Edit Below--
|
||
|
local WBP_SkillSelectButton = {
|
||
|
bInitDoOnce = false;
|
||
|
SkillId = 0;
|
||
|
|
||
|
};
|
||
|
|
||
|
function WBP_SkillSelectButton:Construct()
|
||
|
self.Button_UseSkill.OnClicked:Add(WBP_SkillSelectButton.OnClickUseSkill, self)
|
||
|
end
|
||
|
|
||
|
-- function WBP_SkillSelectButton:Tick(MyGeometry, InDeltaTime)
|
||
|
|
||
|
-- end
|
||
|
|
||
|
function WBP_SkillSelectButton:Destruct()
|
||
|
self.Button_UseSkill.OnClicked:Remove(WBP_SkillSelectButton.OnClickUseSkill, self)
|
||
|
end
|
||
|
|
||
|
-- 直接在空插槽处应用技能
|
||
|
function WBP_SkillSelectButton:OnClickUseSkill()
|
||
|
print(string.format('[WBP_SkillSelectButton:OnClickUseSkill] 使用技能:%d', self.SkillId))
|
||
|
local PC = GameDataManager.GetLocalPlayerController()
|
||
|
local SkillName = GameDataManager.GetSkillNameById(self.SkillId)
|
||
|
local SkillLevel = GameDataManager.GetSkillLevelById(self.SkillId)
|
||
|
UnrealNetwork.CallUnrealRPC(PC, PC, "ServerRPC_GiveSkill", SkillName, PC:GetNearEmptySlot(), SkillLevel)
|
||
|
|
||
|
-- 关闭 UI
|
||
|
UIManager:ClosePanel(EUIType.UseSkill)
|
||
|
end
|
||
|
|
||
|
function WBP_SkillSelectButton:SetSkillId(InId)
|
||
|
print(string.format('[WBP_SkillSelectButton:SetSkillId] 设置技能ID = %d', InId))
|
||
|
self.SkillId = InId
|
||
|
end
|
||
|
|
||
|
return WBP_SkillSelectButton;
|