public void Reset() { List<string> files = System.IO.Directory.GetFiles(Application.persistentDataPath, "*.xml").ToList(); if(files != null && files.Count != 0) { foreach (string file in files) { File.Delete(file); } } //Unlocking partially tutorial level XmlSerializer serializer = new XmlSerializer(typeof(GameSaveState)); using(TextWriter writer = new StreamWriter(GameStateSaver.FilePath())) { GameSaveState gss = new GameSaveState(); for (int i = 0; i < StateChapterSelect.Instance.Chapters.Length; i++) { ChapterSaveState resetChapter = new ChapterSaveState(); resetChapter.LevelNumber = StateChapterSelect.Instance.Chapters[i].LevelNumber; if(StateChapterSelect.Instance.Chapters[i].LevelNumber == 0) { for (int j = 0; j < resetChapter.JigsawPeicesUnlocked.Length; j++) { resetChapter.JigsawPeicesUnlocked[j] = 1.0f; } resetChapter.JigsawPeicesUnlocked[5] = 0.8f; resetChapter.UnLocked = true; } gss.Chapters.Add(resetChapter); } serializer.Serialize(writer, gss); writer.Close(); } Debug.Log("Reset game state"); }
public ChapterSaveState ToChapterSaveState() { ChapterSaveState state = new ChapterSaveState(); state.LevelNumber = this.LevelNumber; state.Completed = this.Completed; state.UnLocked = this.UnLocked; for (int i = 0; i < this.JigsawPeicesUnlocked.Length; i++) { state.JigsawPeicesUnlocked[i] = this.JigsawPeicesUnlocked[i]; } return state; }