using UnityEngine; public class TemporaryOutgoingModifierInterceptor : BrokerInterceptor { DamageOutputModifierEffectInstance outgoingModifier; float finalValue; protected override void Awake() { base.Awake(); outgoingModifier = GetComponentInParent(); broker.OnOutgoingDamage.Subscribe(HandleDamageOutgoingModifierEffects, GameConstants.BrokerEventPriority.TemporaryAmplificationMods); } private void HandleDamageOutgoingModifierEffects(DamageArgs args) { finalValue = args.currentValue; if (outgoingModifier.IsActive) { //Debug.Log("Incoming damage b4 mitigation: " + incomingValue); finalValue = outgoingModifier.ModifyDamageOutput(finalValue); args.currentValue = finalValue; } } }