using Content.Server.UserInterface; using Content.Shared.Disease; using Content.Shared.MedicalScanner; using Robust.Server.GameObjects; using Robust.Shared.Audio; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Medical.Components { /// /// After scanning, retrieves the target Uid to use with its related UI. /// [RegisterComponent] public sealed class HealthAnalyzerComponent : Component { /// /// How long it takes to scan someone. /// [DataField("scanDelay")] public float ScanDelay = 0.8f; public BoundUserInterface? UserInterface => Owner.GetUIOrNull(HealthAnalyzerUiKey.Key); /// /// Sound played on scanning begin /// [DataField("scanningBeginSound")] public SoundSpecifier? ScanningBeginSound; /// /// Sound played on scanning end /// [DataField("scanningEndSound")] public SoundSpecifier? ScanningEndSound; /// /// The disease this will give people. /// [DataField("disease", customTypeSerializer: typeof(PrototypeIdSerializer))] [ViewVariables(VVAccess.ReadWrite)] public string? Disease; } }