diff --git a/QSB/EchoesOfTheEye/RaftSync/TransformSync/RaftTransformSync.cs b/QSB/EchoesOfTheEye/RaftSync/TransformSync/RaftTransformSync.cs index f7a3d9ed..8cb1c579 100644 --- a/QSB/EchoesOfTheEye/RaftSync/TransformSync/RaftTransformSync.cs +++ b/QSB/EchoesOfTheEye/RaftSync/TransformSync/RaftTransformSync.cs @@ -11,10 +11,6 @@ namespace QSB.EchoesOfTheEye.RaftSync.TransformSync; public class RaftTransformSync : UnsectoredRigidbodySync, ILinkedNetworkBehaviour { private bool ShouldMovePlayer => - ( - Locator.GetPlayerController().GetGroundBody() == null || - Locator.GetPlayerController().GetGroundBody() == AttachedRigidbody - ) && Vector3.Distance(AttachedTransform.position, Locator.GetPlayerBody().GetPosition()) < 10; protected override bool UseInterpolation => !ShouldMovePlayer; diff --git a/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs b/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs index e59c954d..3a200154 100644 --- a/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs +++ b/QSB/QuantumSync/WorldObjects/QSBQuantumObject.cs @@ -14,9 +14,9 @@ using UnityEngine; namespace QSB.QuantumSync.WorldObjects; /// -/// TODO: just use OnSectorOccupantsUpdated instead of this shape bullshit -/// /// TODO: make it part of the ad-hoc owner interface +/// +/// TODO: make it so only players in the sector (which sector?) are checked for visibility /// internal abstract class QSBQuantumObject : WorldObject, IQSBQuantumObject where T : QuantumObject diff --git a/QSB/ShipSync/TransformSync/ShipTransformSync.cs b/QSB/ShipSync/TransformSync/ShipTransformSync.cs index 5bd46328..70695377 100644 --- a/QSB/ShipSync/TransformSync/ShipTransformSync.cs +++ b/QSB/ShipSync/TransformSync/ShipTransformSync.cs @@ -1,3 +1,5 @@ +using QSB.HUD; +using QSB.Player; using QSB.Syncs.Sectored.Rigidbodies; using QSB.Utility; using UnityEngine; @@ -124,10 +126,7 @@ public class ShipTransformSync : SectoredRigidbodySync private bool ShouldMovePlayer => - ( - Locator.GetPlayerController().GetGroundBody() == null || - Locator.GetPlayerController().GetGroundBody() == AttachedRigidbody - ) && - Vector3.Distance(AttachedTransform.position, Locator.GetPlayerBody().GetPosition()) < 100; + QSBPlayerManager.LocalPlayer.HUDBox.PlanetIcon == HUDIcon.SPACE // huge hack, idc + && Vector3.Distance(AttachedTransform.position, Locator.GetPlayerBody().GetPosition()) < 100; protected override bool UseInterpolation => !ShouldMovePlayer; }