31 lines
1015 B
Lua
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; |