33 lines
1.3 KiB
Lua
33 lines
1.3 KiB
Lua
-- Script.Global.BuffSystem.BuffAction.BuffAction_AddMaxHealth
|
|
local BuffActionBase = require('Script.Global.BuffSystem.BuffActionBase')
|
|
|
|
local BuffAction_AddMaxHealth = setmetatable(
|
|
{
|
|
AddVal = 0
|
|
},
|
|
{ __index = BuffActionBase, __metatable = BuffActionBase }
|
|
);
|
|
|
|
function BuffAction_AddMaxHealth:LuaDoAction()
|
|
BuffActionBase.LuaDoAction(self)
|
|
|
|
if not UGCGameSystem.IsServer() then return true end
|
|
local OwnerPawn = self:GetOwnerPawn()
|
|
if UE.IsValid(OwnerPawn) then
|
|
UGCLogSystem.Log("[BuffAction_AddMaxHealth_LuaDoAction] MaxHealth:%s", tostring(UGCPawnAttrSystem.GetHealthMax(OwnerPawn)))
|
|
UGCPawnAttrSystem.SetHealthMax(OwnerPawn, UGCPawnAttrSystem.GetHealthMax(OwnerPawn) + self.AddVal)
|
|
UGCLogSystem.Log("[BuffAction_AddMaxHealth_LuaDoAction] AddVal:%s, MaxHealth:%s", tostring(self.AddVal), tostring(UGCPawnAttrSystem.GetHealthMax(OwnerPawn)))
|
|
end
|
|
end
|
|
|
|
function BuffAction_AddMaxHealth:LuaUndoAction()
|
|
BuffActionBase.LuaUndoAction(self)
|
|
if not UGCGameSystem.IsServer() then return true end
|
|
UGCLogSystem.Log("[BuffAction_AddMaxHealth_LuaUndoAction]")
|
|
local OwnerPawn = self:GetOwnerPawn()
|
|
if UE.IsValid(OwnerPawn) then
|
|
UGCPawnAttrSystem.SetHealthMax(OwnerPawn, UGCPawnAttrSystem.GetHealthMax(OwnerPawn) - self.AddVal)
|
|
end
|
|
end
|
|
|
|
return BuffAction_AddMaxHealth; |