56 lines
1.8 KiB
Lua
56 lines
1.8 KiB
Lua
|
---@class WB_ShowPlayerSelectSoldier_C:UUserWidget
|
|||
|
---@field Image_head UImage
|
|||
|
---@field TextBlock_SoldierName UTextBlock
|
|||
|
---@field WidgetSwitcher_IsSelf UWidgetSwitcher
|
|||
|
--Edit Below--
|
|||
|
---@type WB_ShowPlayerSelectSoldier_C
|
|||
|
local WB_ShowPlayerSelectSoldier = {
|
|||
|
bInitDoOnce = false;
|
|||
|
};
|
|||
|
|
|||
|
--[==[ Construct
|
|||
|
function WB_ShowPlayerSelectSoldier:Construct()
|
|||
|
|
|||
|
end
|
|||
|
-- Construct ]==]
|
|||
|
|
|||
|
-- function WB_ShowPlayerSelectSoldier:Tick(MyGeometry, InDeltaTime)
|
|||
|
|
|||
|
-- end
|
|||
|
|
|||
|
-- function WB_ShowPlayerSelectSoldier:Destruct()
|
|||
|
|
|||
|
-- end
|
|||
|
|
|||
|
function WB_ShowPlayerSelectSoldier:SetTargetPlayer(InPlayerKey)
|
|||
|
self.TargetPlayerKey = InPlayerKey
|
|||
|
--- 延迟设置头像,防止GameState未同步下来
|
|||
|
UGCEventSystem.SetTimerLoop(self, function()
|
|||
|
local HeadIcon = UGCGameSystem.GameState:GetHeadIconByPlayerKey(self.TargetPlayerKey)
|
|||
|
UGCSystemLibrary.DownloadImageToUImage(self.Image_head, HeadIcon);
|
|||
|
end, 1.);
|
|||
|
local TargetSoldierType = UGCGameSystem.GameState:GetSoldierTypeByPlayerKey(self.TargetPlayerKey)
|
|||
|
if TargetSoldierType then
|
|||
|
self.TextBlock_SoldierName:SetText(SoldierConfig.Chinese[TargetSoldierType])
|
|||
|
end
|
|||
|
|
|||
|
if LocalPlayerKey == nil then
|
|||
|
return;
|
|||
|
end
|
|||
|
|
|||
|
if LocalPlayerKey == InPlayerKey then
|
|||
|
self.WidgetSwitcher_IsSelf:SetActiveWidgetIndex(1)
|
|||
|
else
|
|||
|
self.WidgetSwitcher_IsSelf:SetActiveWidgetIndex(0)
|
|||
|
end
|
|||
|
UGCEventSystem.AddListener(EventTypes.SelectSoldierType, self.UpdatePlayerSoldierType, self);
|
|||
|
end
|
|||
|
|
|||
|
function WB_ShowPlayerSelectSoldier:UpdatePlayerSoldierType(PlayerSoldierType)
|
|||
|
local TargetSoldierType = PlayerSoldierType[self.TargetPlayerKey]
|
|||
|
if TargetSoldierType then
|
|||
|
self.TextBlock_SoldierName:SetText(SoldierConfig.Chinese[TargetSoldierType])
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
return WB_ShowPlayerSelectSoldier;
|