using Content.Shared._Offbrand.Wounds; using Content.Shared.StatusEffectNew; namespace Content.Shared._Offbrand.StatusEffects; public sealed class PainSuppressionStatusEffectSystem : EntitySystem { [Dependency] private readonly PainSystem _pain = default!; public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnStatusEffectApplied); SubscribeLocalEvent(OnStatusEffectRemoved); SubscribeLocalEvent>(OnPainSuppression); } private void OnPainSuppression(Entity ent, ref StatusEffectRelayedEvent args) { args.Args = args.Args with { Suppressed = true }; } private void OnStatusEffectApplied(Entity ent, ref StatusEffectAppliedEvent args) { _pain.UpdateSuppression(args.Target); } private void OnStatusEffectRemoved(Entity ent, ref StatusEffectRemovedEvent args) { _pain.UpdateSuppression(args.Target); } }