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