diff --git a/Pathfinding/RegionManager.cs b/Pathfinding/RegionManager.cs index b318958..f82a633 100644 --- a/Pathfinding/RegionManager.cs +++ b/Pathfinding/RegionManager.cs @@ -95,14 +95,13 @@ namespace Pathfinding hasConnectionUsingVehicle = false; foreach (OsmEdge edge in node.edges) { - byte speed = GetSpeedForEdge(node, edge.wayId, vehicle); - if (speed != 0) + if (TestValidConnectionForType(node, edge, vehicle)) hasConnectionUsingVehicle = true; } } double nodeDistance = Utils.DistanceBetween(node, coordinates); - if (nodeDistance < distance && hasConnectionUsingVehicle) + if (hasConnectionUsingVehicle && nodeDistance < distance) { closest = node; distance = nodeDistance; @@ -121,7 +120,7 @@ namespace Pathfinding { case Tag.SpeedType.pedestrian: speed = Tag.defaultSpeedPedestrian[wayType]; - return speed is not 0 ? speed : (byte)0; + return speed; case Tag.SpeedType.car: byte? maxSpeed = (byte?)tags.GetTag(wayId, Tag.TagType.maxspeed); speed = Tag.defaultSpeedCar[wayType];