diff --git a/Content.Client/Orbit/OrbitVisualsSystem.cs b/Content.Client/Orbit/OrbitVisualsSystem.cs index 2ab144fda2..1c6501c9bc 100644 --- a/Content.Client/Orbit/OrbitVisualsSystem.cs +++ b/Content.Client/Orbit/OrbitVisualsSystem.cs @@ -30,6 +30,12 @@ public sealed class OrbitVisualsSystem : EntitySystem component.OrbitLength = _robustRandom.NextFloat(0.5f * component.OrbitLength, 1.5f * component.OrbitLength); + if (TryComp(uid, out var sprite)) + { + sprite.EnableDirectionOverride = true; + sprite.DirectionOverride = Direction.South; + } + var animationPlayer = EntityManager.EnsureComponent(uid); if (animationPlayer.HasRunningAnimation(_orbitAnimationKey)) return; @@ -44,9 +50,11 @@ public sealed class OrbitVisualsSystem : EntitySystem private void OnComponentRemove(EntityUid uid, OrbitVisualsComponent component, ComponentRemove args) { - if (!TryComp(uid, out var sprite)) + if (!TryComp(uid, out var sprite)) return; + sprite.EnableDirectionOverride = false; + var animationPlayer = EntityManager.EnsureComponent(uid); if (animationPlayer.HasRunningAnimation(_orbitAnimationKey)) { diff --git a/Resources/Prototypes/Entities/Mobs/Player/observer.yml b/Resources/Prototypes/Entities/Mobs/Player/observer.yml index 9a962092b1..84ee0ab7f4 100644 --- a/Resources/Prototypes/Entities/Mobs/Player/observer.yml +++ b/Resources/Prototypes/Entities/Mobs/Player/observer.yml @@ -31,6 +31,7 @@ - type: Ghost - type: GhostRadio - type: Sprite + overrideContainerOcclusion: true # Ghosts always show up regardless of where they're contained. netsync: false noRot: true drawdepth: Ghosts