Esempio n. 1
0
 public BasicResult SaveProgress(SaveProgressRequest request)
 {
     string jsonFile = request.JsonFile;
     try
     {
         if (!Path.IsPathRooted(jsonFile))
         {
             jsonFile = Path.Combine(ExePath, jsonFile);
         }
         SavedProgress progress = new SavedProgress();
         progress.DiscoveredElements = _ElementsDiscovered;
         progress.WorkbenchState = request.WorkbenchState;
         using (JsonTextWriter jsonWriter = new JsonTextWriter(new StreamWriter(jsonFile)))
         {
             new JsonSerializer().Serialize(jsonWriter, progress);
         }
         ProgressDirty = false;
         return new BasicResult { Success = true, Exception = null };
     }
     catch (Exception ex)
     {
         return new BasicResult { Success = false, Exception = ex };
     }
 }
Esempio n. 2
0
 public LoadProgressResult LoadProgress(string jsonFile)
 {
     try
     {
         if (!Path.IsPathRooted(jsonFile))
         {
             jsonFile = Path.Combine(ExePath, jsonFile);
         }
         SavedProgress progress = null;
         if (File.Exists(jsonFile))
         {
             // Existing progress file
             using (JsonTextReader jsonReader = new JsonTextReader(new StreamReader(jsonFile)))
             {
                 progress = new JsonSerializer().Deserialize<SavedProgress>(jsonReader);
                 _ElementsDiscovered = progress.DiscoveredElements;
             }
         }
         else
         {
             // New game
             progress = new SavedProgress();
             SaveProgress(new SaveProgressRequest { JsonFile = jsonFile, WorkbenchState = progress.WorkbenchState });
         }
         ProgressDirty = false;
         return new LoadProgressResult { Success = true, Exception = null, WorkbenchState = progress.WorkbenchState };
     }
     catch (Exception ex)
     {
         return new LoadProgressResult { Success = false, Exception = ex, WorkbenchState = null };
     }
 }