diff --git a/Content.Shared/Gravity/SharedGravitySystem.cs b/Content.Shared/Gravity/SharedGravitySystem.cs index 76aa40a6a9..e6696b5263 100644 --- a/Content.Shared/Gravity/SharedGravitySystem.cs +++ b/Content.Shared/Gravity/SharedGravitySystem.cs @@ -23,10 +23,16 @@ namespace Content.Shared.Gravity if (!Resolve(uid, ref xform)) return true; + bool gravityEnabled = false; + // If grid / map has gravity if ((TryComp(xform.GridUid, out var gravity) || TryComp(xform.MapUid, out gravity)) && gravity.Enabled) - return false; + { + gravityEnabled = gravity.Enabled; + + if (gravityEnabled) return false; + } // On the map then always weightless (unless it has gravity comp obv). if (!_mapManager.TryGetGrid(xform.GridUid, out var grid)) @@ -39,7 +45,7 @@ namespace Content.Shared.Gravity return false; } - if (!xform.Coordinates.IsValid(EntityManager)) return true; + if (!gravityEnabled || !xform.Coordinates.IsValid(EntityManager)) return true; var tile = grid.GetTileRef(xform.Coordinates).Tile; return tile.IsEmpty;