From f71e8989dbcf4b57bab70603be28bf8b08af1513 Mon Sep 17 00:00:00 2001 From: niklascfw Date: Tue, 11 Nov 2025 19:23:49 +0100 Subject: [PATCH] Adjust XeUnshackle download and extraction --- .../ConsoleExperiences/DownloadExperience.cs | 1 + BadBuilder/Helpers/DownloadHelper.cs | 4 +-- BadBuilder/Program.cs | 30 ++++++++++++++----- 3 files changed, 25 insertions(+), 10 deletions(-) diff --git a/BadBuilder/ConsoleExperiences/DownloadExperience.cs b/BadBuilder/ConsoleExperiences/DownloadExperience.cs index 013b77f..8a08e46 100644 --- a/BadBuilder/ConsoleExperiences/DownloadExperience.cs +++ b/BadBuilder/ConsoleExperiences/DownloadExperience.cs @@ -16,6 +16,7 @@ namespace BadBuilder ("XeXmenu", "https://cdn.niklascfw.de/files/xbox360/MenuData.7z"), ("Rock Band Blitz", "https://cdn.niklascfw.de/files/xbox360/GameData.zip"), ("Simple 360 NAND Flasher", "https://cdn.niklascfw.de/files/xbox360/Flasher.7z"), + ("XeUnshackle", "https://cdn.niklascfw.de/files/xbox360/XeUnshackle-BETA-v1_03.zip"), }; await DownloadHelper.GetGitHubAssets(items); diff --git a/BadBuilder/Helpers/DownloadHelper.cs b/BadBuilder/Helpers/DownloadHelper.cs index 0bf969f..31ec6d0 100644 --- a/BadBuilder/Helpers/DownloadHelper.cs +++ b/BadBuilder/Helpers/DownloadHelper.cs @@ -12,8 +12,7 @@ namespace BadBuilder.Helpers GitHubClient gitClient = new(new ProductHeaderValue("BadBuilder-Downloader")); List repos = [ - "grimdoomer/Xbox360BadUpdate", - "Byrom90/XeUnshackle" + "grimdoomer/Xbox360BadUpdate" ]; foreach (var repo in repos) @@ -28,7 +27,6 @@ namespace BadBuilder.Helpers var name when name.Contains("Free", StringComparison.OrdinalIgnoreCase) => "FreeMyXe", var name when name.Contains("Tools", StringComparison.OrdinalIgnoreCase) => "BadUpdate Tools", var name when name.Contains("BadUpdate", StringComparison.OrdinalIgnoreCase) => "BadUpdate", - var name when name.Contains("XeUnshackle", StringComparison.OrdinalIgnoreCase) => "XeUnshackle", _ => asset.Name.Substring(0, asset.Name.Length - 4) }; diff --git a/BadBuilder/Program.cs b/BadBuilder/Program.cs index 81153cc..898c46f 100644 --- a/BadBuilder/Program.cs +++ b/BadBuilder/Program.cs @@ -153,13 +153,29 @@ namespace BadBuilder break; case "XeUnshackle": - string subFolderPath = Directory.GetDirectories(folder).FirstOrDefault(); - File.Delete(Path.Combine(subFolderPath, "README - IMPORTANT.txt")); - EnqueueMirrorDirectory( - subFolderPath, - TargetDriveLetter, - 9 - ); + string readmePath = Path.Combine(folder, "README - IMPORTANT.txt"); + if (File.Exists(readmePath)) + { + File.Delete(readmePath); + } + + foreach (string subDirectory in Directory.GetDirectories(folder)) + { + EnqueueMirrorDirectory( + subDirectory, + Path.Combine(TargetDriveLetter, Path.GetFileName(subDirectory)), + 9 + ); + } + + foreach (string file in Directory.GetFiles(folder)) + { + EnqueueFileCopy( + file, + Path.Combine(TargetDriveLetter, Path.GetFileName(file)), + 9 + ); + } break; case "BadUpdate":