namespace Gameplay.Buff { using UnityEngine; public class AddShieldBuff: BaseBuff { protected override void _OnTrigger() { base._OnTrigger(); var sender = creator; var senderAttack = sender.fightData.attack; var senderHp = sender.aliveData.maxHp; var addValueA = _TryGetFloatParam(0); var addValueB = _TryGetFloatParam(1); var addValueC = _TryGetFloatParam(2); var finalAddValue = Mathf.CeilToInt(addValueA + senderAttack * addValueB + senderHp * addValueC); if (DebugUtil.LogEnable) { DebugUtil.Log("恢复护盾:{0}", finalAddValue); } owner.RecoverShield(finalAddValue, true); } } }