using Content.Server.Anomaly.Effects; using Robust.Shared.Prototypes; namespace Content.Server.Anomaly.Components; /// /// This component allows the anomaly to inject liquid from the SolutionContainer /// into the surrounding entities with the InjectionSolution component /// [RegisterComponent, Access(typeof(InjectionAnomalySystem))] public sealed partial class InjectionAnomalyComponent : Component { /// /// the maximum amount of injection of a substance into an entity per pulsation /// scales with Severity /// [DataField, ViewVariables(VVAccess.ReadWrite)] public float MaxSolutionInjection = 15; /// /// the maximum amount of injection of a substance into an entity in the supercritical phase /// [DataField, ViewVariables(VVAccess.ReadWrite)] public float SuperCriticalSolutionInjection = 50; /// /// The maximum radius in which the anomaly injects reagents into the surrounding containers. /// [DataField, ViewVariables(VVAccess.ReadWrite)] public float InjectRadius = 3; /// /// The maximum radius in which the anomaly injects reagents into the surrounding containers. /// [DataField, ViewVariables(VVAccess.ReadWrite)] public float SuperCriticalInjectRadius = 15; /// /// The name of the prototype of the special effect that appears above the entities into which the injection was carried out /// [DataField, ViewVariables(VVAccess.ReadOnly)] public EntProtoId VisualEffectPrototype = "PuddleSparkle"; /// /// Solution name that can be drained. /// [DataField, ViewVariables(VVAccess.ReadWrite)] public string Solution { get; set; } = "default"; }