public static void GenerateMgsv(string MgsvFile, string ModName, string SourceFolder)
{
ModEntry metaData = new ModEntry();
metaData.Name = ModName;
metaData.Author = "SnakeBite";
metaData.MGSVersion.Version = "0.0.0.0";
metaData.SBVersion.Version = ModManager.GetSBVersion().ToString();
metaData.Version = "[QM]";
metaData.Description = "[Generated by SnakeBite]";
metaData.Website = "";
List <ModFpkEntry> fpkEntries = new List <ModFpkEntry>();
List <ModQarEntry> qarEntries = new List <ModQarEntry>();
foreach (var File in Directory.GetFiles(SourceFolder, "*", SearchOption.AllDirectories))
{
string ShortFileName = File.Substring(SourceFolder.Length + 1);
if (File.ToLower().Contains(".fpk"))
{
// do fpk
var fpkCont = GzsLib.ListArchiveContents <FpkFile>(File);
foreach (var fpkFile in fpkCont)
{
fpkEntries.Add(new ModFpkEntry()
{
FpkFile = ShortFileName,
FilePath = fpkFile,
SourceType = FileSource.Mod
});
}
}
else
{
// do qar
qarEntries.Add(new ModQarEntry()
{
FilePath = ShortFileName, SourceType = FileSource.Mod
});
}
}
metaData.ModQarEntries = qarEntries;
metaData.ModFpkEntries = fpkEntries;
metaData.SaveToFile(Path.Combine(SourceFolder, "metadata.xml"));
FastZip makeZip = new FastZip();
makeZip.CreateZip(MgsvFile, SourceFolder, true, ".*");
}