protected override IEnumerator DoExport() { List <AreaSpawner> areaSpawnerList = m_Map.GetAreaSpawnerList(); if (areaSpawnerList != null && areaSpawnerList.Count > 0) { for (int iArea = 0; iArea < areaSpawnerList.Count; iArea++) { AreaSpawner areaSpawner = areaSpawnerList[iArea]; if (areaSpawner != null) { if (m_ExportAreaIds != null && m_ExportAreaIds.Contains(areaSpawner.GetAreaId())) { m_GamingMap.LoadGamingMapArea(areaSpawner, false); } yield return(null); } } } yield return(null); m_GamingMap.InitGamingArea(); yield return(null); m_GamingMap.BeginExport(); yield return(null); IEnumerator updateAreaEnum = m_GamingMap.UpdataGamingAreas(true); if (updateAreaEnum != null) { while (updateAreaEnum.MoveNext()) { yield return(null); } } yield return(null); //刷新LeapOverview if (m_GamingMap.m_LeapOverview != null) { IEnumerator leapOverviewUpdate = m_GamingMap.m_LeapOverview.OnUpdate(m_GamingMap); if (leapOverviewUpdate != null) { while (leapOverviewUpdate != null && leapOverviewUpdate.MoveNext()) { yield return(null); } } } yield return(null); EditorGamingMapData.SaveGamingMapToJson(m_GamingMap, m_ExportAreaIds); yield return(null); m_GamingMap.EndExport(); yield return(null); }
private IEnumerator ExportToJson(GamingMap gamingMap, Map map) { List <AreaSpawner> areaSpawnerList = map.GetAreaSpawnerList(); if (areaSpawnerList != null && areaSpawnerList.Count > 0) { for (int iArea = 0; iArea < areaSpawnerList.Count; iArea++) { AreaSpawner areaSpawner = areaSpawnerList[iArea]; if (areaSpawner != null) { LoadGamingMapArea(areaSpawner, false); yield return(null); } } } yield return(null); InitGamingArea(); yield return(null); BeginExport(); yield return(null); IEnumerator updateAreaEnum = UpdataGamingAreas(true); if (updateAreaEnum != null) { while (updateAreaEnum.MoveNext()) { yield return(null); } } yield return(null); //刷新LeapOverview if (m_LeapOverview != null) { IEnumerator leapOverviewUpdate = m_LeapOverview.OnUpdate(this); if (leapOverviewUpdate != null) { while (leapOverviewUpdate != null && leapOverviewUpdate.MoveNext()) { yield return(null); } } } yield return(null); EditorGamingMapData.SaveGamingMapToJson(gamingMap); yield return(null); gamingMap.EndExport(); yield return(null); m_ExporterGamingMapHandle.IsDone = true; }