Exemple #1
0
 public void BackupTrack(bool Crash = true)
 {
     try
     {
         if (_track.Lines.Count == 0)
         {
             return;
         }
         game.Loading = true;
         using (var trk = CreateTrackReader())
         {
             if (Crash)
             {
                 TrackIO.SaveTrackToFile(_track, "Crash Backup", Settings.Local.CurrentSong?.ToString());
             }
             else
             {
                 if (TrackChanges > 50)
                 {
                     TrackIO.CreateAutosave(_track, Settings.Local.CurrentSong?.ToString());
                 }
             }
         }
     }
     catch (Exception e)
     {
         Debug.WriteLine("Autosave exception: " + e);
     }
     finally
     {
         game.Loading = false;
         game.Invalidate();
     }
 }
Exemple #2
0
        public void BackupTrack(bool Crash = true)
        {
            try
            {
                if (_track.Lines.Count == 0)
                {
                    return;
                }
                game.Canvas.Loading = true;
                using (var trk = CreateTrackReader())
                {
                    if (Crash)
                    {
                        var backupName = ("Crash Backup " + DateTime.Now.Month + "." + DateTime.Now.Day + "." + +DateTime.Now.Year + "_" + DateTime.Now.Hour + "." + DateTime.Now.Minute);
                        switch (Settings.DefaultCrashBackupFormat)
                        {
                        case ".trk":
                            TrackIO.SaveTrackToFile(_track, backupName);
                            break;

                        case ".json":
                            TrackIO.SaveTrackToJsonFile(_track, backupName);
                            break;

                        case ".sol":
                            TrackIO.SaveToSOL(_track, backupName);
                            break;

                        default:
                            TrackIO.SaveTrackToFile(_track, backupName);
                            break;
                        }
                    }
                    else
                    {
                        if (TrackChanges > Settings.autosaveChanges)
                        {
                            TrackIO.CreateAutosave(_track);
                        }
                    }
                }
            }
            catch (Exception e)
            {
                Debug.WriteLine("Autosave exception: " + e);
            }
            finally
            {
                game.Canvas.Loading = false;
                Invalidate();
            }
        }