diff --git a/EliteBGS/LogGenerator/FailedMissionFormat.cs b/EliteBGS/LogGenerator/FailedMissionFormat.cs index 9ac6c79..5d5c35b 100644 --- a/EliteBGS/LogGenerator/FailedMissionFormat.cs +++ b/EliteBGS/LogGenerator/FailedMissionFormat.cs @@ -8,28 +8,24 @@ namespace EliteBGS.LogGenerator; public class FailedMissionFormat : LogFormatter { public string GenerateLog(Objective objective) { var missions = objective.EnabledOfType(); - StringBuilder builder = new StringBuilder(); if (missions.Count <= 0) { return ""; } - foreach (var failed in missions) { - MissionFailedEntry f = failed.Failed; - string name; + StringBuilder builder = new StringBuilder(); - if (!string.IsNullOrEmpty(f.Mission.FriendlyName)) { - name = f.Mission.FriendlyName; - } else if (!string.IsNullOrEmpty(f.Mission.LocalisedName)) { - name = f.Mission.LocalisedName; - } else { - name = f.Mission.Name; - } + var grouping = missions + .GroupBy(x => x.Mission.IsOnFoot) + ; - if (!string.IsNullOrEmpty(failed.Faction)) { - builder.AppendFormat("Failed mission \"{0}\" targeting {1}\n", name, failed.Faction); + foreach (var group in grouping) { + int amount = group.Count(); + + if (group.Key) { + builder.AppendFormat("Failed {0} On Foot Mission(s)\n", amount); } else { - builder.AppendFormat("Failed mission \"{0}\"\n", name); + builder.AppendFormat("Failed {0} Ship Mission(s)\n", amount); } }