diff --git a/SabreTools.Library/DatFiles/DatFile.cs b/SabreTools.Library/DatFiles/DatFile.cs index f2c4d6ba..98d07aa0 100644 --- a/SabreTools.Library/DatFiles/DatFile.cs +++ b/SabreTools.Library/DatFiles/DatFile.cs @@ -2371,6 +2371,7 @@ namespace SabreTools.Library.DatFiles case PackingFlag.Unzip: outputFormat = OutputFormat.Folder; break; + // TODO: Check what output format would be for Partial and Flat } } @@ -2560,6 +2561,7 @@ namespace SabreTools.Library.DatFiles case PackingFlag.Unzip: outputFormat = OutputFormat.Folder; break; + // TODO: Check what output format would be for Partial and Flat } } diff --git a/SabreTools.Library/DatFiles/Enums.cs b/SabreTools.Library/DatFiles/Enums.cs index 6896e965..0a062863 100644 --- a/SabreTools.Library/DatFiles/Enums.cs +++ b/SabreTools.Library/DatFiles/Enums.cs @@ -233,8 +233,26 @@ namespace SabreTools.Library.DatFiles public enum PackingFlag { None = 0, + + /// + /// Force all sets to be in archives, except disk and media + /// Zip, + + /// + /// Force all sets to be extracted into subfolders + /// Unzip, + + /// + /// Force sets with single items to be extracted to the parent folder + /// + Partial, + + /// + /// Force all sets to be extracted to the parent folder + /// + Flat, } /// diff --git a/SabreTools.Library/Tools/Converters.cs b/SabreTools.Library/Tools/Converters.cs index 5b8ace98..c679e464 100644 --- a/SabreTools.Library/Tools/Converters.cs +++ b/SabreTools.Library/Tools/Converters.cs @@ -1709,6 +1709,10 @@ namespace SabreTools.Library.Tools case "no": case "unzip": return PackingFlag.Unzip; + case "partial": + return PackingFlag.Partial; + case "flat": + return PackingFlag.Flat; case "none": default: return PackingFlag.None; @@ -1720,6 +1724,8 @@ namespace SabreTools.Library.Tools "zip" => PackingFlag.Zip, "no" => PackingFlag.Unzip, "unzip" => PackingFlag.Unzip, + "partial" => PackingFlag.Partial, + "flat" => PackingFlag.Flat, "none" => PackingFlag.None, _ => PackingFlag.None, }; @@ -2088,6 +2094,10 @@ namespace SabreTools.Library.Tools return yesno ? "yes" : "zip"; case PackingFlag.Unzip: return yesno ? "no" : "unzip"; + case PackingFlag.Partial: + return "partial"; + case PackingFlag.Flat: + return "flat"; default: return null; } @@ -2096,6 +2106,8 @@ namespace SabreTools.Library.Tools { PackingFlag.Zip => yesno ? "yes" : "zip", PackingFlag.Unzip => yesno ? "yes" : "zip", + PackingFlag.Partial => "partial", + PackingFlag.Flat => "flat", _ => null, }; #endif