2025-01-04 23:00:19 +08:00

62 lines
1.5 KiB
Lua

---@class BP_ArmorItem_C:BP_CustomItemBase_C
---@field ParticleSystem UParticleSystemComponent
---@field StaticMesh UStaticMeshComponent
--Edit Below--
local ItemBase = require('Script.Blueprint/SceneObj/PickUp/BP_CustomItemBase')
---@type BP_BuffItem_C
local BP_ArmorItem = ItemBase:new(DefaultSettings.SceneObj.Armor);
function BP_ArmorItem:ReceiveBeginPlay()
self:LuaInit();
end
function BP_ArmorItem:OnPlayerAddItem(InPawn)
-- 移除所有的护甲
ItemTool.ReplaceItem(InPawn, self.ItemId);
self:OnItemUsed(InPawn);
end
function BP_ArmorItem:RandomNewItem()
self:SetItemId(GameState:LoadResource().ArmorItem_ItemIds[math.random(GameState:LoadResource().ArmorItem_ItemTotalCount)])
end
function BP_ArmorItem:OnRep_ItemId()
if self:IsItemIdValid() then
local Path = ItemTable.AllItem[self:GetItemId()].StaticMesh;
if Path then
UE.AsyncLoadObject(Path, function(TargetObject) self.StaticMesh:SetStaticMesh(TargetObject); end)
else
self.StaticMesh:SetStaticMesh(nil);
end
else
self.StaticMesh:SetStaticMesh(nil);
end
self:HandleEffect(self.ParticleSystem, "SceneObj_Armor");
end
--[[
function BP_ArmorItem:ReceiveTick(DeltaTime)
self.SuperClass.ReceiveTick(self, DeltaTime);
end
--]]
--[[
function BP_ArmorItem:ReceiveEndPlay()
self.SuperClass.ReceiveEndPlay(self);
end
--]]
--[[
function BP_ArmorItem:GetReplicatedProperties()
return
end
--]]
--[[
function BP_ArmorItem:GetAvailableServerRPCs()
return
end
--]]
return BP_ArmorItem;