using Content.Shared.Construction.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Anomaly.Components; /// /// Anomaly Vessels can have an anomaly "stored" in them /// by interacting on them with an anomaly scanner. Then, /// they generate points for the selected server based on /// the anomaly's stability and severity. /// [RegisterComponent] public sealed class AnomalyVesselComponent : Component { /// /// The anomaly that the vessel is storing. /// Can be null. /// [ViewVariables] public EntityUid? Anomaly; /// /// A multiplier applied to the amount of points generated. /// [ViewVariables(VVAccess.ReadWrite)] public float PointMultiplier = 1; /// /// The machine part that affects the point multiplier of the vessel /// [DataField("machinePartPointModifier", customTypeSerializer: typeof(PrototypeIdSerializer))] public string MachinePartPointModifier = "ScanningModule"; /// /// A value used to scale the point multiplier /// with the corresponding part rating. /// [DataField("partRatingPointModifier")] public float PartRatingPointModifier = 1.5f; }