private static void LoadPartsData(GameSaving.VesselSave vesselToLoad, Part[] loadedParts) { for (int i = 0; i < vesselToLoad.parts.Length; i++) { Part part = loadedParts[i]; bool flag = !(part == null); if (flag) { Part.Save save = vesselToLoad.parts[i]; Module[] components = part.GetComponents <Module>(); Array.Reverse(components); Array.Reverse(save.moduleSaves); for (int j = 0; j < Mathf.Min(part.modules.Length, save.moduleSaves.Length); j++) { components[j].Load(save.moduleSaves[j]); } } } for (int k = 0; k < vesselToLoad.parts.Length; k++) { bool flag2 = !(loadedParts[k] == null); if (flag2) { Module[] components2 = loadedParts[k].GetComponents <Module>(); for (int l = 0; l < Mathf.Min(loadedParts[k].modules.Length, vesselToLoad.parts[k].moduleSaves.Length); l++) { components2[l].OnPartLoaded(); } } } }
private static Part.Save[] GetPartsSaveData(List <Part> partsToSave) { int count = partsToSave.Count; Part.Save[] array = new Part.Save[count]; for (int i = 0; i < count; i++) { array[i] = new Part.Save(partsToSave[i], partsToSave[i].orientation, partsToSave); } return(array); }
private static void LoadPartsData(GameSaving.VesselSave vesselToLoad, Part[] loadedParts) { for (int i = 0; i < vesselToLoad.parts.Length; i++) { Part part = loadedParts[i]; Part.Save save = vesselToLoad.parts[i]; Module[] components = part.GetComponents <Module>(); Array.Reverse(components); Array.Reverse(save.moduleSaves); for (int j = 0; j < part.modules.Length; j++) { components[j].Load(save.moduleSaves[j]); } } }