From dd607542c875b6cf10284ab9bf42e203cc7398f4 Mon Sep 17 00:00:00 2001 From: Patrick Hogenboom Date: Mon, 13 Apr 2026 17:13:56 +0200 Subject: [PATCH 1/3] Delete recovered scene without popup --- UnityLauncherPro/Tools.cs | 83 ++++++++++++++++++++------------------- 1 file changed, 43 insertions(+), 40 deletions(-) diff --git a/UnityLauncherPro/Tools.cs b/UnityLauncherPro/Tools.cs index c6fc9b5..7c893f3 100644 --- a/UnityLauncherPro/Tools.cs +++ b/UnityLauncherPro/Tools.cs @@ -410,46 +410,49 @@ static bool CheckCrashBackupScene(string projectPath) var recoveryFile = Path.Combine(projectPath, "Temp", "__Backupscenes", "0.backup"); if (File.Exists(recoveryFile)) { - var result = MessageBox.Show("Crash recovery scene found, do you want to MOVE it into Assets/_Recovery/-folder?", "UnityLauncherPro - Scene Recovery", MessageBoxButton.YesNo, MessageBoxImage.Question); - if (result == MessageBoxResult.Yes) - { - var restoreFolder = Path.Combine(projectPath, "Assets", "_Recovery"); - if (Directory.Exists(restoreFolder) == false) - { - Directory.CreateDirectory(restoreFolder); - } - if (Directory.Exists(restoreFolder) == true) - { - Int32 unixTimestamp = (Int32)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalSeconds; - var uniqueFileName = "Recovered_Scene" + unixTimestamp + ".unity"; - - try - { - File.Move(recoveryFile, Path.Combine(restoreFolder, uniqueFileName)); - // remove folder, otherwise unity 6000.2 asks for recovery - Directory.Delete(Path.Combine(projectPath, "Temp", "__Backupscenes"), true); - - Console.WriteLine("moved file to " + uniqueFileName); - } - catch (IOException) - { - // if move failed, try copy - File.Copy(recoveryFile, Path.Combine(restoreFolder, uniqueFileName)); - Console.WriteLine("copied file"); - } - - Console.WriteLine("Recovered crashed scene into: " + restoreFolder); - } - else - { - Console.WriteLine("Error: Failed to create restore folder: " + restoreFolder); - cancelRunningUnity = true; - } - } - else if (result == MessageBoxResult.Cancel) // dont do restore, but run Unity - { - cancelRunningUnity = true; - } + File.Delete(recoveryFile); + Directory.Delete(Path.GetDirectoryName(recoveryFile)); + + // var result = MessageBox.Show("Crash recovery scene found, do you want to MOVE it into Assets/_Recovery/-folder?", "UnityLauncherPro - Scene Recovery", MessageBoxButton.YesNo, MessageBoxImage.Question); + // if (result == MessageBoxResult.Yes) + // { + // var restoreFolder = Path.Combine(projectPath, "Assets", "_Recovery"); + // if (Directory.Exists(restoreFolder) == false) + // { + // Directory.CreateDirectory(restoreFolder); + // } + // if (Directory.Exists(restoreFolder) == true) + // { + // Int32 unixTimestamp = (Int32)(DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalSeconds; + // var uniqueFileName = "Recovered_Scene" + unixTimestamp + ".unity"; + // + // try + // { + // File.Move(recoveryFile, Path.Combine(restoreFolder, uniqueFileName)); + // // remove folder, otherwise unity 6000.2 asks for recovery + // Directory.Delete(Path.Combine(projectPath, "Temp", "__Backupscenes"), true); + // + // Console.WriteLine("moved file to " + uniqueFileName); + // } + // catch (IOException) + // { + // // if move failed, try copy + // File.Copy(recoveryFile, Path.Combine(restoreFolder, uniqueFileName)); + // Console.WriteLine("copied file"); + // } + // + // Console.WriteLine("Recovered crashed scene into: " + restoreFolder); + // } + // else + // { + // Console.WriteLine("Error: Failed to create restore folder: " + restoreFolder); + // cancelRunningUnity = true; + // } + // } + // else if (result == MessageBoxResult.Cancel) // dont do restore, but run Unity + // { + // cancelRunningUnity = true; + // } } return cancelRunningUnity; } From 4c89ebf9482424abaa9d566a66cb2bc8d9724f12 Mon Sep 17 00:00:00 2001 From: Patrick Hogenboom Date: Wed, 29 Apr 2026 20:36:36 +0200 Subject: [PATCH 2/3] Added setting to delete recovered scene or display load popup --- UnityLauncherPro/MainWindow.xaml | 11 ++- UnityLauncherPro/MainWindow.xaml.cs | 9 ++ .../Properties/Settings.Designer.cs | 12 +++ UnityLauncherPro/Tools.cs | 93 ++++++++++--------- 4 files changed, 77 insertions(+), 48 deletions(-) diff --git a/UnityLauncherPro/MainWindow.xaml b/UnityLauncherPro/MainWindow.xaml index 5e350ec..02af6e8 100644 --- a/UnityLauncherPro/MainWindow.xaml +++ b/UnityLauncherPro/MainWindow.xaml @@ -741,6 +741,7 @@ +