diff --git a/Content.Shared/Mind/SharedMindSystem.cs b/Content.Shared/Mind/SharedMindSystem.cs index 25e644c901..1d6d052f9a 100644 --- a/Content.Shared/Mind/SharedMindSystem.cs +++ b/Content.Shared/Mind/SharedMindSystem.cs @@ -399,7 +399,8 @@ public abstract class SharedMindSystem : EntitySystem EntityUid uid, out EntityUid mindId, [NotNullWhen(true)] out MindComponent? mind, - MindContainerComponent? container = null) + MindContainerComponent? container = null, + VisitingMindComponent? visitingmind = null) { mindId = default; mind = null; @@ -408,7 +409,14 @@ public abstract class SharedMindSystem : EntitySystem return false; if (!container.HasMind) - return false; + { + // The container has no mind. Check for a visiting mind... + if (!Resolve(uid, ref visitingmind, false)) + return false; + + mindId = visitingmind.MindId ?? default; + return TryComp(mindId, out mind); + } mindId = container.Mind ?? default; return TryComp(mindId, out mind);