public static void SaveStructures(GameObject[] structures) { BinaryFormatter formatter = new BinaryFormatter(); string path = Application.persistentDataPath + "/structures.data"; FileStream stream = new FileStream(path, FileMode.Create); StructureSaveData saveData = new StructureSaveData(structures); formatter.Serialize(stream, saveData); stream.Close(); }
public static StructureSaveData LoadStructures() { string path = Application.persistentDataPath + "/structures.data"; if (File.Exists(path)) { BinaryFormatter formatter = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); StructureSaveData saveData = formatter.Deserialize(stream) as StructureSaveData; stream.Close(); return(saveData); } else { Debug.LogError("no file at " + path); return(null); } }
public void LoadBuild(StructureInformation info, StructureSaveData structureData) { if (Info != info) { return; } leftBuildTime = structureData.leftBuildTime; currentStageIndex = structureData.stageIndex; ID = structureData.ID; if (leftBuildTime > 0 && currentStageIndex >= 0 && currentStageIndex < info.Stages.Count) { IsBuilt = false; if (Info.AutoBuild) { StartConstruct(); } } else { BuildComplete(); } }