using Content.Shared.Movement.Components; using Content.Shared.Movement.Systems; namespace Content.Shared.EntityEffects.Effects; /// /// Multiplies this entity's target eye zoom, ignoring normal zoom limits. /// /// public sealed partial class ScaleEyeZoomEntityEffectSystem : EntityEffectSystem { [Dependency] private SharedContentEyeSystem _contentEye = default!; protected override void Effect(Entity entity, ref EntityEffectEvent args) { _contentEye.SetZoom(entity, entity.Comp.TargetZoom * args.Effect.Factor, true, entity.Comp); } } /// public sealed partial class ScaleEyeZoom : EntityEffectBase { /// /// Multiplier for the current target zoom. Values below one zoom in; must be positive and finite. /// [DataField(required: true)] public float Factor; }