diff --git a/Content.Server/Medical/HealthAnalyzerSystem.cs b/Content.Server/Medical/HealthAnalyzerSystem.cs index c770ad9e58..dadfa433e1 100644 --- a/Content.Server/Medical/HealthAnalyzerSystem.cs +++ b/Content.Server/Medical/HealthAnalyzerSystem.cs @@ -86,11 +86,14 @@ public sealed class HealthAnalyzerSystem : EntitySystem _audio.PlayPvs(uid.Comp.ScanningBeginSound, uid); - _doAfterSystem.TryStartDoAfter(new DoAfterArgs(EntityManager, args.User, uid.Comp.ScanDelay, new HealthAnalyzerDoAfterEvent(), uid, target: args.Target, used: uid) + var doAfterCancelled = !_doAfterSystem.TryStartDoAfter(new DoAfterArgs(EntityManager, args.User, uid.Comp.ScanDelay, new HealthAnalyzerDoAfterEvent(), uid, target: args.Target, used: uid) { NeedHand = true, BreakOnMove = true, }); + + if (args.Target == args.User || doAfterCancelled) + return; var msg = Loc.GetString("health-analyzer-popup-scan-target", ("user", Identity.Entity(args.User, EntityManager))); _popupSystem.PopupEntity(msg, args.Target.Value, args.Target.Value, PopupType.Medium);