/* We change the road mode according to Fine Road Tool */ private static NetInfo FineRoadToolSelection(NetInfo prefab) { RoadAI roadAI = prefab.m_netAI as RoadAI; if (roadAI != null) { // If the user has manually selected underground/overground mode, we let it be if (!roadAI.IsUnderground() && !roadAI.IsOverground()) { switch (FineRoadTool.FineRoadTool.instance.mode) { case FineRoadTool.Mode.Ground: return(roadAI.m_info); case FineRoadTool.Mode.Elevated: case FineRoadTool.Mode.Bridge: if (roadAI.m_elevatedInfo != null) { return(roadAI.m_elevatedInfo); } break; case FineRoadTool.Mode.Tunnel: if (roadAI.m_tunnelInfo != null) { return(roadAI.m_tunnelInfo); } break; case FineRoadTool.Mode.Normal: case FineRoadTool.Mode.Single: break; } } } PedestrianPathAI pedestrianAI = prefab.m_netAI as PedestrianPathAI; if (pedestrianAI != null) { // If the user has manually selected underground/overground mode, we let it be if (!pedestrianAI.IsUnderground() && !pedestrianAI.IsOverground()) { switch (FineRoadTool.FineRoadTool.instance.mode) { case FineRoadTool.Mode.Ground: return(pedestrianAI.m_info); case FineRoadTool.Mode.Elevated: case FineRoadTool.Mode.Bridge: if (pedestrianAI.m_elevatedInfo != null) { return(pedestrianAI.m_elevatedInfo); } break; case FineRoadTool.Mode.Tunnel: if (pedestrianAI.m_tunnelInfo != null) { return(pedestrianAI.m_tunnelInfo); } break; case FineRoadTool.Mode.Normal: case FineRoadTool.Mode.Single: break; } } } return(prefab); }