using Newtonsoft.Json.Linq; namespace EDPlayerJournal.Entries; public class MissionsEntry : Entry { /// <summary> /// List of currently active mission. /// </summary> public List<Mission> Active { get; set; } = new List<Mission>(); /// <summary> /// List of failed missions, not yet discarded. /// </summary> public List<Mission> Failed { get; set; } = new List<Mission>(); /// <summary> /// List of completed missions, not yet turned in. /// </summary> public List<Mission> Complete { get; set; } = new List<Mission>(); protected override void Initialise() { JArray? arr; arr = JSON.Value<JArray?>("Active"); if (arr != null) { foreach (JObject item in arr.Children().OfType<JObject>()) { Mission m = Mission.FromMissionAccepted(item); Active.Add(m); } } arr = JSON.Value<JArray?>("Failed"); if (arr != null) { foreach (JObject item in arr.Children().OfType<JObject>()) { Mission m = Mission.FromMissionAccepted(item); Failed.Add(m); } } arr = JSON.Value<JArray?>("Complete"); if (arr != null) { foreach (JObject item in arr.Children().OfType<JObject>()) { Mission m = Mission.FromMissionAccepted(item); Complete.Add(m); } } } }