public static void DisableZone() { for (uint num = 0u; num < PrefabCollection <NetInfo> .LoadedCount(); num++) { NetInfo loaded = PrefabCollection <NetInfo> .GetLoaded(num); if (CSURUtil.IsCSUROffset(loaded) || CSURUtil.IsCSURLaneOffset(loaded) || CSURUtil.IsCSURExpress(loaded)) { if (loaded.m_netAI is RoadAI) { var AI = loaded.m_netAI as RoadAI; AI.m_enableZoning = false; } } } for (ushort i = 0; i < Singleton <NetManager> .instance.m_segments.m_size; i++) { NetInfo loaded = Singleton <NetManager> .instance.m_segments.m_buffer[i].Info; var segmentData = Singleton <NetManager> .instance.m_segments.m_buffer[i]; if (CSURUtil.IsCSUROffset(loaded) || CSURUtil.IsCSURLaneOffset(loaded) || CSURUtil.IsCSURExpress(loaded)) { if (segmentData.m_blockEndLeft != 0) { ZoneManager.instance.ReleaseBlock(segmentData.m_blockEndLeft); segmentData.m_blockEndLeft = 0; } if (segmentData.m_blockEndRight != 0) { ZoneManager.instance.ReleaseBlock(segmentData.m_blockEndRight); segmentData.m_blockEndRight = 0; } if (segmentData.m_blockStartLeft != 0) { ZoneManager.instance.ReleaseBlock(segmentData.m_blockStartLeft); segmentData.m_blockStartLeft = 0; } if (segmentData.m_blockStartRight != 0) { ZoneManager.instance.ReleaseBlock(segmentData.m_blockStartRight); segmentData.m_blockStartRight = 0; } } } }