UGCProjects/SoloKing/Script/Blueprint/UGCPlayerState.lua
2025-01-04 23:00:19 +08:00

67 lines
1.9 KiB
Lua

---@class UGCPlayerState_C:BP_UGCPlayerState_C
--Edit Below--
---@type UGCPlayerState_C
local UGCPlayerState = {};
UGCPlayerState.WeaponInfiniteType = 0;
--function UGCPlayerState:ReceiveBeginPlay()
-- self.SuperClass.ReceiveBeginPlay(self);
--end
--function UGCPlayerState:ReceiveTick(DeltaTime)
-- self.SuperClass.ReceiveTick(self, DeltaTime);
--end
--[[
function UGCPlayerState:ReceiveEndPlay()
self.SuperClass.ReceiveEndPlay(self);
end
--]]
---@param InType EFillBulletType
function UGCPlayerState:SetInfiniteType(InType)
self.WeaponInfiniteType = InType;
end
function UGCPlayerState:GetInfiniteType() return self.WeaponInfiniteType; end
--- 重置击杀数
function UGCPlayerState:ResetKillNum()
-- 重置击杀数
self.Kills = 0;
self.KillPlayerNum = 0;
DOREPONCE(self, "Kills")
DOREPONCE(self, "KillPlayerNum")
end
function UGCPlayerState:ResetGame()
self:ResetKillNum();
end
--- 操作是一旦使用了换装备的按钮,就会调用该函数,之后玩家添加的时候就会使用该配置
---@param InWeapon ASTExtraWeapon
function UGCPlayerState:UpdateWeaponAttachment(Pawn, InWeapon)
-- 获取玩家的缓存
UGCLogSystem.Log("[UGCPlayerState:UpdateWeaponAttachment] 执行")
if ArchiveTable[self.PlayerKey].Weapons == nil then ArchiveTable[self.PlayerKey].Weapons = {}; end
local ItemId = InWeapon:GetWeaponItemID();
local Weapon = UGCWeaponManagerSystem.GetCurrentWeapon(Pawn);
local Parts = ItemTool.GetWeaponParts(Weapon);
ArchiveTable[self.PlayerKey].Weapons[ItemId] = Parts;
end
function UGCPlayerState:SetEnableShovel(IsEnable)
ArchiveTable[self.PlayerKey].PlayerEnableShovel = IsEnable;
end
function UGCPlayerState:OnBestRank(Score)
self.UGCPlayerInfo.MatchRank = Score;
end
--[[
function UGCPlayerState:GetAvailableServerRPCs()
return
end
--]]
return UGCPlayerState;