using Content.Shared.Actions.Components; using Content.Shared.EntityEffects; namespace Content.Shared.Actions; /// /// Handles applying entity effects when an entity effect action is performed. /// public sealed partial class EntityEffectActionSystem : EntitySystem { [Dependency] private SharedEntityEffectsSystem _effects = default!; public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnEntityEffectAction); } private void OnEntityEffectAction(Entity ent, ref EntityEffectActionEvent args) { foreach (var effect in ent.Comp.Effects) { if (_effects.TryApplyEffect(args.Target, effect, user: args.Performer)) args.Handled = true; } } }