public JournalCarrierJump(JObject evt) : base(evt, JournalTypeEnum.CarrierJump) { // base class does StarSystem/StarPos/Faction/Powerplay Docked = evt.Value <bool?>("Docked") ?? false; StationName = evt["StationName"].Str(); StationType = evt["StationType"].Str().SplitCapsWord(); Body = evt["Body"].Str(); BodyID = evt["BodyID"].IntNull(); BodyType = JournalFieldNaming.NormaliseBodyType(evt["BodyType"].Str()); DistFromStarLS = evt["DistFromStarLS"].DoubleNull(); Latitude = evt["Latitude"].DoubleNull(); Longitude = evt["Longitude"].DoubleNull(); MarketID = evt["MarketID"].LongNull(); // station data only if docked.. JToken jk = (JToken)evt["StationFaction"]; // 3.3.3 post if (jk != null && jk.Type == JTokenType.Object) { JObject jo = jk as JObject; StationFaction = jk["Name"].Str(); // system faction pick up StationFactionState = jk["FactionState"].Str(); } StationGovernment = evt["StationGovernment"].Str(); // 3.3.2 empty before StationGovernment_Localised = evt["StationGovernment_Localised"].Str(); // 3.3.2 empty before StationAllegiance = evt["StationAllegiance"].Str(); // 3.3.2 empty before // tbd bug in journal over FactionState - its repeated twice.. StationServices = evt["StationServices"]?.ToObjectProtected <string[]>(); StationEconomyList = evt["StationEconomies"]?.ToObjectProtected <JournalDocked.Economies[]>(); JToken jm = evt["EDDMapColor"]; MapColor = jm.Int(EDCommander.Current.MapColour); if (jm.Empty()) { evt["EDDMapColor"] = EDCommander.Current.MapColour; // new entries get this default map colour if its not already there } }
public JournalFSDJump(JObject evt) : base(evt, JournalTypeEnum.FSDJump) { // base class does StarSystem/StarPos/Faction/Powerplay JumpDist = evt["JumpDist"].Double(); FuelUsed = evt["FuelUsed"].Double(); FuelLevel = evt["FuelLevel"].Double(); BoostUsed = evt["BoostUsed"].Bool(); BoostValue = evt["BoostUsed"].Int(); Body = evt["Body"].StrNull(); BodyID = evt["BodyID"].IntNull(); BodyType = JournalFieldNaming.NormaliseBodyType(evt["BodyType"].Str()); JToken jm = evt["EDDMapColor"]; MapColor = jm.Int(EDCommander.Current.MapColour); if (jm.IsNull()) { evt["EDDMapColor"] = EDCommander.Current.MapColour; // new entries get this default map colour if its not already there } EDSMFirstDiscover = evt["EDD_EDSMFirstDiscover"].Bool(false); }
public JournalLocation(JObject evt) : base(evt, JournalTypeEnum.Location) // all have evidence 16/3/2017 { // base class does StarSystem/StarPos/Faction/Powerplay Docked = evt["Docked"].Bool(); StationName = evt["StationName"].Str(); StationType = evt["StationType"].Str().SplitCapsWord(); Body = evt["Body"].Str(); BodyID = evt["BodyID"].IntNull(); BodyType = JournalFieldNaming.NormaliseBodyType(evt["BodyType"].Str()); DistFromStarLS = evt["DistFromStarLS"].DoubleNull(); Latitude = evt["Latitude"].DoubleNull(); Longitude = evt["Longitude"].DoubleNull(); MarketID = evt["MarketID"].LongNull(); // station data only if docked.. JObject jk = evt["StationFaction"].Object(); // 3.3.3 post if (jk != null) { StationFaction = jk["Name"].Str(); // system faction pick up StationFactionState = jk["FactionState"].Str(); } StationGovernment = evt["StationGovernment"].Str(); // 3.3.2 empty before StationGovernment_Localised = evt["StationGovernment_Localised"].Str(); // 3.3.2 empty before StationAllegiance = evt["StationAllegiance"].Str(); // 3.3.2 empty before // tbd bug in journal over FactionState - its repeated twice.. StationServices = evt["StationServices"]?.ToObjectQ <string[]>(); StationEconomyList = evt["StationEconomies"]?.ToObjectQ <JournalDocked.Economies[]>(); Taxi = evt["Taxi"].BoolNull(); Multicrew = evt["Multicrew"].BoolNull(); InSRV = evt["InSRV"].BoolNull(); OnFoot = evt["OnFoot"].BoolNull(); }
public JournalFSDJump(JObject evt) : base(evt, JournalTypeEnum.FSDJump) { RealJournalEvent = evt["FuelUsed"].Empty(); // Old pre ED 2.2 messages has no Fuel used fields // base class does StarSystem/StarPos/Faction/Powerplay JumpDist = evt["JumpDist"].Double(); FuelUsed = evt["FuelUsed"].Double(); FuelLevel = evt["FuelLevel"].Double(); BoostUsed = evt["BoostUsed"].Bool(); BoostValue = evt["BoostUsed"].Int(); Body = evt["Body"].StrNull(); BodyID = evt["BodyID"].IntNull(); BodyType = JournalFieldNaming.NormaliseBodyType(evt["BodyType"].Str()); JToken jm = evt["EDDMapColor"]; MapColor = jm.Int(EliteDangerousCore.EliteConfigInstance.InstanceConfig.DefaultMapColour); if (jm.Empty()) { evt["EDDMapColor"] = EliteDangerousCore.EliteConfigInstance.InstanceConfig.DefaultMapColour; // new entries get this default map colour if its not already there } EDSMFirstDiscover = evt["EDD_EDSMFirstDiscover"].Bool(false); }