}
}
- public bool CanFTL(EntityUid? uid, [NotNullWhen(false)] out string? reason, TransformComponent? xform = null)
+ public bool CanFTL(EntityUid? uid, [NotNullWhen(false)] out string? reason)
{
if (HasComp<PreventPilotComponent>(uid))
{
}
reason = null;
-
- if (!TryComp<MapGridComponent>(uid, out var grid) ||
- !Resolve(uid.Value, ref xform))
- {
- return true;
- }
-
- var bounds = _transform.GetWorldMatrix(xform).TransformBox(grid.LocalAABB).Enlarged(ShuttleFTLRange);
- var bodyQuery = GetEntityQuery<PhysicsComponent>();
-
- foreach (var other in _mapManager.FindGridsIntersecting(xform.MapID, bounds))
- {
- if (uid == other.Owner ||
- !bodyQuery.TryGetComponent(other.Owner, out var body) ||
- body.Mass < ShuttleFTLMassThreshold)
- {
- continue;
- }
-
- reason = Loc.GetString("shuttle-console-proximity");
- return false;
- }
-
return true;
}