private static SubMod SubModFromOption(DirectoryInfo basePath, OptionV0 option, HashSet <FullPath> seenMetaFiles) { var subMod = new SubMod { Name = option.OptionName }; AddFilesToSubMod(subMod, basePath, option, seenMetaFiles); subMod.IncorporateMetaChanges(basePath, false); return(subMod); }
private static void AddFilesToSubMod(SubMod mod, DirectoryInfo basePath, OptionV0 option, HashSet <FullPath> seenMetaFiles) { foreach (var(relPath, gamePaths) in option.OptionFiles) { var fullPath = new FullPath(basePath, relPath); foreach (var gamePath in gamePaths) { mod.FileData.TryAdd(gamePath, fullPath); } if (fullPath.Extension is ".meta" or ".rgsp") { seenMetaFiles.Add(fullPath); } } }