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

31 lines
1015 B
Lua

local BuffActionBase = require('Script.Global.BuffSystem.BuffActionBase')
local BuffAction_DefenseScale = setmetatable(
{
DefenseScale = 1;
},
{ __index = BuffActionBase, __metatable = BuffActionBase }
);
function BuffAction_DefenseScale:LuaDoAction()
BuffActionBase.LuaDoAction(self)
if not UGCGameSystem.IsServer() then return true end
UGCLogSystem.Log("[BuffAction_DefenseScale_LuaDoAction]")
local OwnerPawn = self:GetOwnerPawn()
if UE.IsValid(OwnerPawn) then
OwnerPawn:SetDefenseScale(OwnerPawn:GetDefenseScale() * self.DefenseScale)
end
end
function BuffAction_DefenseScale:LuaUndoAction()
BuffActionBase.LuaUndoAction(self)
if not UGCGameSystem.IsServer() then return true end
UGCLogSystem.Log("[BuffAction_DefenseScale_LuaUndoAction]")
local OwnerPawn = self:GetOwnerPawn()
if UE.IsValid(OwnerPawn) then
OwnerPawn:SetDefenseScale(OwnerPawn:GetDefenseScale() / self.DefenseScale)
end
end
return BuffAction_DefenseScale;