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) { var logStr = $"释放者:{creatorId} 拥有者:{owner.GetID()} Buff名字:{configData.Name} 护盾增加:{finalAddValue}"; DebugUtil.Log(logStr); } owner.RecoverShield(finalAddValue, true); } } }