public static void LoadModProgress() { if (!File.Exists(ModConstants.MOD_PROGRESS_PATH)) { return; } XmlSerializer xmlSerializer = new XmlSerializer(typeof(ModSaveData)); ModSaveData saveData; XmlDocument doc = new XmlDocument(); doc.LoadXml(CryptoManager.DecryptXML(ModConstants.MOD_PROGRESS_PATH)); string xml = String.Empty; using (StringWriter strWriter = new StringWriter()) using (XmlWriter xmlStrWriter = XmlWriter.Create(strWriter)) { doc.WriteTo(xmlStrWriter); xmlStrWriter.Flush(); xml = strWriter.GetStringBuilder().ToString(); } using (TextReader reader = new StringReader(xml)) { saveData = (xmlSerializer.Deserialize(reader) as ModSaveData); } ModEventsSeenAllTime = saveData.ModEventsSeenAllTime; ModEventChoicesSeenAllTime = saveData.ModEventChoicesSeenAllTime; ModEndingsSeenAllTime = saveData.ModEndingsSeenAllTime; ModEndingsSeenCount = saveData.ModEndingsSeenCount; ModsLoadedBefore.AddRange(saveData.ModsLoadedBefore); }