private Mod GetMod(ModCollection modList, ModpackTemplateMod modTemplate) { Mod result = null; if (!(modTemplate.UsesExactVersion && modList.TryGetMod(modTemplate.Name, modTemplate.Version, out result))) { var candidates = modList.Find(modTemplate.Name, modTemplate.FactorioVersion); if (!candidates.Any()) { candidates = modList.Find(modTemplate.Name); } result = candidates.MaxBy(mod => mod.Version, new VersionComparer()); } return(result); }
private Mod GetMod(ICollection <Mod> modList, ModpackTemplateMod modTemplate) { return(modList.FirstOrDefault(mod => (mod.Name == modTemplate.Name || mod.FriendlyName == modTemplate.Name) && mod.FactorioVersion == modTemplate.FactorioVersion)); }