├── .editorconfig ├── .gitattributes ├── .gitignore ├── .vscode └── snippets │ └── csharp.json ├── EliteJournalFeedTester ├── App.config ├── EliteJournalFeedTester.csproj └── Program.cs ├── EliteJournalReader.Tests ├── EliteJournalReader.Tests.csproj ├── FakeJournalWatcher.cs ├── FakeStatusWatcher.cs ├── TestJournalEvents.cs └── TestStatusEvents.cs ├── EliteJournalReader.sln ├── EliteJournalReader ├── BioData.cs ├── CargoTransfer.cs ├── Commodity.cs ├── Conflict.cs ├── Consumable.cs ├── Data.cs ├── Economy.cs ├── EliteJournalReader.csproj ├── EngineeredModule.cs ├── EngineeringModifiers.cs ├── EnumHelpers.cs ├── Events │ ├── AfmuRepairsEvent.cs │ ├── AppliedToSquadronEvent.cs │ ├── ApproachBodyEvent.cs │ ├── ApproachSettlementEvent.cs │ ├── AsteroidCrackedEvent.cs │ ├── BackpackEvent.cs │ ├── BackpackMaterialsEvent.cs │ ├── BookDropshipEvent.cs │ ├── BookTaxiEvent.cs │ ├── BountyEvent.cs │ ├── BuyAmmoEvent.cs │ ├── BuyDronesEvent.cs │ ├── BuyExplorationDataEvent.cs │ ├── BuyMicroResourcesEvent.cs │ ├── BuySuitEvent.cs │ ├── BuyTradeDataEvent.cs │ ├── BuyWeaponEvent.cs │ ├── CancelDropshipEvent.cs │ ├── CancelTaxiEvent.cs │ ├── CapShipBondEvent.cs │ ├── CargoDepotEvent.cs │ ├── CargoEvent.cs │ ├── CargoTransferEvent.cs │ ├── CarrierBankTransferEvent.cs │ ├── CarrierBuyEvent.cs │ ├── CarrierCancelDecommissionEvent.cs │ ├── CarrierCrewServicesEvent.cs │ ├── CarrierDecommissionEvent.cs │ ├── CarrierDepositFuelEvent.cs │ ├── CarrierDockingPermissionEvent.cs │ ├── CarrierFinanceEvent.cs │ ├── CarrierJumpCancelledEvent.cs │ ├── CarrierJumpEvent.cs │ ├── CarrierJumpRequestEvent.cs │ ├── CarrierLocationEvent.cs │ ├── CarrierModulePackEvent.cs │ ├── CarrierNameChangedEvent.cs │ ├── CarrierShipPackEvent.cs │ ├── CarrierStatsEvent.cs │ ├── CarrierTradeOrderEvent.cs │ ├── ChangeCrewRoleEvent.cs │ ├── ClearSavedGameEvent.cs │ ├── CockpitBreachedEvent.cs │ ├── CodexEntryEvent.cs │ ├── CollectCargoEvent.cs │ ├── CollectItemsEvent.cs │ ├── ColonisationConstructionDepotEvent.cs │ ├── ColonisationContributionEvent.cs │ ├── CommanderEvent.cs │ ├── CommitCrimeEvent.cs │ ├── CommunityGoalDiscardEvent.cs │ ├── CommunityGoalEvent.cs │ ├── CommunityGoalJoinEvent.cs │ ├── CommunityGoalRewardEvent.cs │ ├── ContinuedEvent.cs │ ├── CreateSuitLoadoutEvent.cs │ ├── CrewAssignEvent.cs │ ├── CrewFireEvent.cs │ ├── CrewHireEvent.cs │ ├── CrewLaunchFighterEvent.cs │ ├── CrewMemberJoinsEvent.cs │ ├── CrewMemberQuitsEvent.cs │ ├── CrewMemberRoleChangeEvent.cs │ ├── CrimeVictimEvent.cs │ ├── DataScannedEvent.cs │ ├── DatalinkScanEvent.cs │ ├── DatalinkVoucherEvent.cs │ ├── DeleteSuitLoadoutEvent.cs │ ├── DiedEvent.cs │ ├── DisbandedSquadronEvent.cs │ ├── DiscoveryScanEvent.cs │ ├── DisembarkEvent.cs │ ├── DockFighterEvent.cs │ ├── DockSRVEvent.cs │ ├── DockedEvent.cs │ ├── DockingCancelledEvent.cs │ ├── DockingDeniedEvent.cs │ ├── DockingGrantedEvent.cs │ ├── DockingRequestedEvent.cs │ ├── DockingTimeoutEvent.cs │ ├── DropItemsEvent.cs │ ├── DropShipDeployEvent.cs │ ├── EjectCargoEvent.cs │ ├── EmbarkEvent.cs │ ├── EndCrewSessionEvent.cs │ ├── EngineerContributionEvent.cs │ ├── EngineerCraftEvent.cs │ ├── EngineerLegacyConvertEvent.cs │ ├── EngineerProgressEvent.cs │ ├── EscapeInterdictionEvent.cs │ ├── FSDJumpEvent.cs │ ├── FSDTargetEvent.cs │ ├── FSSAllBodiesFoundEvent.cs │ ├── FSSBodySignalsEvent.cs │ ├── FSSDiscoveryScanEvent.cs │ ├── FSSSignalDiscoveredEvent.cs │ ├── FactionKillBondEvent.cs │ ├── FetchRemoteModuleEvent.cs │ ├── FighterDestroyedEvent.cs │ ├── FighterRebuiltEvent.cs │ ├── FileheaderEvent.cs │ ├── FriendsEvent.cs │ ├── FuelScoopEvent.cs │ ├── HeatDamageEvent.cs │ ├── HeatWarningEvent.cs │ ├── HullDamageEvent.cs │ ├── InterdictedEvent.cs │ ├── InterdictionEvent.cs │ ├── InvitedToSquadronEvent.cs │ ├── IsLiveEvent.cs │ ├── JetConeBoostEvent.cs │ ├── JetConeDamageEvent.cs │ ├── JoinACrewEvent.cs │ ├── JoinedSquadronEvent.cs │ ├── KickCrewMemberEvent.cs │ ├── KickedFromSquadronEvent.cs │ ├── LaunchDroneEvent.cs │ ├── LaunchFighterEvent.cs │ ├── LaunchSRVEvent.cs │ ├── LeaveBodyEvent.cs │ ├── LeftSquadronEvent.cs │ ├── LiftoffEvent.cs │ ├── LoadGameEvent.cs │ ├── LoadoutEquipModuleEvent.cs │ ├── LoadoutEvent.cs │ ├── LoadoutRemoveModuleEvent.cs │ ├── LocationEvent.cs │ ├── MarketBuyEvent.cs │ ├── MarketEvent.cs │ ├── MarketRefinedEvent.cs │ ├── MarketSellEvent.cs │ ├── MassModuleStoreEvent.cs │ ├── MaterialCollectedEvent.cs │ ├── MaterialDiscardedEvent.cs │ ├── MaterialDiscoveredEvent.cs │ ├── MaterialTradeEvent.cs │ ├── MaterialsEvent.cs │ ├── MiningRefinedEvent.cs │ ├── MissionAbandonedEvent.cs │ ├── MissionAcceptedEvent.cs │ ├── MissionCompletedEvent.cs │ ├── MissionFailedEvent.cs │ ├── MissionRedirectedEvent.cs │ ├── MissionsEvent.cs │ ├── ModuleBuyEvent.cs │ ├── ModuleInfoEvent.cs │ ├── ModuleRetrieveEvent.cs │ ├── ModuleSellEvent.cs │ ├── ModuleSellRemoteEvent.cs │ ├── ModuleStoreEvent.cs │ ├── ModuleSwapEvent.cs │ ├── ModulesInfoEvent.cs │ ├── MultiSellExplorationDataEvent.cs │ ├── MusicEvent.cs │ ├── NavBeaconScanEvent.cs │ ├── NavRouteClearEvent.cs │ ├── NavRouteEvent.cs │ ├── NewCommanderEvent.cs │ ├── NpcCrewPaidWageEvent.cs │ ├── NpcCrewRankEvent.cs │ ├── OutfittingEvent.cs │ ├── PVPKillEvent.cs │ ├── PassengersEvent.cs │ ├── PayBountiesEvent.cs │ ├── PayFinesEvent.cs │ ├── PayLegacyFinesEvent.cs │ ├── PowerplayCollectEvent.cs │ ├── PowerplayDefectEvent.cs │ ├── PowerplayDeliverEvent.cs │ ├── PowerplayEvent.cs │ ├── PowerplayFastTrackEvent.cs │ ├── PowerplayJoinEvent.cs │ ├── PowerplayLeaveEvent.cs │ ├── PowerplaySalaryEvent.cs │ ├── PowerplayVoteEvent.cs │ ├── PowerplayVoucherEvent.cs │ ├── ProgressEvent.cs │ ├── PromotionEvent.cs │ ├── ProspectedAsteroidEvent.cs │ ├── QuitACrewEvent.cs │ ├── RankEvent.cs │ ├── RebootRepairEvent.cs │ ├── ReceiveTextEvent.cs │ ├── RedeemVoucherEvent.cs │ ├── RefuelAllEvent.cs │ ├── RefuelPartialEvent.cs │ ├── RenameSuitLoadoutEvent.cs │ ├── RepairAllEvent.cs │ ├── RepairDroneEvent.cs │ ├── RepairEvent.cs │ ├── ReputationEvent.cs │ ├── ReservoirReplenishedEvent.cs │ ├── RestockVehicleEvent.cs │ ├── ResurrectEvent.cs │ ├── SAAScanCompleteEvent.cs │ ├── SAASignalsFoundEvent.cs │ ├── SRVDestroyedEvent.cs │ ├── ScanBaryCentreEvent.cs │ ├── ScanEvent.cs │ ├── ScanOrganicEvent.cs │ ├── ScannedEvent.cs │ ├── ScientificResearchEvent.cs │ ├── ScreenshotEvent.cs │ ├── SearchAndRescueEvent.cs │ ├── SelfDestructEvent.cs │ ├── SellDronesEvent.cs │ ├── SellExplorationDataEvent.cs │ ├── SellMicroResourcesEvent.cs │ ├── SellOrganicDataEvent.cs │ ├── SellShipOnRebuyEvent.cs │ ├── SellSuitEvent.cs │ ├── SellWeaponEvent.cs │ ├── SendTextEvent.cs │ ├── SetUserShipNameEvent.cs │ ├── SharedBookmarkToSquadronEvent.cs │ ├── ShieldStateEvent.cs │ ├── ShipLockerEvent.cs │ ├── ShipLockerMaterialsEvent.cs │ ├── ShipTargetedEvent.cs │ ├── ShipyardBuyEvent.cs │ ├── ShipyardEvent.cs │ ├── ShipyardNewEvent.cs │ ├── ShipyardSellEvent.cs │ ├── ShipyardSwapEvent.cs │ ├── ShipyardTransferEvent.cs │ ├── ShutdownEvent.cs │ ├── SquadronCreatedEvent.cs │ ├── SquadronDemotionEvent.cs │ ├── SquadronPromotionEvent.cs │ ├── SquadronStartupEvent.cs │ ├── StartJumpEvent.cs │ ├── StatisticsEvent.cs │ ├── StatusFileEvent.cs │ ├── StoredModulesEvent.cs │ ├── StoredShipsEvent.cs │ ├── SuitLoadoutEvent.cs │ ├── SupercruiseDestinationDropEvent.cs │ ├── SupercruiseEntryEvent.cs │ ├── SupercruiseExitEvent.cs │ ├── SwitchSuitLoadoutEvent.cs │ ├── SynthesisEvent.cs │ ├── SystemsShutdownEvent.cs │ ├── TechnologyBrokerEvent.cs │ ├── TouchdownEvent.cs │ ├── TradeMicroResourcesEvent.cs │ ├── TransferMicroResourcesEvent.cs │ ├── USSDropEvent.cs │ ├── UnderAttackEvent.cs │ ├── UndockedEvent.cs │ ├── UpgradeSuitEvent.cs │ ├── UpgradeWeaponEvent.cs │ ├── UseConsumableEvent.cs │ ├── VehicleSwitchEvent.cs │ ├── WingAddEvent.cs │ ├── WingInviteEvent.cs │ ├── WingJoinEvent.cs │ ├── WingLeaveEvent.cs │ └── WonATrophyForSquadronEvent.cs ├── Faction.cs ├── Item.cs ├── JournalDescriptions.cs ├── JournalEvent.cs ├── JournalEventArgs.cs ├── JournalWatcher.cs ├── LandingPads.cs ├── Material.cs ├── MessageReceivedEventArgs.cs ├── MicroResource.cs ├── Mission.cs ├── Module.cs ├── Passenger.cs ├── Ranks.cs ├── RouteElement.cs ├── SAAGenus.cs ├── SAASignal.cs ├── Signal.cs ├── StatusWatcher.cs ├── SuitModule.cs ├── SystemPosition.cs ├── SystemScan.cs ├── ThargoidWar.cs └── VersionAutoIncrementer.tt ├── Journal_Manual-v32.doc ├── Journal_Manual.doc ├── License.md └── ReadMe.md /.gitattributes: -------------------------------------------------------------------------------- 1 | ############################################################################### 2 | # Set default behavior to automatically normalize line endings. 3 | ############################################################################### 4 | * text=auto 5 | 6 | ############################################################################### 7 | # Set default behavior for command prompt diff. 8 | # 9 | # This is need for earlier builds of msysgit that does not have it on by 10 | # default for csharp files. 11 | # Note: This is only used by command line 12 | ############################################################################### 13 | #*.cs diff=csharp 14 | 15 | ############################################################################### 16 | # Set the merge driver for project and solution files 17 | # 18 | # Merging from the command prompt will add diff markers to the files if there 19 | # are conflicts (Merging from VS is not affected by the settings below, in VS 20 | # the diff markers are never inserted). Diff markers may cause the following 21 | # file extensions to fail to load in VS. An alternative would be to treat 22 | # these files as binary and thus will always conflict and require user 23 | # intervention with every merge. To do so, just uncomment the entries below 24 | ############################################################################### 25 | #*.sln merge=binary 26 | #*.csproj merge=binary 27 | #*.vbproj merge=binary 28 | #*.vcxproj merge=binary 29 | #*.vcproj merge=binary 30 | #*.dbproj merge=binary 31 | #*.fsproj merge=binary 32 | #*.lsproj merge=binary 33 | #*.wixproj merge=binary 34 | #*.modelproj merge=binary 35 | #*.sqlproj merge=binary 36 | #*.wwaproj merge=binary 37 | 38 | ############################################################################### 39 | # behavior for image files 40 | # 41 | # image files are treated as binary by default. 42 | ############################################################################### 43 | #*.jpg binary 44 | #*.png binary 45 | #*.gif binary 46 | 47 | ############################################################################### 48 | # diff behavior for common document formats 49 | # 50 | # Convert binary document formats to text before diffing them. This feature 51 | # is only available from the command line. Turn it on by uncommenting the 52 | # entries below. 53 | ############################################################################### 54 | #*.doc diff=astextplain 55 | #*.DOC diff=astextplain 56 | #*.docx diff=astextplain 57 | #*.DOCX diff=astextplain 58 | #*.dot diff=astextplain 59 | #*.DOT diff=astextplain 60 | #*.pdf diff=astextplain 61 | #*.PDF diff=astextplain 62 | #*.rtf diff=astextplain 63 | #*.RTF diff=astextplain 64 | -------------------------------------------------------------------------------- /.vscode/snippets/csharp.json: -------------------------------------------------------------------------------- 1 | { 2 | "Journal.Event": { 3 | "prefix": "ev", 4 | "comment": "use vscode plugin rebornix.project-snippets to use this", 5 | "description": "Template to create a basic Journal Event", 6 | "body": [ 7 | "using System;", 8 | "using System.Collections.Generic;", 9 | "using System.Linq;", 10 | "using System.Text;", 11 | "using System.Threading.Tasks;", 12 | "using Newtonsoft.Json.Linq;", 13 | "", 14 | "namespace EliteJournalReader.Events", 15 | "{", 16 | " public class ${TM_FILENAME_BASE} : JournalEvent<${TM_FILENAME_BASE}.${TM_FILENAME_BASE}Args>", 17 | " {", 18 | " public ${TM_FILENAME_BASE}() : base(\"${TM_FILENAME_BASE/(.*)Event/$1/}\") { }", 19 | "", 20 | " public class ${TM_FILENAME_BASE}Args : JournalEventArgs", 21 | " {", 22 | " $0", 23 | " }", 24 | " }", 25 | "}" 26 | ] 27 | }, 28 | "Journal.Localised_Property": { 29 | "prefix": "loc", 30 | "body": [ 31 | "public string $0 { get; set; }", 32 | "public string $0_Localised { get; set; }" 33 | ] 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /EliteJournalFeedTester/App.config: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /EliteJournalFeedTester/EliteJournalFeedTester.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | net481 5 | 6 | Copyright © Maurits Elbers (@MagicMau) 2015-2021. Elite: Dangerous and related material is © Frontier Developments plc 7 | MagicMau 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /EliteJournalFeedTester/Program.cs: -------------------------------------------------------------------------------- 1 | using EliteJournalReader; 2 | using EliteJournalReader.Events; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace EliteJournalFeedTester 10 | { 11 | class Program 12 | { 13 | static void Main(string[] args) 14 | { 15 | if (args.Length == 0) 16 | { 17 | Console.WriteLine("Don't forget to supply a path where the journal feed is located."); 18 | return; 19 | } 20 | 21 | string path = args[0]; 22 | 23 | var watcher = new JournalWatcher(path); 24 | 25 | watcher.GetEvent()?.AddHandler((s, e) => Console.WriteLine("Heading received: gameversion {0}, build {1}.", e.GameVersion, e.Build)); 26 | watcher.GetEvent()?.AddHandler((s, e) => Console.WriteLine("Woohoo, jumped to [{0}, {1}, {2}]", e.StarPos.X, e.StarPos.Y, e.StarPos.Z)); 27 | watcher.GetEvent()?.AddHandler((s, e) => Console.WriteLine("Scanned a body {0}, it is {1}landable.", e.BodyName, (e.Landable ?? false) ? "" : "not ")); 28 | watcher.GetEvent()?.AddHandler((s, e) => Console.WriteLine("Docked at {0}", e.StationName)); 29 | 30 | watcher.GetEvent()?.AddHandler((s, e) => 31 | { 32 | Console.WriteLine("Killed by {0}", 33 | e.Killers 34 | .Select(k => string.Format("{0} ({2}, flying a {1})", k.Name, k.Ship, k.Rank)) 35 | .Aggregate((x, y) => string.Format("{0}, {1}", x, y))); 36 | }); 37 | 38 | watcher.GetEvent()?.AddHandler((s, e) => Console.WriteLine("Combat rank is {0}, Exploration rank is {1}", e.Combat.ToString(), e.Explore.ToString())); 39 | 40 | watcher.StartWatching().Wait(); 41 | 42 | Console.ReadLine(); 43 | 44 | watcher.StopWatching(); 45 | } 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /EliteJournalReader.Tests/EliteJournalReader.Tests.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | net481 5 | 6 | Copyright © Maurits Elbers (@MagicMau) 2015-2021. Elite: Dangerous and related material is © Frontier Developments plc 7 | MagicMau 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /EliteJournalReader.Tests/FakeJournalWatcher.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json.Linq; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.IO; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace EliteJournalReader.Tests 10 | { 11 | internal class FakeJournalWatcher : JournalWatcher 12 | { 13 | internal FakeJournalWatcher() 14 | { 15 | string journalPath = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), "Saved Games", "Frontier Developments", "Elite Dangerous"); 16 | if (!Directory.Exists(journalPath)) 17 | { 18 | journalPath = System.IO.Path.Combine(System.IO.Path.GetTempPath(), "TestJournalEvents"); 19 | Directory.CreateDirectory(journalPath); 20 | } 21 | Path = journalPath; 22 | } 23 | 24 | public override Task StartWatching() 25 | { 26 | IsLive = true; 27 | return Task.CompletedTask; 28 | } 29 | 30 | public override void StopWatching() 31 | { 32 | // nothing to do here 33 | } 34 | 35 | public void FireFakeEvent(string json) 36 | { 37 | Parse(json); // this will fire the event 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /EliteJournalReader.Tests/FakeStatusWatcher.cs: -------------------------------------------------------------------------------- 1 | using EliteJournalReader.Events; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace EliteJournalReader.Tests 9 | { 10 | internal class FakeStatusWatcher : StatusWatcher 11 | { 12 | public override void StartWatching() 13 | { 14 | 15 | } 16 | 17 | public void StartWatching(string path) 18 | { 19 | Initialize(path); 20 | base.StartWatching(); 21 | } 22 | 23 | public void SendFakeStatusUpdate(StatusFileEvent evt) 24 | { 25 | FireStatusUpdatedEvent(evt); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /EliteJournalReader.Tests/TestJournalEvents.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using EliteJournalReader.Events; 3 | using Microsoft.VisualStudio.TestTools.UnitTesting; 4 | 5 | namespace EliteJournalReader.Tests 6 | { 7 | [TestClass] 8 | [TestCategory("Journal Events")] 9 | public class TestJournalEvents 10 | { 11 | private FakeJournalWatcher watcher; 12 | 13 | [TestInitialize] 14 | public void Initialize() 15 | { 16 | watcher = new FakeJournalWatcher(); 17 | watcher.StartWatching(); 18 | } 19 | 20 | [TestCleanup] 21 | public void CleanUp() 22 | { 23 | watcher.StopWatching(); 24 | watcher = null; 25 | } 26 | 27 | [TestMethod] 28 | public void Test_FileheaderEvent() 29 | { 30 | FileheaderEvent.FileheaderEventArgs args = null; 31 | //{ "timestamp":"2017-12-30T13:36:28Z", "event":"Fileheader", "part":1, "language":"English\\UK", "gameversion":"2.4", "build":"r160439/r0 " } 32 | watcher.GetEvent().Fired += (s, e) => args = e; 33 | watcher.FireFakeEvent(@"{ ""timestamp"":""2017-12-30T13:36:28Z"", ""event"":""Fileheader"", ""part"":1, ""language"":""English\\UK"", ""gameversion"":""2.4"", ""build"":""r160439/r0 "" }"); 34 | 35 | Assert.IsNotNull(args); 36 | Assert.AreEqual("English\\UK", args.Language); 37 | } 38 | 39 | [TestMethod] 40 | public void Test_DiedEvent_Single() 41 | { 42 | //{ "timestamp":"2016-12-05T19:14:42Z", "event":"Died", "KillerName":"Wightman", "KillerShip":"diamondback", "KillerRank":"Expert" } 43 | DiedEvent.DiedEventArgs args = null; 44 | watcher.GetEvent().Fired += (s, e) => args = e; 45 | watcher.FireFakeEvent(@"{ ""timestamp"":""2016-12-05T19:14:42Z"", ""event"":""Died"", ""KillerName"":""Wightman"", ""KillerShip"":""diamondback"", ""KillerRank"":""Expert"" }"); 46 | 47 | Assert.IsNotNull(args); 48 | Assert.AreEqual(1, args.Killers.Length); 49 | Assert.AreEqual("Wightman", args.Killers[0].Name); 50 | } 51 | 52 | [TestMethod] 53 | public void Test_DiedEvent_Wing() 54 | { 55 | //{ "timestamp":"2016-12-14T21:55:24Z", "event":"Died", "Killers":[ { "Name":"Cmdr Ekol Tieja", "Ship":"federation_gunship", "Rank":"Elite" }, { "Name":"Cmdr Yellowboze", "Ship":"federation_gunship", "Rank":"Novice" } ] } 56 | DiedEvent.DiedEventArgs args = null; 57 | watcher.GetEvent().Fired += (s, e) => args = e; 58 | watcher.FireFakeEvent(@"{ ""timestamp"":""2016-12-14T21:55:24Z"", ""event"":""Died"", ""Killers"":[ { ""Name"":""Cmdr Ekol Tieja"", ""Ship"":""federation_gunship"", ""Rank"":""Elite"" }, { ""Name"":""Cmdr Yellowboze"", ""Ship"":""federation_gunship"", ""Rank"":""Novice"" } ] }"); 59 | 60 | Assert.IsNotNull(args); 61 | Assert.AreEqual(2, args.Killers.Length); 62 | Assert.AreEqual("Cmdr Ekol Tieja", args.Killers[0].Name); 63 | Assert.AreEqual("Cmdr Yellowboze", args.Killers[1].Name); 64 | } 65 | 66 | [TestMethod] 67 | public void Test_NavRoute() 68 | { 69 | NavRouteEvent.NavRouteEventArgs args = null; 70 | watcher.GetEvent().Fired += (s, e) => args = e; 71 | watcher.FireFakeEvent(@"{ ""timestamp"":""2020-04-27T08:02:52Z"", ""event"":""NavRoute"", ""Route"":[ 72 | { ""StarSystem"":""i Bootis"", ""SystemAddress"":1281787693419, ""StarPos"":[-22.37500,34.84375,4.00000], ""StarClass"":""G"" }, 73 | { ""StarSystem"":""Acihaut"", ""SystemAddress"":11665802405289, ""StarPos"":[-18.50000,25.28125,-4.00000], ""StarClass"":""M"" }, 74 | { ""StarSystem"":""LHS 455"", ""SystemAddress"":3686969379179, ""StarPos"":[-16.90625,10.21875,-3.43750], ""StarClass"":""DQ"" }, 75 | { ""StarSystem"":""SPF-LF 1"", ""SystemAddress"":22661187052961, ""StarPos"":[2.90625,6.31250,-9.56250], ""StarClass"":""M"" }, 76 | { ""StarSystem"":""Luyten's Star"", ""SystemAddress"":7268024264097, ""StarPos"":[6.56250,2.34375,-10.25000], ""StarClass"":""M"" }] } 77 | "); 78 | 79 | Assert.IsNotNull(args); 80 | Assert.AreEqual(5, args.Route.Length); 81 | Assert.AreEqual("i Bootis", args.Route[0].StarSystem); 82 | Assert.AreEqual("DQ", args.Route[2].StarClass); 83 | Assert.AreEqual(-10.25m, args.Route[4].StarPos.Z); 84 | } 85 | } 86 | } 87 | -------------------------------------------------------------------------------- /EliteJournalReader.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 15 4 | VisualStudioVersion = 15.0.27130.2026 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EliteJournalReader", "EliteJournalReader\EliteJournalReader.csproj", "{7790285B-E2EE-440B-8EA6-D27BBE6006D9}" 7 | EndProject 8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EliteJournalFeedTester", "EliteJournalFeedTester\EliteJournalFeedTester.csproj", "{C2055E40-60FF-4B3A-873A-97DFCA9FC7B3}" 9 | EndProject 10 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EliteJournalReader.Tests", "EliteJournalReader.Tests\EliteJournalReader.Tests.csproj", "{5176BBCE-C284-4AB6-A8C6-C3EA30D94058}" 11 | EndProject 12 | Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{5C61A369-00DE-4605-814D-97C2AA8684D3}" 13 | ProjectSection(SolutionItems) = preProject 14 | ReadMe.md = ReadMe.md 15 | EndProjectSection 16 | EndProject 17 | Global 18 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 19 | Debug|Any CPU = Debug|Any CPU 20 | Release|Any CPU = Release|Any CPU 21 | EndGlobalSection 22 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 23 | {7790285B-E2EE-440B-8EA6-D27BBE6006D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 24 | {7790285B-E2EE-440B-8EA6-D27BBE6006D9}.Debug|Any CPU.Build.0 = Debug|Any CPU 25 | {7790285B-E2EE-440B-8EA6-D27BBE6006D9}.Release|Any CPU.ActiveCfg = Release|Any CPU 26 | {7790285B-E2EE-440B-8EA6-D27BBE6006D9}.Release|Any CPU.Build.0 = Release|Any CPU 27 | {C2055E40-60FF-4B3A-873A-97DFCA9FC7B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 28 | {C2055E40-60FF-4B3A-873A-97DFCA9FC7B3}.Debug|Any CPU.Build.0 = Debug|Any CPU 29 | {C2055E40-60FF-4B3A-873A-97DFCA9FC7B3}.Release|Any CPU.ActiveCfg = Release|Any CPU 30 | {C2055E40-60FF-4B3A-873A-97DFCA9FC7B3}.Release|Any CPU.Build.0 = Release|Any CPU 31 | {5176BBCE-C284-4AB6-A8C6-C3EA30D94058}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 32 | {5176BBCE-C284-4AB6-A8C6-C3EA30D94058}.Debug|Any CPU.Build.0 = Debug|Any CPU 33 | {5176BBCE-C284-4AB6-A8C6-C3EA30D94058}.Release|Any CPU.ActiveCfg = Release|Any CPU 34 | {5176BBCE-C284-4AB6-A8C6-C3EA30D94058}.Release|Any CPU.Build.0 = Release|Any CPU 35 | EndGlobalSection 36 | GlobalSection(SolutionProperties) = preSolution 37 | HideSolutionNode = FALSE 38 | EndGlobalSection 39 | GlobalSection(ExtensibilityGlobals) = postSolution 40 | SolutionGuid = {A052EDAB-5219-4283-A67C-735E69D7CEC8} 41 | EndGlobalSection 42 | EndGlobal 43 | -------------------------------------------------------------------------------- /EliteJournalReader/BioData.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class BioData 4 | { 5 | public string Genus { get; set; } 6 | public string Species { get; set; } 7 | public int Value { get; set; } 8 | public int Bonus { get; set; } 9 | } 10 | } -------------------------------------------------------------------------------- /EliteJournalReader/CargoTransfer.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace EliteJournalReader 8 | { 9 | public class CargoTransfer 10 | { 11 | public string Type { get; set; } 12 | public long Count { get; set; } 13 | public string Direction { get; set; } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /EliteJournalReader/Commodity.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Commodity 4 | { 5 | public string Name { get; set; } 6 | public string Name_Localised { get; set; } 7 | public int Count { get; set; } 8 | public int Stolen { get; set; } 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /EliteJournalReader/Conflict.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace EliteJournalReader 8 | { 9 | public class Conflict 10 | { 11 | public string WarType { get; set; } 12 | public string Status { get; set; } 13 | public ConflictFaction Faction1 { get; set; } 14 | public ConflictFaction Faction2 { get; set; } 15 | 16 | public override bool Equals(object obj) => Equals(obj as Conflict); 17 | 18 | public bool Equals(Conflict that) => that != null 19 | && that.WarType?.Equals(WarType) == true 20 | && that.Status?.Equals(Status) == true 21 | && that.Faction1?.Equals(Faction1) == true 22 | && that.Faction2?.Equals(Faction2) == true; 23 | 24 | public override int GetHashCode() 25 | { 26 | //https://stackoverflow.com/a/892640/3131828 27 | unchecked 28 | { 29 | int h = 23; 30 | h *= 31 + (WarType?.GetHashCode() ?? 0); 31 | h *= 31 + (Status?.GetHashCode() ?? 0); 32 | h *= 31 + (Faction1?.GetHashCode() ?? 0); 33 | h *= 31 + (Faction2?.GetHashCode() ?? 0); 34 | 35 | return h; 36 | } 37 | } 38 | 39 | public Conflict Clone() 40 | { 41 | var clone = (Conflict)MemberwiseClone(); 42 | clone.Faction1 = Faction1?.Clone(); 43 | clone.Faction2 = Faction2?.Clone(); 44 | return clone; 45 | } 46 | } 47 | 48 | public class ConflictFaction 49 | { 50 | public string Name { get; set; } 51 | public string Stake { get; set; } 52 | public int WonDays { get; set; } 53 | 54 | public override bool Equals(object obj) => Equals(obj as ConflictFaction); 55 | 56 | public bool Equals(ConflictFaction that) => that != null 57 | && that.Name?.Equals(Name) == true 58 | && that.Stake?.Equals(Stake) == true 59 | && that.WonDays == WonDays; 60 | 61 | public override int GetHashCode() 62 | { 63 | //https://stackoverflow.com/a/892640/3131828 64 | unchecked 65 | { 66 | int h = 23; 67 | h *= 31 + (Name?.GetHashCode() ?? 0); 68 | h *= 31 + (Stake?.GetHashCode() ?? 0); 69 | h *= 31 + WonDays.GetHashCode(); 70 | 71 | return h; 72 | } 73 | } 74 | 75 | public ConflictFaction Clone() => (ConflictFaction)MemberwiseClone(); 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /EliteJournalReader/Consumable.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Consumable 4 | { 5 | public string Name { get; set; } 6 | public string Name_Localised { get; set; } 7 | public string Type { get; set; } 8 | public string Type_Localised { get; set; } 9 | } 10 | } -------------------------------------------------------------------------------- /EliteJournalReader/Data.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Data 4 | { 5 | public string Name { get; set; } 6 | public string Name_Localised { get; set; } 7 | public long OwnerID { get; set; } 8 | public long MissionID { get; set; } 9 | public int Count { get; set; } 10 | } 11 | } -------------------------------------------------------------------------------- /EliteJournalReader/Economy.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace EliteJournalReader 8 | { 9 | public class Economy 10 | { 11 | public string Name { get; set; } 12 | public string Name_Localised { get; set; } 13 | public double Proportion { get; set; } 14 | 15 | public override bool Equals(object obj) => Equals(obj as Economy); 16 | 17 | public bool Equals(Economy that) => that != null 18 | && that.Name?.Equals(Name) == true 19 | && that.Proportion == Proportion; 20 | 21 | public override int GetHashCode() 22 | { 23 | //https://stackoverflow.com/a/892640/3131828 24 | unchecked 25 | { 26 | int h = 23; 27 | h *= 31 + (Name?.GetHashCode() ?? 0); 28 | h *= 31 + Proportion.GetHashCode(); 29 | 30 | return h; 31 | } 32 | } 33 | 34 | public Economy Clone() => (Economy)MemberwiseClone(); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /EliteJournalReader/EliteJournalReader.csproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | net481 5 | 4.0.32 6 | 7 | true 8 | false 9 | Copyright © Maurits Elbers (@MagicMau) 2015-2025. Elite: Dangerous and related material is © Frontier Developments plc 10 | MagicMau 11 | EliteJournalReader 12 | 4.0.32 13 | MIT 14 | MagicMau 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | false 25 | true 26 | true 27 | false 28 | 29 | 30 | 31 | 32 | TextTemplatingFileGenerator 33 | VersionAutoIncrementer.cs 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | True 44 | True 45 | VersionAutoIncrementer.tt 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /EliteJournalReader/EngineeredModule.cs: -------------------------------------------------------------------------------- 1 | using System.Collections.Generic; 2 | 3 | namespace EliteJournalReader 4 | { 5 | public class EngineeredModule 6 | { 7 | public string Engineer { get; set; } 8 | public long EngineerID { get; set; } 9 | public long BlueprintID { get; set; } 10 | public string BlueprintName { get; set; } 11 | public int Level { get; set; } 12 | public double Quality { get; set; } 13 | public string ExperimentalEffect { get; set; } 14 | public EngineeringModifiers[] Modifiers { get; set; } 15 | 16 | public EngineeredModule Clone() => (EngineeredModule)MemberwiseClone(); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /EliteJournalReader/EngineeringModifiers.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Newtonsoft.Json; 3 | using Newtonsoft.Json.Converters; 4 | using Newtonsoft.Json.Linq; 5 | 6 | namespace EliteJournalReader 7 | { 8 | [JsonConverter(typeof(EngineeringModifiersCoverter))] 9 | public class EngineeringModifiers 10 | { 11 | [JsonConverter(typeof(ExtendedStringEnumConverter))] 12 | public ModuleAttribute Label { get; set; } 13 | 14 | public double Value { get; set; } 15 | public string ValueStr { get; set; } 16 | public string ValueStr_Localised { get; set; } 17 | public double OriginalValue { get; set; } 18 | public string OriginalValueStr { get; set; } 19 | public string OriginalValueStr_Localised { get; set; } 20 | public bool LessIsGood { get; set; } 21 | } 22 | 23 | internal class EngineeringModifiersCoverter : JsonConverter 24 | { 25 | public override bool CanConvert(Type objectType) => objectType == typeof(EngineeringModifiers); 26 | 27 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) 28 | { 29 | var mod = new EngineeringModifiers(); 30 | var obj = JObject.Load(reader); 31 | 32 | mod.Label = (ModuleAttribute)Enum.Parse(typeof(ModuleAttribute), obj.Value(nameof(mod.Label))); 33 | mod.LessIsGood = obj.Value(nameof(mod.LessIsGood)); 34 | 35 | var valueToken = obj[nameof(mod.Value)]; 36 | if (valueToken?.Type == JTokenType.Float) 37 | { 38 | mod.Value = valueToken.Value(); 39 | } 40 | else if (valueToken?.Type == JTokenType.String) 41 | { 42 | mod.ValueStr = valueToken.Value(); 43 | } 44 | else if (valueToken == null) 45 | { 46 | mod.ValueStr = obj[nameof(mod.ValueStr)]?.Value(); 47 | mod.ValueStr_Localised = obj[nameof(mod.ValueStr_Localised)]?.Value(); 48 | } 49 | 50 | var origToken = obj[nameof(mod.OriginalValue)]; 51 | if (origToken?.Type == JTokenType.Float) 52 | { 53 | mod.OriginalValue = origToken.Value(); 54 | } 55 | else if (origToken?.Type == JTokenType.String) 56 | { 57 | mod.OriginalValueStr = origToken.Value(); 58 | } 59 | else if (origToken == null) 60 | { 61 | mod.OriginalValueStr = obj[nameof(mod.OriginalValueStr)]?.Value(); 62 | mod.OriginalValueStr_Localised = obj[nameof(mod.OriginalValueStr_Localised)]?.Value(); 63 | } 64 | 65 | return mod; 66 | } 67 | 68 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { } 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/AfmuRepairsEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/AfmuRepairsEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/AppliedToSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class AppliedToSquadronEvent : JournalEvent 11 | { 12 | public AppliedToSquadronEvent() : base("AppliedToSquadron") { } 13 | 14 | public class AppliedToSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ApproachBodyEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ApproachBodyEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ApproachSettlementEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ApproachSettlementEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/AsteroidCrackedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/AsteroidCrackedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/BackpackEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class BackpackEvent : JournalEvent 11 | { 12 | public BackpackEvent() : base("Backpack") { } 13 | 14 | public class BackpackEventArgs : JournalEventArgs 15 | { 16 | public Item[] Items { get; set; } 17 | public ScanItemComponent[] Components { get; set; } 18 | public Consumable[] Consumables { get; set; } 19 | public Data[] Data { get; set; } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/BackpackMaterialsEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class BackpackMaterialsEvent : JournalEvent 11 | { 12 | public BackpackMaterialsEvent() : base("BackpackMaterials") { } 13 | 14 | public class BackpackMaterialsEventArgs : JournalEventArgs 15 | { 16 | public List Items { get; set; } 17 | 18 | public List Components { get; set; } 19 | 20 | public List Consumables { get; set; } 21 | 22 | public List Data { get; set; } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/BookDropshipEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class BookDropshipEvent : JournalEvent 11 | { 12 | public BookDropshipEvent() : base("BookDropship") { } 13 | 14 | public class BookDropshipEventArgs : JournalEventArgs 15 | { 16 | public long Cost { get; set; } 17 | 18 | public string DestinationSystem { get; set; } 19 | 20 | public string DestinationLocation { get; set; } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/BookTaxiEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class BookTaxiEvent : JournalEvent 11 | { 12 | public BookTaxiEvent() : base("BookTaxi") { } 13 | 14 | public class BookTaxiEventArgs : JournalEventArgs 15 | { 16 | public long Cost { get; set; } 17 | 18 | public string DestinationSystem { get; set; } 19 | 20 | public string DestinationLocation { get; set; } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/BountyEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | // When written: player is awarded a bounty for a kill 11 | //Parameters: 12 | //� Rewards: an array of Faction names and the Reward values, as the target can have multiple bounties payable by different factions 13 | //� VictimFaction: the victim�s faction 14 | //� TotalReward 15 | //� SharedWithOthers: if credit for the kill is shared with other players, this has the number of other players involved 16 | public class BountyEvent : JournalEvent 17 | { 18 | public BountyEvent() : base("Bounty") { } 19 | 20 | public class BountyEventArgs : JournalEventArgs 21 | { 22 | public class FactionReward 23 | { 24 | public string Faction { get; set; } 25 | public int Reward { get; set; } 26 | } 27 | 28 | public string PilotName { get; set; } 29 | public string PilotName_Localised { get; set; } 30 | public string Target { get; set; } 31 | public string Target_Localised { get; set; } 32 | 33 | public FactionReward[] Rewards { get; set; } 34 | public string VictimFaction { get; set; } 35 | public int TotalReward { get; set; } 36 | public int SharedWithOthers { get; set; } = 0; 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/BuyAmmoEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/BuyAmmoEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/BuyDronesEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/BuyDronesEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/BuyExplorationDataEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/BuyExplorationDataEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/BuyMicroResourcesEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class BuyMicroResourcesEvent : JournalEvent 11 | { 12 | public BuyMicroResourcesEvent() : base("BuyMicroResources") { } 13 | 14 | public class BuyMicroResourcesEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public string Category { get; set; } 19 | public string Category_Localised { get; set; } 20 | public int Count { get; set; } 21 | public int Price { get; set; } 22 | public long MarketID { get; set; } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/BuySuitEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class BuySuitEvent : JournalEvent 11 | { 12 | public BuySuitEvent() : base("BuySuit") { } 13 | 14 | public class BuySuitEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public int Price { get; set; } 19 | public long SuitID { get; set; } 20 | 21 | public string[] SuitMods { get; set; } 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/BuyTradeDataEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/BuyTradeDataEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/BuyWeaponEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class BuyWeaponEvent : JournalEvent 11 | { 12 | public BuyWeaponEvent() : base("BuyWeapon") { } 13 | 14 | public class BuyWeaponEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public int Price { get; set; } 19 | public long SuitModuleID { get; set; } 20 | public string Class { get; set; } 21 | public string[] WeaponMods { get; set; } 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/CancelDropshipEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class CancelDropshipEvent : JournalEvent 11 | { 12 | public CancelDropshipEvent() : base("CancelDropship") { } 13 | 14 | public class CancelDropshipEventArgs : JournalEventArgs 15 | { 16 | public int Refund { get; set; } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/CancelTaxiEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class CancelTaxiEvent : JournalEvent 11 | { 12 | public CancelTaxiEvent() : base("CancelTaxi") { } 13 | 14 | public class CancelTaxiEventArgs : JournalEventArgs 15 | { 16 | public int Refund { get; set; } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/CapShipBondEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CapShipBondEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CargoDepotEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CargoDepotEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CargoEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CargoEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CargoTransferEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CargoTransferEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierBankTransferEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierBankTransferEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierBuyEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierBuyEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierCancelDecommissionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierCancelDecommissionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierCrewServicesEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierCrewServicesEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierDecommissionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierDecommissionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierDepositFuelEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierDepositFuelEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierDockingPermissionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierDockingPermissionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierFinanceEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierFinanceEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierJumpCancelledEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class CarrierJumpCancelledEvent : JournalEvent 11 | { 12 | public CarrierJumpCancelledEvent() : base("CarrierJumpCancelled") { } 13 | 14 | public class CarrierJumpCancelledEventArgs : JournalEventArgs 15 | { 16 | public long CarrierID { get; set; } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierJumpRequestEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json; 7 | using Newtonsoft.Json.Converters; 8 | using Newtonsoft.Json.Linq; 9 | 10 | namespace EliteJournalReader.Events 11 | { 12 | //When written: If you should ever reset your game 13 | //Parameters: 14 | //� Name: commander name 15 | public class CarrierJumpRequestEvent : JournalEvent 16 | { 17 | public CarrierJumpRequestEvent() : base("CarrierJumpRequest") { } 18 | 19 | public class CarrierJumpRequestEventArgs : JournalEventArgs 20 | { 21 | public long CarrierID { get; set; } 22 | public string SystemName { get; set; } 23 | public long SystemID { get; set; } 24 | public string Body { get; set; } 25 | public int BodyID { get; set; } 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierLocationEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | using Newtonsoft.Json; 8 | using Newtonsoft.Json.Converters; 9 | 10 | namespace EliteJournalReader.Events 11 | { 12 | //{ 13 | // "timestamp": "2025-03-19T19:02:10Z", 14 | // "event": "CarrierLocation", 15 | // "CarrierID": 3705689344, 16 | // "StarSystem": "HR 3635", 17 | // "SystemAddress": 1694121347427, 18 | // "BodyID": 1 19 | //} 20 | public class CarrierLocationEvent : JournalEvent 21 | { 22 | public CarrierLocationEvent() : base("CarrierLocation") { } 23 | 24 | public class CarrierLocationEventArgs : JournalEventArgs 25 | { 26 | public long CarrierID { get; set; } 27 | public string StarSystem { get; set; } 28 | public long SystemAddress { get; set; } 29 | public int BodyID { get; set; } 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierModulePackEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierModulePackEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierNameChangedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class CarrierNameChangedEvent : JournalEvent 11 | { 12 | public CarrierNameChangedEvent() : base("CarrierNameChanged") { } 13 | 14 | public class CarrierNameChangedEventArgs : JournalEventArgs 15 | { 16 | public long CarrierID { get; set; } 17 | public string Callsign { get; set; } 18 | public string Name { get; set; } 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierShipPackEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierShipPackEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierStatsEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierStatsEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CarrierTradeOrderEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CarrierTradeOrderEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ChangeCrewRoleEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ChangeCrewRoleEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ClearSavedGameEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ClearSavedGameEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CockpitBreachedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when cockpit canopy is breached 11 | //Parameters: none 12 | public class CockpitBreachedEvent : JournalEvent 13 | { 14 | public CockpitBreachedEvent() : base("CockpitBreached") { } 15 | 16 | public class CockpitBreachedEventArgs : JournalEventArgs 17 | { 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CodexEntryEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CodexEntryEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CollectCargoEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when scooping cargo from space or planet surface 11 | //Parameters: 12 | //� Type: cargo type 13 | //� Stolen: whether stolen goods 14 | public class CollectCargoEvent : JournalEvent 15 | { 16 | public CollectCargoEvent() : base("CollectCargo") { } 17 | 18 | public class CollectCargoEventArgs : JournalEventArgs 19 | { 20 | public string Type { get; set; } 21 | public string Type_Localised { get; set; } 22 | public bool Stolen { get; set; } 23 | public long MissionID { get; set; } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CollectItemsEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class CollectItemsEvent : JournalEvent 11 | { 12 | public CollectItemsEvent() : base("CollectItems") { } 13 | 14 | public class CollectItemsEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public string Type { get; set; } 19 | public string Type_Localised { get; set; } 20 | public long OwnerID { get; set; } 21 | public int Count { get; set; } 22 | public bool Stolen { get; set; } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/ColonisationConstructionDepotEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class ColonisationConstructionDepotEvent : JournalEvent 11 | { 12 | public ColonisationConstructionDepotEvent() : base("ColonisationConstructionDepot") { } 13 | 14 | public class ColonisationConstructionDepotEventArgs : JournalEventArgs 15 | { 16 | public long MarketID { get; set; } 17 | public double ConstructionProgress { get; set; } 18 | public bool ConstructionComplete { get; set; } 19 | public bool ConstructionFailed { get; set; } 20 | public ColonizationResource[] ResourcesRequired { get; set; } 21 | 22 | } 23 | } 24 | 25 | public class ColonizationResource 26 | { 27 | public string Name { get; set; } 28 | public string Name_Localised { get; set; } 29 | public int RequiredAmount { get; set; } 30 | public int ProvidedAmount { get; set; } 31 | public int Payment { get; set; } 32 | } 33 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/ColonisationContributionEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class ColonisationContributionEvent : JournalEvent 11 | { 12 | public ColonisationContributionEvent() : base("ColonisationContribution") { } 13 | 14 | public class ColonisationContributionEventArgs : JournalEventArgs 15 | { 16 | public long MarketID { get; set; } 17 | public ColonizationContribution[] Contributions { get; set; } 18 | 19 | } 20 | } 21 | 22 | public class ColonizationContribution 23 | { 24 | public string Name { get; set; } 25 | public string Name_Localised { get; set; } 26 | public int Amount { get; set; } 27 | } 28 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/CommanderEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CommanderEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CommitCrimeEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CommitCrimeEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CommunityGoalDiscardEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CommunityGoalDiscardEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CommunityGoalEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CommunityGoalEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CommunityGoalJoinEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CommunityGoalJoinEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CommunityGoalRewardEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CommunityGoalRewardEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ContinuedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ContinuedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/CreateSuitLoadoutEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class CreateSuitLoadoutEvent : JournalEvent 11 | { 12 | public CreateSuitLoadoutEvent() : base("CreateSuitLoadout") { } 13 | 14 | public class CreateSuitLoadoutEventArgs : JournalEventArgs 15 | { 16 | public long SuitID { get; set; } 17 | public string SuitName { get; set; } 18 | public long LoadoutID { get; set; } 19 | public string LoadoutName { get; set; } 20 | public List Modules { get; set; } 21 | public string[] SuitMods; 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrewAssignEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when changing the task assignment of a member of crew 11 | //Parameters: 12 | //� Name 13 | //� Role 14 | public class CrewAssignEvent : JournalEvent 15 | { 16 | public CrewAssignEvent() : base("CrewAssign") { } 17 | 18 | public class CrewAssignEventArgs : JournalEventArgs 19 | { 20 | public string Name { get; set; } 21 | public long CrewID { get; set; } 22 | public string Role { get; set; } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrewFireEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when dismissing a member of crew 11 | //Parameters: 12 | //� Name 13 | public class CrewFireEvent : JournalEvent 14 | { 15 | public CrewFireEvent() : base("CrewFire") { } 16 | 17 | public class CrewFireEventArgs : JournalEventArgs 18 | { 19 | public string Name { get; set; } 20 | public long CrewID { get; set; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrewHireEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when engaging a new member of crew 11 | //Parameters: 12 | //� Name 13 | public class CrewHireEvent : JournalEvent 14 | { 15 | public CrewHireEvent() : base("CrewHire") { } 16 | 17 | public class CrewHireEventArgs : JournalEventArgs 18 | { 19 | public long CrewID { get; set; } 20 | public string Name { get; set; } 21 | public string Faction { get; set; } 22 | public int Cost { get; set; } 23 | public CombatRank CombatRank { get; set; } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrewLaunchFighterEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when in multicrew, in Helm player's log, when a crew member launches a fighter 11 | //Parameters: 12 | //� Crew: name of crew member launching in fighter 13 | public class CrewLaunchFighterEvent : JournalEvent 14 | { 15 | public CrewLaunchFighterEvent() : base("CrewLaunchFighter") { } 16 | 17 | public class CrewLaunchFighterEventArgs : JournalEventArgs 18 | { 19 | public string Crew { get; set; } 20 | public long CrewID { get; set; } 21 | public long ID { get; set; } 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrewMemberJoinsEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: When another player joins your ship's crew 11 | //Parameters: 12 | //� Crew: player's commander name 13 | public class CrewMemberJoinsEvent : JournalEvent 14 | { 15 | public CrewMemberJoinsEvent() : base("CrewMemberJoins") { } 16 | 17 | public class CrewMemberJoinsEventArgs : JournalEventArgs 18 | { 19 | public string Crew { get; set; } 20 | public long CrewID { get; set; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrewMemberQuitsEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: When another player leaves your ship's crew 11 | //Parameters: 12 | //� Crew: player's commander name 13 | public class CrewMemberQuitsEvent : JournalEvent 14 | { 15 | public CrewMemberQuitsEvent() : base("CrewMemberQuits") { } 16 | 17 | public class CrewMemberQuitsEventArgs : JournalEventArgs 18 | { 19 | public string Crew { get; set; } 20 | public long CrewID { get; set; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrewMemberRoleChangeEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: When another player joins your ship's crew 11 | //Parameters: 12 | //� Crew: player's commander name 13 | //� Role: selected role 14 | public class CrewMemberRoleChangeEvent : JournalEvent 15 | { 16 | public CrewMemberRoleChangeEvent() : base("CrewMemberRoleChange") { } 17 | 18 | public class CrewMemberRoleChangeEventArgs : JournalEventArgs 19 | { 20 | public string Crew { get; set; } 21 | public long CrewID { get; set; } 22 | public string Role { get; set; } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/CrimeVictimEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/CrimeVictimEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DataScannedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DataScannedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DatalinkScanEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DatalinkScanEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DatalinkVoucherEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DatalinkVoucherEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DeleteSuitLoadoutEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class DeleteSuitLoadoutEvent : JournalEvent 11 | { 12 | public DeleteSuitLoadoutEvent() : base("DeleteSuitLoadout") { } 13 | 14 | public class DeleteSuitLoadoutEventArgs : JournalEventArgs 15 | { 16 | public long SuitID { get; set; } 17 | public string SuitName { get; set; } 18 | public long LoadoutID { get; set; } 19 | public string LoadoutName { get; set; } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/DiedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DiedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DisbandedSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class DisbandedSquadronEvent : JournalEvent 11 | { 12 | public DisbandedSquadronEvent() : base("DisbandedSquadron") { } 13 | 14 | public class DisbandedSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/DiscoveryScanEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DiscoveryScanEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DisembarkEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class DisembarkEvent : JournalEvent 11 | { 12 | public DisembarkEvent() : base("Disembark") { } 13 | 14 | public class DisembarkEventArgs : JournalEventArgs 15 | { 16 | public bool SRV { get; set; } 17 | public bool Taxi { get; set; } 18 | public bool Multicrew { get; set; } 19 | public long ID { get; set; } 20 | public string StarSystem { get; set; } 21 | public long SystemAddress { get; set; } 22 | public string Body { get; set; } 23 | public int BodyID { get; set; } 24 | public bool OnStation { get; set; } 25 | public bool OnPlanet { get; set; } 26 | public string StationName { get; set; } 27 | public string StationType { get; set; } 28 | public long MarketID { get; set; } 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockFighterEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when docking a fighter back with the mothership 11 | //Parameters: none 12 | public class DockFighterEvent : JournalEvent 13 | { 14 | public DockFighterEvent() : base("DockFighter") { } 15 | 16 | public class DockFighterEventArgs : JournalEventArgs 17 | { 18 | public long ID { get; set; } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockSRVEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when docking an SRV with the ship 11 | //Parameters: none 12 | public class DockSRVEvent : JournalEvent 13 | { 14 | public DockSRVEvent() : base("DockSRV") { } 15 | 16 | public class DockSRVEventArgs : JournalEventArgs 17 | { 18 | public string SRVType { get; set; } 19 | public string SRVType_Localised { get; set; } 20 | public long ID { get; set; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | // When written: when landing at landing pad in a space station, outpost, or surface settlement 11 | // Parameters: 12 | //� StationName: name of station 13 | //� MarketID 14 | //� SystemAddress 15 | //� StationType: type of station 16 | //� StarSystem: name of system 17 | //� CockpitBreach:true (only if landing with breached cockpit) 18 | //� StationFaction: station�s controlling faction 19 | //� FactionState 20 | //� StationAllegiance 21 | //� StationEconomy : (station's primary economy) 22 | //� StationEconomies: (array of name and proportion values) 23 | //� StationGovernment 24 | //� DistFromStarLS 25 | //� StationServices: (Array of strings) 26 | //� Wanted: (only if docking when wanted locally) 27 | //� ActiveFine: true (if any fine is active) 28 | //The �anonymous docking� protocol comes into effect if you�re either Wanted(ie have a local bounty) or have an ActiveFine 29 | public class DockedEvent : JournalEvent 30 | { 31 | public DockedEvent() : base("Docked") { } 32 | 33 | public class DockedEventArgs : JournalEventArgs 34 | { 35 | public string StarSystem { get; set; } 36 | public string StationName { get; set; } 37 | public long SystemAddress { get; set; } 38 | public long MarketID { get; set; } 39 | public string StationType { get; set; } 40 | public bool CockpitBreach { get; set; } = false; 41 | public Faction StationFaction { get; set; } 42 | public string StationAllegiance { get; set; } 43 | public string StationEconomy { get; set; } 44 | public string StationEconomy_Localised { get; set; } 45 | public Economy[] StationEconomies { get; set; } 46 | public string StationGovernment { get; set; } 47 | public string StationGovernment_Localised { get; set; } 48 | public double? DistFromStarLS { get; set; } 49 | public string[] StationServices { get; set; } 50 | public bool Wanted { get; set; } = false; 51 | public bool ActiveFine { get; set; } = false; 52 | public LandingPads LandingPads { get; set; } 53 | 54 | public bool Taxi { get; set; } 55 | 56 | public bool Multicrew { get; set; } 57 | 58 | public class Economy 59 | { 60 | public string Name { get; set; } 61 | public string Name_Localised { get; set; } 62 | public double Proportion { get; set; } 63 | } 64 | 65 | public override JournalEventArgs Clone() 66 | { 67 | var clone = (DockedEventArgs)base.Clone(); 68 | clone.StationFaction = StationFaction?.Clone(); 69 | return clone; 70 | } 71 | } 72 | } 73 | } 74 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockingCancelledEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DockingCancelledEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockingDeniedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DockingDeniedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockingGrantedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DockingGrantedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockingRequestedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when the player requests docking at a station 11 | //Parameters: 12 | //� StationName: name of station 13 | public class DockingRequestedEvent : JournalEvent 14 | { 15 | public DockingRequestedEvent() : base("DockingRequested") { } 16 | 17 | public class DockingRequestedEventArgs : JournalEventArgs 18 | { 19 | public string StationName { get; set; } 20 | public string StationType { get; set; } 21 | public long MarketID { get; set; } 22 | public LandingPads LandingPads { get; set; } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/DockingTimeoutEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/DockingTimeoutEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/DropItemsEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class DropItemsEvent : JournalEvent 11 | { 12 | public DropItemsEvent() : base("DropItems") { } 13 | 14 | public class DropItemsEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public string Type { get; set; } 19 | public string Type_Localised { get; set; } 20 | public long OwnerID { get; set; } 21 | public long MissionID { get; set; } 22 | public int Count { get; set; } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/DropShipDeployEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class DropShipDeployEvent : JournalEvent 11 | { 12 | public DropShipDeployEvent() : base("DropShipDeploy") { } 13 | 14 | public class DropShipDeployEventArgs : JournalEventArgs 15 | { 16 | public string StarSystem { get; set; } 17 | public long SystemAddress { get; set; } 18 | public string Body { get; set; } 19 | public int BodyID { get; set; } 20 | public bool OnStation { get; set; } 21 | public bool OnPlanet { get; set; } 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/EjectCargoEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: 11 | //Parameters: 12 | //� Type: cargo type 13 | //� Count: number of units 14 | //� Abandoned: whether �abandoned� 15 | public class EjectCargoEvent : JournalEvent 16 | { 17 | public EjectCargoEvent() : base("EjectCargo") { } 18 | 19 | public class EjectCargoEventArgs : JournalEventArgs 20 | { 21 | public string Type { get; set; } 22 | public string Type_Localised { get; set; } 23 | public int Count { get; set; } 24 | public bool Abandoned { get; set; } 25 | public string PowerplayOrigin { get; set; } 26 | public long MissionID { get; set; } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/EmbarkEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class EmbarkEvent : JournalEvent 11 | { 12 | public EmbarkEvent() : base("Embark") { } 13 | 14 | public class EmbarkEventArgs : JournalEventArgs 15 | { 16 | public bool SRV { get; set; } 17 | public bool Taxi { get; set; } 18 | public bool Multicrew { get; set; } 19 | public long ID { get; set; } 20 | public string StarSystem { get; set; } 21 | public long SystemAddress { get; set; } 22 | public string Body { get; set; } 23 | public int BodyID { get; set; } 24 | public bool OnStation { get; set; } 25 | public bool OnPlanet { get; set; } 26 | public string StationName { get; set; } 27 | public string StationType { get; set; } 28 | public long MarketID { get; set; } 29 | } 30 | } 31 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/EndCrewSessionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/EndCrewSessionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/EngineerContributionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/EngineerContributionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/EngineerCraftEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/EngineerCraftEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/EngineerLegacyConvertEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when converting a pre-2.4 engineered module 11 | //This is generated when converting, or previewing a conversion of a legacy module to the new system. 12 | //Due to the nature of the changes made for 2.5, modules generated in the old system are not compatible with 13 | //the new crafting system, so players will be unable to craft with them.However, players will be given the 14 | //opportunity to convert their legacy modules to the new format with the caveat that converted modules will 15 | //be a recipe level below what they were before the conversion.The EngineerLegacyConvert journal entry is 16 | //generated when converting a recipe, or just previewing a conversion, so some of our creative third party 17 | //developers out there may be able to make tools to show how a ship loadout compares before and after 18 | //converting their modules.The entry itself is the same as the EngineerCraft entry, minus the ingredients 19 | //data (since no materials are required to convert), but plus an "IsPreview" bool to indicate whether this 20 | //entry has been generated from a conversion, or just a preview. 21 | 22 | public class EngineerLegacyConvertEvent : JournalEvent 23 | { 24 | public EngineerLegacyConvertEvent() : base("EngineerLegacyConvert") { } 25 | 26 | public class EngineerLegacyConvertEventArgs : JournalEventArgs 27 | { 28 | public string Engineer { get; set; } 29 | public long EngineerID { get; set; } 30 | public string Blueprint { get; set; } 31 | public long BlueprintID { get; set; } 32 | public int Level { get; set; } 33 | public double Quality { get; set; } 34 | public EngineeringModifiers[] Modifiers { get; set; } 35 | public bool IsPreview { get; set; } 36 | } 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/EngineerProgressEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/EngineerProgressEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/EscapeInterdictionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/EscapeInterdictionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/FSDJumpEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/FSDJumpEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/FSDTargetEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | using Newtonsoft.Json; 8 | using Newtonsoft.Json.Converters; 9 | 10 | namespace EliteJournalReader.Events 11 | { 12 | //When written: when selecting a star system to jump to 13 | //Note, when following a multi-jump route, this will typically appear for the next star, 14 | //during a jump, ie after �StartJump� but before the �FSDJump� 15 | //Parameters: 16 | //� Starsystem 17 | //� Name 18 | 19 | public class FSDTargetEvent : JournalEvent 20 | { 21 | public FSDTargetEvent() : base("FSDTarget") { } 22 | 23 | public class FSDTargetEventArgs : JournalEventArgs 24 | { 25 | public string Name { get; set; } 26 | public long SystemAddress { get; set; } 27 | public int RemainingJumpsInRoute { get; set; } 28 | public string StarClass { get; set; } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/FSSAllBodiesFoundEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class FSSAllBodiesFoundEvent : JournalEvent 11 | { 12 | public FSSAllBodiesFoundEvent() : base("FSSAllBodiesFound") { } 13 | 14 | public class FSSAllBodiesFoundEventArgs : JournalEventArgs 15 | { 16 | public string SystemName { get; set; } 17 | 18 | public long SystemAddress { get; set; } 19 | 20 | public int Count { get;set; } 21 | public int BodyCount { get; set; } 22 | public int NonBodyCount { get; set; } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/FSSBodySignalsEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/FSSBodySignalsEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/FSSDiscoveryScanEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/FSSDiscoveryScanEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/FSSSignalDiscoveredEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/FSSSignalDiscoveredEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/FactionKillBondEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/FactionKillBondEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/FetchRemoteModuleEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when requesting a module is transferred from storage at another station 11 | //Parameters: 12 | //� StorageSlot 13 | //� StoredItem 14 | //� ServerId 15 | //� TransferCost 16 | //� Ship 17 | //� ShipId 18 | //� TransferTime: (in seconds) 19 | public class FetchRemoteModuleEvent : JournalEvent 20 | { 21 | public FetchRemoteModuleEvent() : base("FetchRemoteModule") { } 22 | 23 | public class FetchRemoteModuleEventArgs : JournalEventArgs 24 | { 25 | public string StorageSlot { get; set; } 26 | public string Ship { get; set; } 27 | public long ShipID { get; set; } 28 | public string StoredItem { get; set; } 29 | public string StoredItem_Localised { get; set; } 30 | public string ServerId { get; set; } 31 | public long TransferCost { get; set; } 32 | public long TransferTime { get; set; } 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/FighterDestroyedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when a ship-launched fighter is destroyed 11 | //Parameters: none 12 | public class FighterDestroyedEvent : JournalEvent 13 | { 14 | public FighterDestroyedEvent() : base("FighterDestroyed") { } 15 | 16 | public class FighterDestroyedEventArgs : JournalEventArgs 17 | { 18 | public long ID { get; set; } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/FighterRebuiltEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when a ship's fighter is rebuilt in the hangar 11 | //Parameters: none 12 | public class FighterRebuiltEvent : JournalEvent 13 | { 14 | public FighterRebuiltEvent() : base("FighterRebuilt") { } 15 | 16 | public class FighterRebuiltEventArgs : JournalEventArgs 17 | { 18 | public string Loadout { get; set; } 19 | public long ID { get; set; } 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/FileheaderEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class FileheaderEvent : JournalEvent 11 | { 12 | public FileheaderEvent() : base("Fileheader") { } 13 | 14 | public class FileheaderEventArgs : JournalEventArgs 15 | { 16 | public string GameVersion { get; set; } 17 | public string Build { get; set; } 18 | public string Language { get; set; } 19 | public int Part { get; set; } 20 | public bool Odyssey { get; set; } 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/FriendsEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/FriendsEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/FuelScoopEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/FuelScoopEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/HeatDamageEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when taking damage due to overheating 11 | //Parameters:none 12 | public class HeatDamageEvent : JournalEvent 13 | { 14 | public HeatDamageEvent() : base("HeatDamage") { } 15 | 16 | public class HeatDamageEventArgs : JournalEventArgs 17 | { 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/HeatWarningEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/HeatWarningEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/HullDamageEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/HullDamageEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/InterdictedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/InterdictedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/InterdictionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/InterdictionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/InvitedToSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class InvitedToSquadronEvent : JournalEvent 11 | { 12 | public InvitedToSquadronEvent() : base("InvitedToSquadron") { } 13 | 14 | public class InvitedToSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/IsLiveEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class IsLiveEvent : JournalEvent 11 | { 12 | public IsLiveEvent() : base("MagicMau.IsLiveEvent") { } 13 | 14 | public class IsLiveEventArgs : JournalEventArgs 15 | { 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/JetConeBoostEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/JetConeBoostEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/JetConeDamageEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/JetConeDamageEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/JoinACrewEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/JoinACrewEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/JoinedSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class JoinedSquadronEvent : JournalEvent 11 | { 12 | public JoinedSquadronEvent() : base("JoinedSquadron") { } 13 | 14 | public class JoinedSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/KickCrewMemberEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/KickCrewMemberEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/KickedFromSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class KickedFromSquadronEvent : JournalEvent 11 | { 12 | public KickedFromSquadronEvent() : base("KickedFromSquadron") { } 13 | 14 | public class KickedFromSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/LaunchDroneEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/LaunchDroneEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/LaunchFighterEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when launching a fighter 11 | //Parameters: 12 | //� Loadout 13 | //� PlayerControlled: whether player is controlling the fighter from launch 14 | public class LaunchFighterEvent : JournalEvent 15 | { 16 | public LaunchFighterEvent() : base("LaunchFighter") { } 17 | 18 | public class LaunchFighterEventArgs : JournalEventArgs 19 | { 20 | public string Loadout { get; set; } 21 | public bool PlayerControlled { get; set; } 22 | public long ID { get; set; } 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/LaunchSRVEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: deploying the SRV from a ship onto planet surface 11 | //Parameters: 12 | //� Loadout 13 | public class LaunchSRVEvent : JournalEvent 14 | { 15 | public LaunchSRVEvent() : base("LaunchSRV") { } 16 | 17 | public class LaunchSRVEventArgs : JournalEventArgs 18 | { 19 | public string SRVType { get; set; } 20 | public string SRVType_Localised { get; set; } 21 | public string Loadout { get; set; } 22 | public long ID { get; set; } 23 | public bool PlayerControlled { get; set; } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/LeaveBodyEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/LeaveBodyEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/LeftSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class LeftSquadronEvent : JournalEvent 11 | { 12 | public LeftSquadronEvent() : base("LeftSquadron") { } 13 | 14 | public class LeftSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/LiftoffEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/LiftoffEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/LoadGameEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json; 7 | using Newtonsoft.Json.Converters; 8 | using Newtonsoft.Json.Linq; 9 | 10 | namespace EliteJournalReader.Events 11 | { 12 | public class LoadGameEvent : JournalEvent 13 | { 14 | //When written: at startup, when loading from main menu into game 15 | //Parameters: 16 | //� Commander: commander name 17 | //� Horizons: bool 18 | //� Ship: current ship type 19 | //� ShipID: ship id number 20 | //� StartLanded: true (only present if landed) 21 | //� StartDead:true (only present if starting dead: see �Resurrect�) 22 | //� GameMode: Open, Solo or Group 23 | //� Group: name of group (if in a group) 24 | //� Credits: current credit balance 25 | //� Loan: current loan 26 | //� ShipName: user-defined ship name 27 | //� ShipIdent: user-defined ship ID string 28 | //� FuelLevel: current fuel 29 | //� FuelCapacity: size of main tank 30 | 31 | public LoadGameEvent() : base("LoadGame") { } 32 | 33 | public class LoadGameEventArgs : JournalEventArgs 34 | { 35 | public string Commander { get; set; } 36 | public string FID { get; set; } 37 | public bool Horizons { get; set; } 38 | 39 | public bool Odyssey { get; set; } 40 | public string Ship { get; set; } 41 | public string Ship_Localised { get; set; } 42 | public long ShipID { get; set; } 43 | public bool StartLanded { get; set; } = false; 44 | public bool StartDead { get; set; } = false; 45 | 46 | [JsonConverter(typeof(ExtendedStringEnumConverter))] 47 | public GameMode GameMode { get; set; } 48 | 49 | public string Group { get; set; } 50 | public long Credits { get; set; } 51 | public int Loan { get; set; } 52 | public string ShipName { get; set; } 53 | public string ShipIdent { get; set; } 54 | public double FuelLevel { get; set; } 55 | public double FuelCapacity { get; set; } 56 | 57 | public string Language { get; set; } 58 | public string GameVersion { get; set; } 59 | public string Build { get; set; } 60 | } 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/LoadoutEquipModuleEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class LoadoutEquipModuleEvent : JournalEvent 11 | { 12 | public LoadoutEquipModuleEvent() : base("LoadoutEquipModule") { } 13 | 14 | public class LoadoutEquipModuleEventArgs : JournalEventArgs 15 | { 16 | public long SuitID { get; set; } 17 | public string SuitName { get; set; } 18 | public long LoadoutID { get; set; } 19 | public string LoadoutName { get; set; } 20 | public string ModuleName { get; set; } 21 | public long SuitModuleID { get; set; } 22 | public string Class { get; set; } 23 | public string[] WeaponMods { get; set; } 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/LoadoutEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: at startup, when loading from main menu, or when switching ships, 11 | //or after changing the ship in Outfitting, or when docking SRV back in mothership 12 | //Parameters: 13 | //• Ship: current ship type 14 | //• ShipID: ship id number(indicates which of your ships you are in) 15 | //• ShipName: user-defined ship name 16 | //• ShipIdent: user-defined ship ID string 17 | //• HullValue – may not always be present 18 | //• ModulesValue – may not always be present 19 | //• HullHealth 20 | //• UnladenMass – Mass of Hull and Modules, excludes fuel and cargo 21 | //• FuelCapacity: { Main: , Reserve: } 22 | //• CargoCapacity 23 | //• MaxJumpRange: (based on zero cargo, and just enough fuel for 1 jump) 24 | //• Rebuy 25 | //• Hot: (if wanted at startup – may not always be present) 26 | 27 | //• Modules: array of installed items, each with: 28 | // o Slot: slot name 29 | // o Item: module name 30 | // o On: bool, indicates on or off 31 | // o Priority: power priority 32 | // o Health 33 | // o Value 34 | // o AmmoInClip: (if relevant) 35 | // o AmmoInHopper: (if relevant) 36 | // o Engineering: (if engineered) 37 | // - EngineerID 38 | // - Engineer: name 39 | // - BlueprintID 40 | // - BlueprintName: blueprint name 41 | // - Level 42 | // - Quality 43 | // - ExperimentalEffect: (name, if applied) 44 | // - Modifications: Json array of objects 45 | // • Label – (see §13.11 below) 46 | // • Value – may not always be present 47 | // • OriginalValue 48 | // • LessIsGood: bool 49 | 50 | // (For a passenger cabin, AmmoInClip holds the number of places in the cabin) 51 | 52 | public class LoadoutEvent : JournalEvent 53 | { 54 | public LoadoutEvent() : base("Loadout") { } 55 | 56 | public class LoadoutEventArgs : JournalEventArgs 57 | { 58 | public string Ship { get; set; } 59 | public long ShipID { get; set; } 60 | public string ShipName { get; set; } 61 | public string ShipIdent { get; set; } 62 | public int HullValue { get; set; } 63 | public int ModulesValue { get; set; } 64 | public double HullHealth { get; set; } 65 | public double UnladenMass { get; set; } 66 | public FuelCapacity FuelCapacity { get; set; } 67 | public int CargoCapacity { get; set; } 68 | public double MaxJumpRange { get; set; } 69 | public int Rebuy { get; set; } 70 | public bool Hot { get; set; } 71 | public Module[] Modules { get; set; } 72 | 73 | public override JournalEventArgs Clone() 74 | { 75 | var clone = (LoadoutEventArgs)base.Clone(); 76 | clone.Modules = Modules?.Select(m => m.Clone()).ToArray(); 77 | return clone; 78 | } 79 | } 80 | 81 | public class FuelCapacity 82 | { 83 | public double Main { get; set; } 84 | public double Reserve { get; set; } 85 | } 86 | } 87 | } 88 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/LoadoutRemoveModuleEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class LoadoutRemoveModuleEvent : JournalEvent 11 | { 12 | public LoadoutRemoveModuleEvent() : base("LoadoutRemoveModule") { } 13 | 14 | public class LoadoutRemoveModuleEventArgs : JournalEventArgs 15 | { 16 | public long SuitID { get; set; } 17 | public string SuitName { get; set; } 18 | public long LoadoutID { get; set; } 19 | public string LoadoutName { get; set; } 20 | public string ModuleName { get; set; } 21 | public long SuitModuleID { get; set; } 22 | public string Class { get; set; } 23 | public string[] WeaponMods { get; set; } 24 | } 25 | } 26 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/LocationEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/LocationEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MarketBuyEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MarketBuyEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MarketEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MarketEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MarketRefinedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MarketRefinedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MarketSellEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MarketSellEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MassModuleStoreEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when putting multiple modules into storage 11 | //Parameters: 12 | //� MarketID 13 | //� Ship 14 | //� ShipId 15 | //� Items: Array of records 16 | //o Slot 17 | //o Name 18 | //o EngineerModifications(only present if modified) 19 | public class MassModuleStoreEvent : JournalEvent 20 | { 21 | public MassModuleStoreEvent() : base("MassModuleStore") { } 22 | 23 | public class MassModuleStoreEventArgs : JournalEventArgs 24 | { 25 | public class ModuleItems 26 | { 27 | public string Slot { get; set; } 28 | public string Name { get; set; } 29 | public string EngineerModifications { get; set; } 30 | public int Level { get; set; } 31 | public double Quality { get; set; } 32 | public bool Hot { get; set; } 33 | } 34 | 35 | public string Ship { get; set; } 36 | public long ShipID { get; set; } 37 | public ModuleItems[] Items { get; set; } 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/MaterialCollectedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MaterialCollectedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MaterialDiscardedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class MaterialDiscardedEvent : JournalEvent 11 | { 12 | public MaterialDiscardedEvent() : base("MaterialDiscarded") { } 13 | 14 | public class MaterialDiscardedEventArgs : JournalEventArgs 15 | { 16 | public string Category { get; set; } 17 | public string Name { get; set; } 18 | public int Count { get; set; } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/MaterialDiscoveredEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class MaterialDiscoveredEvent : JournalEvent 11 | { 12 | public MaterialDiscoveredEvent() : base("MaterialDiscovered") { } 13 | 14 | public class MaterialDiscoveredEventArgs : JournalEventArgs 15 | { 16 | public string Category { get; set; } 17 | public string Name { get; set; } 18 | public int DiscoveryNumber { get; set; } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/MaterialTradeEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MaterialTradeEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MaterialsEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MaterialsEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MiningRefinedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MiningRefinedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MissionAbandonedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MissionAbandonedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MissionAcceptedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MissionAcceptedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MissionCompletedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MissionCompletedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MissionFailedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MissionFailedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MissionRedirectedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when a mission is updated with a new destination 11 | //Parameters 12 | //� MissionID 13 | //� MissionName 14 | //� NewDestinationStation 15 | //� OldDestinationStation 16 | //� NewDestinationSystem 17 | //� OldDestinationSystem 18 | 19 | public class MissionRedirectedEvent : JournalEvent 20 | { 21 | public MissionRedirectedEvent() : base("MissionRedirected") { } 22 | 23 | public class MissionRedirectedEventArgs : JournalEventArgs 24 | { 25 | public long MissionID { get; set; } 26 | public string Name { get; set; } 27 | public string LocalisedName { get; set; } 28 | public string NewDestinationStation { get; set; } 29 | public string OldDestinationStation { get; set; } 30 | public string NewDestinationSystem { get; set; } 31 | public string OldDestinationSystem { get; set; } 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/MissionsEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MissionsEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModuleBuyEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when buying a module in outfitting 11 | //Parameters: 12 | //� Slot: the outfitting slot 13 | //� BuyItem: the module being purchased 14 | //� BuyPrice: price paid 15 | //� Ship: the players ship 16 | //If replacing an existing module: 17 | //� SellItem: item being sold 18 | //� SellPrice: sale price 19 | public class ModuleBuyEvent : JournalEvent 20 | { 21 | public ModuleBuyEvent() : base("ModuleBuy") { } 22 | 23 | public class ModuleBuyEventArgs : JournalEventArgs 24 | { 25 | public long MarketID { get; set; } 26 | public string Slot { get; set; } 27 | public string BuyItem { get; set; } 28 | public string BuyItem_Localised { get; set; } 29 | public int BuyPrice { get; set; } 30 | public string Ship { get; set; } 31 | public long ShipID { get; set; } 32 | public string SellItem { get; set; } 33 | public string SellItem_Localised { get; set; } 34 | public int? SellPrice { get; set; } 35 | public string StoredItem { get; set; } 36 | public string StoredItem_Localised { get; set; } 37 | } 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModuleInfoEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when docking an SRV with the ship 11 | //Parameters: none 12 | public class ModuleInfoEvent : JournalEvent 13 | { 14 | public ModuleInfoEvent() : base("ModuleInfo") { } 15 | 16 | public class ModuleInfoEventArgs : JournalEventArgs 17 | { 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModuleRetrieveEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when fetching a previously stored module 11 | //Parameters: 12 | //� Slot 13 | //� Ship 14 | //� ShipID 15 | //� RetrievedItem 16 | //� EngineerModifications: name of modification blueprint, if any 17 | //� SwapOutItem (if slot was not empty) 18 | //� Cost 19 | public class ModuleRetrieveEvent : JournalEvent 20 | { 21 | public ModuleRetrieveEvent() : base("ModuleRetrieve") { } 22 | 23 | public class ModuleRetrieveEventArgs : JournalEventArgs 24 | { 25 | public long MarketID { get; set; } 26 | public string Slot { get; set; } 27 | public string Ship { get; set; } 28 | public long ShipID { get; set; } 29 | public string RetrievedItem { get; set; } 30 | public string RetrievedItem_Localised { get; set; } 31 | public string EngineerModifications { get; set; } 32 | public int Level { get; set; } 33 | public double Quality { get; set; } 34 | public bool Hot { get; set; } 35 | public string SwapOutItem { get; set; } 36 | public string SwapOutItem_Localised { get; set; } 37 | public int Cost { get; set; } 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModuleSellEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when selling a module in outfitting 11 | //Parameters: 12 | //� Slot 13 | //� SellItem 14 | //� SellPrice 15 | //� Ship 16 | public class ModuleSellEvent : JournalEvent 17 | { 18 | public ModuleSellEvent() : base("ModuleSell") { } 19 | 20 | public class ModuleSellEventArgs : JournalEventArgs 21 | { 22 | public long MarketID { get; set; } 23 | public string Slot { get; set; } 24 | public string SellItem { get; set; } 25 | public string SellItem_Localised { get; set; } 26 | public int SellPrice { get; set; } 27 | public string Ship { get; set; } 28 | public long ShipID { get; set; } 29 | public string StoredItem { get; set; } 30 | public string StoredItem_Localised { get; set; } 31 | 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModuleSellRemoteEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when selling a module in outfitting 11 | //Parameters: 12 | //� Slot 13 | //� SellItem 14 | //� SellPrice 15 | //� Ship 16 | public class ModuleSellRemoteEvent : JournalEvent 17 | { 18 | public ModuleSellRemoteEvent() : base("ModuleSellRemote") { } 19 | 20 | public class ModuleSellRemoteEventArgs : JournalEventArgs 21 | { 22 | public string StorageSlot { get; set; } 23 | public string SellItem { get; set; } 24 | public string SellItem_Localised { get; set; } 25 | public int SellPrice { get; set; } 26 | public string Ship { get; set; } 27 | public long ShipID { get; set; } 28 | public string ServerId { get; set; } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModuleStoreEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when fetching a previously stored module 11 | //Parameters: 12 | //� Slot 13 | //� Ship 14 | //� ShipID 15 | //� StoredItem 16 | //� EngineerModifications: name of modification blueprint, if any 17 | //� ReplacementItem (if a core module) 18 | //� Cost (if any) 19 | public class ModuleStoreEvent : JournalEvent 20 | { 21 | public ModuleStoreEvent() : base("ModuleStore") { } 22 | 23 | public class ModuleStoreEventArgs : JournalEventArgs 24 | { 25 | public long MarketID { get; set; } 26 | public string Slot { get; set; } 27 | public string Ship { get; set; } 28 | public long ShipID { get; set; } 29 | public string StoredItem { get; set; } 30 | public string StoredItem_Localised { get; set; } 31 | public string EngineerModifications { get; set; } 32 | public int Level { get; set; } 33 | public double Quality { get; set; } 34 | public bool Hot { get; set; } 35 | public string ReplacementItem { get; set; } 36 | public string ReplacementItem_Localised { get; set; } 37 | public int Cost { get; set; } 38 | } 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModuleSwapEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when moving a module to a different slot on the ship 11 | //Parameters: 12 | //� FromSlot 13 | //� ToSlot 14 | //� FromItem 15 | //� ToItem 16 | //� Ship 17 | //� ShipID 18 | public class ModuleSwapEvent : JournalEvent 19 | { 20 | public ModuleSwapEvent() : base("ModuleSwap") { } 21 | 22 | public class ModuleSwapEventArgs : JournalEventArgs 23 | { 24 | public long MarketID { get; set; } 25 | public string FromSlot { get; set; } 26 | public string ToSlot { get; set; } 27 | public string FromItem { get; set; } 28 | public string FromItem_Localised { get; set; } 29 | public string ToItem { get; set; } 30 | public string ToItem_Localised { get; set; } 31 | public string Ship { get; set; } 32 | public long ShipID { get; set; } 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ModulesInfoEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when looking at the cockpit RHS modules info panel, if data has changed 11 | //This also writes a ModulesInfo.json file alongside the journal, listing the modules in the same order as displayed 12 | //Parameters: None 13 | 14 | public class ModulesInfoEvent : JournalEvent 15 | { 16 | public ModulesInfoEvent() : base("ModulesInfo") { } 17 | 18 | public class ModulesInfoEventArgs : JournalEventArgs 19 | { 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/MultiSellExplorationDataEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MultiSellExplorationDataEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/MusicEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/MusicEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/NavBeaconScanEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/NavBeaconScanEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/NavRouteClearEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json; 7 | using Newtonsoft.Json.Linq; 8 | 9 | namespace EliteJournalReader.Events 10 | { 11 | public class NavRouteClearEvent : JournalEvent 12 | { 13 | public NavRouteClearEvent() : base("NavRouteClear") { } 14 | 15 | public class NavRouteClearEventArgs : JournalEventArgs 16 | { 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/NavRouteEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/NavRouteEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/NewCommanderEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/NewCommanderEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/NpcCrewPaidWageEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/NpcCrewPaidWageEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/NpcCrewRankEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/NpcCrewRankEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/OutfittingEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/OutfittingEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PVPKillEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PVPKillEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PassengersEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //The "Passengers" event contains: 11 | 12 | //"Manifest": array of passenger records, each containing: 13 | //o MissionID (int) 14 | //o Type (string) 15 | //o VIP (bool) 16 | //o Wanted (bool) 17 | //o Count (int) 18 | public class PassengersEvent : JournalEvent 19 | { 20 | public PassengersEvent() : base("Passengers") { } 21 | 22 | public class PassengersEventArgs : JournalEventArgs 23 | { 24 | public Passenger[] Manifest { get; set; } 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/PayBountiesEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when paying off bounties 11 | //Parameters: 12 | //� Amount: (total amount paid, including any broker fee) 13 | //� BrokerPercentage(present if paid via a Broker) 14 | //� AllFines: bool 15 | //� Faction 16 | //� ShipID 17 | public class PayBountiesEvent : JournalEvent 18 | { 19 | public PayBountiesEvent() : base("PayBounties") { } 20 | 21 | public class PayBountiesEventArgs : JournalEventArgs 22 | { 23 | public int Amount { get; set; } 24 | public double? BrokerPercentage { get; set; } 25 | public string Faction { get; set; } 26 | public string Faction_Localised { get; set; } 27 | public long ShipID { get; set; } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/PayFinesEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when paying fines 11 | //Parameters: 12 | //� Amount 13 | //� BrokerPercentage (present if paid via a Broker) 14 | //� AllFines: bool 15 | //� Faction: (if paying off an individual faction's fines) 16 | //� ShipID 17 | 18 | public class PayFinesEvent : JournalEvent 19 | { 20 | public PayFinesEvent() : base("PayFines") { } 21 | 22 | public class PayFinesEventArgs : JournalEventArgs 23 | { 24 | public int Amount { get; set; } 25 | public double? BrokerPercentage { get; set; } 26 | public bool AllFines { get; set; } 27 | public string Faction { get; set; } 28 | public string Faction_Localised { get; set; } 29 | public long ShipID { get; set; } 30 | 31 | } 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/PayLegacyFinesEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PayLegacyFinesEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayCollectEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayCollectEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayDefectEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayDefectEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayDeliverEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayDeliverEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayFastTrackEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayFastTrackEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayJoinEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayJoinEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayLeaveEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayLeaveEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplaySalaryEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplaySalaryEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayVoteEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayVoteEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PowerplayVoucherEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PowerplayVoucherEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ProgressEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ProgressEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/PromotionEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/PromotionEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ProspectedAsteroidEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class ProspectedAsteroidEvent : JournalEvent 11 | { 12 | public ProspectedAsteroidEvent() : base("ProspectedAsteroid") { } 13 | 14 | public class ProspectedAsteroidEventArgs : JournalEventArgs 15 | { 16 | public ScanItemComponent[] Materials { get; set; } 17 | public string Content { get; set; } 18 | public string MotherlodeMaterial { get; set; } 19 | public double Percentage { get; set; } 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/QuitACrewEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/QuitACrewEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RankEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RankEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RebootRepairEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RebootRepairEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ReceiveTextEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ReceiveTextEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RedeemVoucherEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RedeemVoucherEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RefuelAllEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RefuelAllEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RefuelPartialEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RefuelPartialEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RenameSuitLoadoutEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class RenameSuitLoadoutEvent : JournalEvent 11 | { 12 | public RenameSuitLoadoutEvent() : base("RenameSuitLoadout") { } 13 | 14 | public class RenameSuitLoadoutEventArgs : JournalEventArgs 15 | { 16 | public long SuitID { get; set; } 17 | public string SuitName { get; set; } 18 | public long LoadoutID { get; set; } 19 | public string LoadoutName { get; set; } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/RepairAllEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RepairAllEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RepairDroneEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RepairDroneEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RepairEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RepairEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ReputationEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ReputationEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ReservoirReplenishedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ReservoirReplenishedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/RestockVehicleEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/RestockVehicleEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ResurrectEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ResurrectEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SAAScanCompleteEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | // When written: after using the �Surface Area Analysis� scanner 11 | // Parameters: 12 | //� Bodyname 13 | //� BodyID 14 | //� ProbesUsed: (int) 15 | //� EfficiencyTarget: (int) 16 | 17 | public class SAAScanCompleteEvent : JournalEvent 18 | { 19 | public SAAScanCompleteEvent() : base("SAAScanComplete") { } 20 | 21 | public class SAAScanCompleteEventArgs : JournalEventArgs 22 | { 23 | public long SystemAddress { get; set; } 24 | public string BodyName { get; set; } 25 | public int BodyID { get; set; } 26 | public int ProbesUsed { get; set; } 27 | public int EfficiencyTarget { get; set; } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SAASignalsFoundEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when using SAA scanner on a planet or rings 11 | //Parameters: 12 | //� SystemAddress 13 | //� BodyName 14 | //� BodyID 15 | //� Signals: (array) 16 | // o Type 17 | // o Count 18 | public partial class SAASignalsFoundEvent : JournalEvent 19 | { 20 | public SAASignalsFoundEvent() : base("SAASignalsFound") { } 21 | 22 | public class SAASignalsFoundEventArgs : JournalEventArgs 23 | { 24 | public long SystemAddress { get; set; } 25 | public string BodyName { get; set; } 26 | public int BodyID { get; set; } 27 | public SAASignal[] Signals { get; set; } 28 | public SAAGenus[] Genuses { get; set; } 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SRVDestroyedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when the player's SRV is destroyed 11 | //Parameters: none 12 | public class SRVDestroyedEvent : JournalEvent 13 | { 14 | public SRVDestroyedEvent() : base("SRVDestroyed") { } 15 | 16 | public class SRVDestroyedEventArgs : JournalEventArgs 17 | { 18 | public long ID { get; set; } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ScanBaryCentreEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class ScanBaryCentreEvent : JournalEvent 11 | { 12 | public ScanBaryCentreEvent() : base("ScanBaryCentre") { } 13 | 14 | public class ScanBaryCentreEventArgs : JournalEventArgs 15 | { 16 | public string StarSystem { get; set; } 17 | public long SystemAddress { get; set; } 18 | public int BodyID { get; set; } 19 | public double SemiMajorAxis { get; set; } 20 | public double Eccentricity { get; set; } 21 | public double OrbitalInclination { get; set; } 22 | public double Periapsis { get; set; } 23 | public double OrbitalPeriod { get; set; } 24 | public double AscendingNode { get; set; } 25 | public double MeanAnomaly { get; set; } 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ScanOrganicEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class ScanOrganicEvent : JournalEvent 11 | { 12 | public ScanOrganicEvent() : base("ScanOrganic") { } 13 | 14 | public class ScanOrganicEventArgs : JournalEventArgs 15 | { 16 | public string ScanType { get; set; } 17 | public string Genus { get; set; } 18 | public string Genus_Localised { get; set; } 19 | public string Species { get; set; } 20 | public string Species_Localised { get; set; } 21 | public string Variant { get; set; } 22 | public string Variant_Localised { get; set; } 23 | public long SystemAddress { get; set; } 24 | public long Body { get; set; } 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/ScannedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ScannedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ScientificResearchEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ScientificResearchEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ScreenshotEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when a screen snapshot is saved 11 | //Parameters: 12 | //� Filename: filename of screenshot 13 | //� Width: size in pixels 14 | //� Height: size in pixels 15 | //� System: current star system 16 | //� Body: name of nearest body 17 | //� Latitude: The latitude and longitude will be included if on a planet or in low-altitude flight 18 | //� Longitude 19 | public class ScreenshotEvent : JournalEvent 20 | { 21 | public ScreenshotEvent() : base("Screenshot") { } 22 | 23 | public class ScreenshotEventArgs : JournalEventArgs 24 | { 25 | public string Filename { get; set; } 26 | public long WIDth { get; set; } 27 | public int Height { get; set; } 28 | public string System { get; set; } 29 | public string Body { get; set; } 30 | public double? Latitude { get; set; } 31 | public double? Longitude { get; set; } 32 | public double? Altitude { get; set; } 33 | public int Heading { get; set; } 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SearchAndRescueEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SearchAndRescueEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SelfDestructEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SelfDestructEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SellDronesEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SellDronesEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SellExplorationDataEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SellExplorationDataEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SellMicroResourcesEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SellMicroResourcesEvent : JournalEvent 11 | { 12 | public SellMicroResourcesEvent() : base("SellMicroResources") { } 13 | 14 | public class SellMicroResourcesEventArgs : JournalEventArgs 15 | { 16 | public List MicroResources { get; set; } 17 | public int Price { get; set; } 18 | public long MarketID { get; set; } 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/SellOrganicDataEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SellOrganicDataEvent : JournalEvent 11 | { 12 | public SellOrganicDataEvent() : base("SellOrganicData") { } 13 | 14 | public class SellOrganicDataEventArgs : JournalEventArgs 15 | { 16 | public long MarketID { get; set; } 17 | public List BioData { get; set; } 18 | } 19 | } 20 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/SellShipOnRebuyEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: When selling a stored ship to raise funds when on insurance/rebuy screen 11 | //Parameters: 12 | //� ShipType 13 | //� System 14 | //� SellShipId 15 | //� ShipPrice 16 | public class SellShipOnRebuyEvent : JournalEvent 17 | { 18 | public SellShipOnRebuyEvent() : base("SellShipOnRebuy") { } 19 | 20 | public class SellShipOnRebuyEventArgs : JournalEventArgs 21 | { 22 | public string ShipType { get; set; } 23 | public string ShipType_Localised { get; set; } 24 | public long SellShipID { get; set; } 25 | public int ShipPrice { get; set; } 26 | public string System { get; set; } 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SellSuitEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SellSuitEvent : JournalEvent 11 | { 12 | public SellSuitEvent() : base("SellSuit") { } 13 | 14 | public class SellSuitEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public int Price { get; set; } 19 | public long SuitID { get; set; } 20 | public string[] SuitMods { get; set; } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/SellWeaponEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SellWeaponEvent : JournalEvent 11 | { 12 | public SellWeaponEvent() : base("SellWeapon") { } 13 | 14 | public class SellWeaponEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public int Price { get; set; } 18 | public long SuitModuleID { get; set; } 19 | public string Class { get; set; } 20 | public string[] WeaponMods { get; set; } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/SendTextEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SendTextEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SetUserShipNameEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: when assigning a name to the ship in Starport Services 11 | //Parameters: 12 | //� Ship: Ship model(eg CobraMkIII) 13 | //� ShipID: player's ship ID number 14 | //� UserShipName: selected name 15 | //� UserShipId: selected ship id 16 | public class SetUserShipNameEvent : JournalEvent 17 | { 18 | public SetUserShipNameEvent() : base("SetUserShipName") { } 19 | 20 | public class SetUserShipNameEventArgs : JournalEventArgs 21 | { 22 | public string Ship { get; set; } 23 | public long ShipID { get; set; } 24 | public string UserShipName { get; set; } 25 | public string UserShipId { get; set; } 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SharedBookmarkToSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SharedBookmarkToSquadronEvent : JournalEvent 11 | { 12 | public SharedBookmarkToSquadronEvent() : base("SharedBookmarkToSquadron") { } 13 | 14 | public class SharedBookmarkToSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShieldStateEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ShieldStateEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipLockerEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class ShipLockerEvent : JournalEvent 11 | { 12 | public ShipLockerEvent() : base("ShipLocker") { } 13 | 14 | public class ShipLockerEventArgs : JournalEventArgs 15 | { 16 | public Item[] Items { get; set; } 17 | public ScanItemComponent[] Components { get; set; } 18 | public Consumable[] Consumables { get; set; } 19 | public Data[] Data { get; set; } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipLockerMaterialsEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class ShipLockerMaterialsEvent : JournalEvent 11 | { 12 | public ShipLockerMaterialsEvent() : base("ShipLockerMaterials") { } 13 | 14 | public class ShipLockerMaterialsEventArgs : JournalEventArgs 15 | { 16 | public List Items { get; set; } 17 | public List Components { get; set; } 18 | public List Consumables { get; set; } 19 | public List Data { get; set; } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipTargetedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ShipTargetedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipyardBuyEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ShipyardBuyEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipyardEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/ShipyardEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipyardNewEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: after a new ship has been purchased 11 | //Parameters: 12 | //� ShipType 13 | //� ShipID 14 | public class ShipyardNewEvent : JournalEvent 15 | { 16 | public ShipyardNewEvent() : base("ShipyardNew") { } 17 | 18 | public class ShipyardNewEventArgs : JournalEventArgs 19 | { 20 | public long MarketID { get; set; } 21 | public string ShipType { get; set; } 22 | public string ShipType_Localised { get; set; } 23 | public long NewShipID { get; set; } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipyardSellEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when selling a ship stored in the shipyard 11 | //Parameters: 12 | //� ShipType: type of ship being sold 13 | //� SellShipID 14 | //� ShipPrice: sale price 15 | //� System: (if ship is in another system) name of system 16 | public class ShipyardSellEvent : JournalEvent 17 | { 18 | public ShipyardSellEvent() : base("ShipyardSell") { } 19 | 20 | public class ShipyardSellEventArgs : JournalEventArgs 21 | { 22 | public long MarketID { get; set; } 23 | public string ShipType { get; set; } 24 | public string ShipType_Localised { get; set; } 25 | public long SellShipID { get; set; } 26 | public int ShipPrice { get; set; } 27 | public string System { get; set; } 28 | } 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipyardSwapEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when switching to another ship already stored at this station 11 | //Parameters: 12 | //� ShipType: type of ship being switched to 13 | //� ShipID 14 | //� StoreOldShip: (if storing old ship) type of ship being stored 15 | //� StoreShipID 16 | //� SellOldShip: (if selling old ship) type of ship being sold 17 | //� SellShipID 18 | public class ShipyardSwapEvent : JournalEvent 19 | { 20 | public ShipyardSwapEvent() : base("ShipyardSwap") { } 21 | 22 | public class ShipyardSwapEventArgs : JournalEventArgs 23 | { 24 | public long MarketID { get; set; } 25 | public string ShipType { get; set; } 26 | public string ShipType_Localised { get; set; } 27 | public long ShipID { get; set; } 28 | public string StoreOldShip { get; set; } 29 | public int? StoreShipId { get; set; } 30 | public string SellOldShip { get; set; } 31 | public int? SellShipId { get; set; } 32 | public int? SellPrice { get; set; } 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShipyardTransferEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When Written: when requesting a ship at another station be transported to this station 11 | //Parameters: 12 | //� ShipType: type of ship 13 | //� ShipID 14 | //� System: where it is 15 | //� Distance: how far away 16 | //� TransferPrice: cost of transfer 17 | //� TransferTime: (in seconds) 18 | public class ShipyardTransferEvent : JournalEvent 19 | { 20 | public ShipyardTransferEvent() : base("ShipyardTransfer") { } 21 | 22 | public class ShipyardTransferEventArgs : JournalEventArgs 23 | { 24 | public long MarketID { get; set; } 25 | public string ShipType { get; set; } 26 | public string ShipType_Localised { get; set; } 27 | public long ShipID { get; set; } 28 | public string System { get; set; } 29 | public double Distance { get; set; } 30 | public int TransferPrice { get; set; } 31 | public int TransferTime { get; set; } 32 | } 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/ShutdownEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: on a clean shutdown of the game 11 | //Parameters: none 12 | public class ShutdownEvent : JournalEvent 13 | { 14 | public ShutdownEvent() : base("Shutdown") { } 15 | 16 | public class ShutdownEventArgs : JournalEventArgs 17 | { 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SquadronCreatedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SquadronCreatedEvent : JournalEvent 11 | { 12 | public SquadronCreatedEvent() : base("SquadronCreated") { } 13 | 14 | public class SquadronCreatedEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SquadronDemotionEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SquadronDemotionEvent : JournalEvent 11 | { 12 | public SquadronDemotionEvent() : base("SquadronDemotion") { } 13 | 14 | public class SquadronDemotionEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | public int OldRank { get; set; } 18 | public int NewRank { get; set; } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SquadronPromotionEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SquadronPromotionEvent : JournalEvent 11 | { 12 | public SquadronPromotionEvent() : base("SquadronPromotion") { } 13 | 14 | public class SquadronPromotionEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | public int OldRank { get; set; } 18 | public int NewRank { get; set; } 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SquadronStartupEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SquadronStartupEvent : JournalEvent 11 | { 12 | public SquadronStartupEvent() : base("SquadronStartup") { } 13 | 14 | public class SquadronStartupEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | public string CurrentRank { get; set; } 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/StartJumpEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/StartJumpEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/StatisticsEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/StatisticsEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/StoredModulesEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/StoredModulesEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/StoredShipsEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | // When written: when visiting shipyard 11 | // 12 | // Parameters: 13 | //� MarketID 14 | //� StationName 15 | //� StarSystem 16 | //� ShipsHere: (array of objects) 17 | //o ShipID 18 | //o ShipType 19 | //o Name(if named) 20 | //o Value 21 | //o Hot 22 | //� ShipsRemote: (array of objects) 23 | //o ShipID 24 | //o ShipType 25 | //o Name(if named) 26 | //o Value 27 | //o Hot 28 | // 29 | //If the ship is in transit: 30 | //o InTransit: true 31 | // 32 | //If the ship is not in transit: 33 | //o StarSystem 34 | //o ShipMarketID 35 | //o TransferPrice 36 | //o TransferType 37 | 38 | public class StoredShipsEvent : JournalEvent 39 | { 40 | public StoredShipsEvent() : base("StoredShips") { } 41 | 42 | public class StoredShipsEventArgs : JournalEventArgs 43 | { 44 | public class StoredShip 45 | { 46 | public long ShipID { get; set; } 47 | public string ShipType { get; set; } 48 | public string ShipType_Localised { get; set; } 49 | public string Name { get; set; } 50 | public int Value { get; set; } 51 | public bool Hot { get; set; } 52 | public bool InTransit { get; set; } 53 | public string StarSystem { get; set; } 54 | public long ShipMarketID { get; set; } 55 | public int TransferPrice { get; set; } 56 | public string TransferType { get; set; } 57 | } 58 | 59 | public long MarketID { get; set; } 60 | public string StationName { get; set; } 61 | public string StarSystem { get; set; } 62 | public StoredShip[] ShipsHere { get; set; } 63 | public StoredShip[] ShipsRemote { get; set; } 64 | } 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SuitLoadoutEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: at startup, when loading from main menu, or when switching ships, 11 | //or after changing the ship in Outfitting, or when docking SRV back in mothership 12 | //Parameters: 13 | //• Ship: current ship type 14 | //• ShipID: ship id number(indicates which of your ships you are in) 15 | //• ShipName: user-defined ship name 16 | //• ShipIdent: user-defined ship ID string 17 | //• HullValue – may not always be present 18 | //• ModulesValue – may not always be present 19 | //• HullHealth 20 | //• UnladenMass – Mass of Hull and Modules, excludes fuel and cargo 21 | //• FuelCapacity: { Main: , Reserve: } 22 | //• CargoCapacity 23 | //• MaxJumpRange: (based on zero cargo, and just enough fuel for 1 jump) 24 | //• Rebuy 25 | //• Hot: (if wanted at startup – may not always be present) 26 | 27 | //• Modules: array of installed items, each with: 28 | // o Slot: slot name 29 | // o Item: module name 30 | // o On: bool, indicates on or off 31 | // o Priority: power priority 32 | // o Health 33 | // o Value 34 | // o AmmoInClip: (if relevant) 35 | // o AmmoInHopper: (if relevant) 36 | // o Engineering: (if engineered) 37 | // - EngineerID 38 | // - Engineer: name 39 | // - BlueprintID 40 | // - BlueprintName: blueprint name 41 | // - Level 42 | // - Quality 43 | // - ExperimentalEffect: (name, if applied) 44 | // - Modifications: Json array of objects 45 | // • Label – (see §13.11 below) 46 | // • Value – may not always be present 47 | // • OriginalValue 48 | // • LessIsGood: bool 49 | 50 | // (For a passenger cabin, AmmoInClip holds the number of places in the cabin) 51 | 52 | public class SuitLoadoutEvent : JournalEvent 53 | { 54 | public SuitLoadoutEvent() : base("SuitLoadout") { } 55 | 56 | public class SuitLoadoutEventArgs : JournalEventArgs 57 | { 58 | public long SuitID { get; set; } 59 | public string SuitName { get; set; } 60 | public string SuitName_Localised { get; set; } 61 | public object[] SuitMods { get; set; } 62 | public long LoadoutID { get; set; } 63 | public string LoadoutName { get; set; } 64 | public SuitModule[] Modules { get; set; } 65 | } 66 | } 67 | 68 | public class SuitModule 69 | { 70 | public string SlotName { get; set; } 71 | public long SuitModuleID { get; set; } 72 | public string ModuleName { get; set; } 73 | public string ModuleName_Localised { get; set; } 74 | public int Class { get; set; } 75 | public object[] WeaponMods { get; set; } 76 | } 77 | } 78 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/SupercruiseDestinationDropEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SupercruiseDestinationDropEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SupercruiseEntryEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SupercruiseEntryEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SupercruiseExitEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SupercruiseExitEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SwitchSuitLoadoutEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class SwitchSuitLoadoutEvent : JournalEvent 11 | { 12 | public SwitchSuitLoadoutEvent() : base("SwitchSuitLoadout") { } 13 | 14 | public class SwitchSuitLoadoutEventArgs : JournalEventArgs 15 | { 16 | public long SuitID { get; set; } 17 | public string SuitName { get; set; } 18 | public string[] SuitMods { get; set; } 19 | public long LoadoutID { get; set; } 20 | public string LoadoutName { get; set; } 21 | public List Modules { get; set; } 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/SynthesisEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/SynthesisEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/SystemsShutdownEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: on a clean shutdown of the game 11 | //Parameters: none 12 | public class SystemsShutdownEvent : JournalEvent 13 | { 14 | public SystemsShutdownEvent() : base("SystemsShutdown") { } 15 | 16 | public class SystemsShutdownEventArgs : JournalEventArgs 17 | { 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/TechnologyBrokerEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/TechnologyBrokerEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/TouchdownEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/TouchdownEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/TradeMicroResourcesEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class TradeMicroResourcesEvent : JournalEvent 11 | { 12 | public TradeMicroResourcesEvent() : base("TradeMicroResources") { } 13 | 14 | public class TradeMicroResourcesEventArgs : JournalEventArgs 15 | { 16 | public List Offered { get; set; } 17 | public string Received { get; set; } 18 | public string Received_Localised { get; set; } 19 | public string Category { get; set; } 20 | public string Category_Localised { get; set; } 21 | public int Count { get; set; } 22 | public long MarketID { get; set; } 23 | } 24 | } 25 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/TransferMicroResourcesEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class TransferMicroResourcesEvent : JournalEvent 11 | { 12 | public TransferMicroResourcesEvent() : base("TransferMicroResources") { } 13 | 14 | public class TransferMicroResourcesEventArgs : JournalEventArgs 15 | { 16 | public List Transfers { get; set; } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/USSDropEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/USSDropEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/UnderAttackEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/UnderAttackEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/UndockedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/UndockedEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/UpgradeSuitEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class UpgradeSuitEvent : JournalEvent 11 | { 12 | public UpgradeSuitEvent() : base("UpgradeSuit") { } 13 | 14 | public class UpgradeSuitEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public long SuitID { get; set; } 19 | public int Class { get; set; } 20 | public int Cost { get; set; } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/UpgradeWeaponEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class UpgradeWeaponEvent : JournalEvent 11 | { 12 | public UpgradeWeaponEvent() : base("UpgradeWeapon") { } 13 | 14 | public class UpgradeWeaponEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public long SuitModuleID { get; set; } 19 | public int Class { get; set; } 20 | public int Cost { get; set; } 21 | } 22 | } 23 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/UseConsumableEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class UseConsumableEvent : JournalEvent 11 | { 12 | public UseConsumableEvent() : base("UseConsumable") { } 13 | 14 | public class UseConsumableEventArgs : JournalEventArgs 15 | { 16 | public string Name { get; set; } 17 | public string Name_Localised { get; set; } 18 | public string Type { get; set; } 19 | public string Type_Localised { get; set; } 20 | } 21 | } 22 | } -------------------------------------------------------------------------------- /EliteJournalReader/Events/VehicleSwitchEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/VehicleSwitchEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/WingAddEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/WingAddEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/WingInviteEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/WingInviteEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/WingJoinEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/EliteJournalReader/Events/WingJoinEvent.cs -------------------------------------------------------------------------------- /EliteJournalReader/Events/WingLeaveEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | //When written: this player has left a wing 11 | //Parameters: none 12 | public class WingLeaveEvent : JournalEvent 13 | { 14 | public WingLeaveEvent() : base("WingLeave") { } 15 | 16 | public class WingLeaveEventArgs : JournalEventArgs 17 | { 18 | } 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /EliteJournalReader/Events/WonATrophyForSquadronEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Newtonsoft.Json.Linq; 7 | 8 | namespace EliteJournalReader.Events 9 | { 10 | public class WonATrophyForSquadronEvent : JournalEvent 11 | { 12 | public WonATrophyForSquadronEvent() : base("WonATrophyForSquadron") { } 13 | 14 | public class WonATrophyForSquadronEventArgs : JournalEventArgs 15 | { 16 | public string SquadronName { get; set; } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EliteJournalReader/Faction.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace EliteJournalReader 8 | { 9 | public class Faction 10 | { 11 | public string Name { get; set; } 12 | public string FactionState { get; set; } 13 | public string Government { get; set; } 14 | public double Influence { get; set; } 15 | public string Allegiance { get; set; } 16 | public string Happiness { get; set; } 17 | public string Happiness_Localised { get; set; } 18 | public double MyReputation { get; set; } 19 | public bool SquadronFaction { get; set; } = false; 20 | public bool HappiestSystem { get; set; } = false; 21 | public bool HomeSystem { get; set; } = false; 22 | 23 | public FactionStateChange[] PendingStates { get; set; } 24 | public FactionStateChange[] RecoveringStates { get; set; } 25 | public FactionStateChange[] ActiveStates { get; set; } 26 | 27 | public override bool Equals(object obj) => Equals(obj as Faction); 28 | 29 | public bool Equals(Faction that) => that != null 30 | && that.Name?.Equals(Name) == true 31 | && that.FactionState?.Equals(FactionState) == true 32 | && that.Government?.Equals(Government) == true 33 | && that.Influence == Influence 34 | && that.Allegiance?.Equals(Allegiance) == true 35 | && that.MyReputation == MyReputation 36 | && that.SquadronFaction == SquadronFaction 37 | && that.HappiestSystem == HappiestSystem 38 | && that.HomeSystem == HomeSystem 39 | && that.PendingStates?.Equals(PendingStates) == true 40 | && that.RecoveringStates?.Equals(RecoveringStates) == true 41 | && that.ActiveStates?.Equals(ActiveStates) == true; 42 | 43 | public override int GetHashCode() 44 | { 45 | //https://stackoverflow.com/a/892640/3131828 46 | unchecked 47 | { 48 | int h = 23; 49 | h *= 31 + (Name?.GetHashCode() ?? 0); 50 | h *= 31 + (FactionState?.GetHashCode() ?? 0); 51 | h *= 31 + (Government?.GetHashCode() ?? 0); 52 | h *= 31 + Influence.GetHashCode(); 53 | h *= 31 + (Allegiance?.GetHashCode() ?? 0); 54 | h *= 31 + MyReputation.GetHashCode(); 55 | h *= 31 + SquadronFaction.GetHashCode(); 56 | h *= 31 + HappiestSystem.GetHashCode(); 57 | h *= 31 + HomeSystem.GetHashCode(); 58 | h *= 31 + (PendingStates?.GetHashCode() ?? 0); 59 | h *= 31 + (RecoveringStates?.GetHashCode() ?? 0); 60 | h *= 31 + (ActiveStates?.GetHashCode() ?? 0); 61 | 62 | return h; 63 | } 64 | } 65 | 66 | public Faction Clone() => (Faction)MemberwiseClone(); 67 | } 68 | 69 | public class FactionStateChange 70 | { 71 | public string State { get; set; } 72 | public int Trend { get; set; } 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /EliteJournalReader/Item.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Item 4 | { 5 | public string Name { get; set; } 6 | public string Name_Localised { get; set; } 7 | public long OwnerID { get; set; } 8 | public long MissionID { get; set; } 9 | public int Count { get; set; } 10 | } 11 | } -------------------------------------------------------------------------------- /EliteJournalReader/JournalEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Newtonsoft.Json.Linq; 3 | using System.Collections.Generic; 4 | using System.Diagnostics; 5 | using System.Globalization; 6 | using System.Linq; 7 | 8 | namespace EliteJournalReader 9 | { 10 | public abstract class JournalEvent 11 | { 12 | public string[] EventNames { get; } 13 | 14 | public string OriginalEvent { get; protected set; } 15 | 16 | protected JournalEvent(params string[] eventNames) 17 | { 18 | EventNames = eventNames; 19 | } 20 | 21 | internal abstract JournalEventArgs ParseEventArgs(JObject evt); 22 | 23 | internal abstract JournalEventArgs FireEvent(JournalWatcher journalWatcher, JObject evt); 24 | } 25 | 26 | public abstract class JournalEvent : JournalEvent 27 | where TJournalEventArgs : JournalEventArgs, new() 28 | { 29 | public event EventHandler Fired; 30 | 31 | protected JournalEvent(params string[] eventNames) : base(eventNames) 32 | { 33 | } 34 | 35 | public void AddHandler(EventHandler eventHandler) => Fired += eventHandler; 36 | 37 | public void RemoveHandler(EventHandler eventHandler) => Fired -= eventHandler; 38 | 39 | internal override JournalEventArgs ParseEventArgs(JObject evt) => evt.ToObject(); 40 | 41 | internal override JournalEventArgs FireEvent(JournalWatcher journalWatcher, JObject evt) 42 | { 43 | var eventArgs = evt.ToObject(); 44 | 45 | eventArgs.OriginalEvent = evt; 46 | eventArgs.Timestamp = DateTime.Parse(evt.Value("timestamp"), 47 | CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal); 48 | 49 | #if DEBUG 50 | Type argsType = typeof(TJournalEventArgs); 51 | var eventName = evt["event"]; 52 | 53 | var argsPropertyNames = argsType.GetProperties().Select(p => p.Name).ToList(); 54 | string[] ignoreProperties = new string[] { "event" }; 55 | foreach (var jProperty in evt.Properties()) 56 | { 57 | string jsonPropertyName = jProperty.Name; 58 | if (ignoreProperties.Contains(jsonPropertyName)) 59 | { 60 | // ignore anything in the ignore list 61 | } 62 | else if (jsonPropertyName.EndsWith("_Localised", StringComparison.CurrentCultureIgnoreCase)) 63 | { 64 | // ignore localised 65 | } 66 | else if (!argsPropertyNames.Any(x => string.Compare(jsonPropertyName, x, StringComparison.InvariantCultureIgnoreCase) == 0)) 67 | { 68 | // found something missing 69 | Trace.TraceInformation($"EventArgs for {eventName} does not contain property {jsonPropertyName}"); 70 | //Debugger.Break(); 71 | } 72 | 73 | } 74 | #endif 75 | eventArgs.PostProcess(evt, journalWatcher); 76 | 77 | Fired?.Invoke(journalWatcher, eventArgs); 78 | 79 | return eventArgs; 80 | } 81 | } 82 | } 83 | -------------------------------------------------------------------------------- /EliteJournalReader/JournalEventArgs.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json.Linq; 2 | using System; 3 | using System.Globalization; 4 | 5 | namespace EliteJournalReader 6 | { 7 | public class JournalEventArgs : EventArgs 8 | { 9 | public JObject OriginalEvent { get; set; } 10 | 11 | public DateTime Timestamp { get; set; } 12 | 13 | public JournalEventArgs() 14 | { 15 | } 16 | 17 | public virtual void PostProcess(JObject evt, JournalWatcher journalWatcher) { } 18 | 19 | public virtual JournalEventArgs Clone() => (JournalEventArgs)MemberwiseClone(); 20 | } 21 | } -------------------------------------------------------------------------------- /EliteJournalReader/LandingPads.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class LandingPads 4 | { 5 | public int Small { get; set; } 6 | public int Medium { get; set; } 7 | public int Large { get; set; } 8 | } 9 | } -------------------------------------------------------------------------------- /EliteJournalReader/Material.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Material 4 | { 5 | public string Name { get; set; } 6 | public string Name_Localised { get; set; } 7 | public long OwnerID { get; set; } 8 | public long MissionID { get; set; } 9 | public int Count { get; set; } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /EliteJournalReader/MessageReceivedEventArgs.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json.Linq; 2 | using System; 3 | 4 | namespace EliteJournalReader 5 | { 6 | public class MessageReceivedEventArgs : EventArgs 7 | { 8 | public JObject JObject { get; private set; } 9 | public string EventType { get; private set; } 10 | public DateTime Timestamp { get; private set; } 11 | public JournalEventArgs EventArgs { get; private set; } 12 | 13 | public MessageReceivedEventArgs(JournalEventArgs args, string eventType) 14 | { 15 | JObject = args.OriginalEvent?.DeepClone() as JObject; 16 | EventType = eventType; 17 | Timestamp = args.Timestamp; 18 | EventArgs = args; 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /EliteJournalReader/MicroResource.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class MicroResource 4 | { 5 | public string Name { get; set; } 6 | public string Name_Localised { get; set; } 7 | public string Category { get; set; } 8 | public int Count { get; set; } 9 | public string Direction { get; set; } 10 | } 11 | } -------------------------------------------------------------------------------- /EliteJournalReader/Mission.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Mission 4 | { 5 | public long MissionID { get; set; } 6 | public string Name { get; set; } 7 | public bool PassengerMission { get; set; } 8 | public int Expires { get; set; } 9 | } 10 | } -------------------------------------------------------------------------------- /EliteJournalReader/Module.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Module 4 | { 5 | public string Slot { get; set; } 6 | public string Item { get; set; } 7 | public bool On { get; set; } 8 | public int Priority { get; set; } 9 | public double Health { get; set; } 10 | public long Value { get; set; } 11 | public int? AmmoInClip { get; set; } 12 | public int? AmmoInHopper { get; set; } 13 | public EngineeredModule Engineering { get; set; } 14 | 15 | public Module Clone() 16 | { 17 | var clone = (Module)MemberwiseClone(); 18 | clone.Engineering = Engineering?.Clone(); 19 | return clone; 20 | } 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /EliteJournalReader/Passenger.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Passenger 4 | { 5 | public long MissionID { get; set; } 6 | public string Type { get; set; } 7 | public string VIP { get; set; } 8 | public bool Wanted { get; set; } 9 | public int Count { get; set; } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /EliteJournalReader/Ranks.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace EliteJournalReader 9 | { 10 | public enum CombatRank 11 | { 12 | Harmless = 0, 13 | [Description("Mostly Harmless")] MostlyHarmless, 14 | Novice, 15 | Competent, 16 | Expert, 17 | Master, 18 | Dangerous, 19 | Deadly, 20 | Elite 21 | } 22 | 23 | public enum TradeRank 24 | { 25 | Penniless = 0, 26 | [Description("Mostly Penniless")] MostlyPenniless, 27 | Peddler, 28 | Dealer, 29 | Merchant, 30 | Broker, 31 | Entrepreneur, 32 | Tycoon, 33 | Elite 34 | } 35 | 36 | public enum ExplorationRank 37 | { 38 | Aimless = 0, 39 | [Description("Mostly Aimless")] MostlyAimless, 40 | Scout, 41 | Surveyor, 42 | Explorer, 43 | Pathfinder, 44 | Ranger, 45 | Pioneer, 46 | Elite 47 | } 48 | 49 | public enum FederationRank 50 | { 51 | None = 0, 52 | Recruit, 53 | Cadet, 54 | Midshipman, 55 | PettyOfficer, 56 | ChiefPettyOfficer, 57 | WarrantOfficer, 58 | Ensign, 59 | Lieutenant, 60 | LtCommander, 61 | PostCommander, 62 | PostCaptain, 63 | RearAdmiral, 64 | ViceAdmiral, 65 | Admiral 66 | } 67 | 68 | public enum EmpireRank 69 | { 70 | None = 0, 71 | Outsider, 72 | Serf, 73 | Master, 74 | Squire, 75 | Knight, 76 | Lord, 77 | Baron, 78 | Viscount, 79 | Count, 80 | Earl, 81 | Marquis, 82 | Duke, 83 | Prince, 84 | King 85 | } 86 | 87 | public enum CQCRank 88 | { 89 | Helpless = 0, 90 | MostlyHelpless, 91 | Amateur, 92 | SemiProfessional, 93 | Professional, 94 | Champion, 95 | Hero, 96 | Legend, 97 | Elite 98 | } 99 | 100 | public enum SoldierRank 101 | { 102 | Defenceless = 0, 103 | MostlyDefenceLess, 104 | Rookie, 105 | Soldier, 106 | Gunslinger, 107 | Warrior, 108 | Gladiator, 109 | Deadeye, 110 | Elite 111 | } 112 | 113 | public enum ExobiologistRank 114 | { 115 | DirectionLess = 0, 116 | MostlyDirectionLess, 117 | Compiler, 118 | Collector, 119 | Cataloguer, 120 | Taxonomist, 121 | Ecologist, 122 | Geneticist, 123 | Elite 124 | } 125 | } 126 | -------------------------------------------------------------------------------- /EliteJournalReader/RouteElement.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | 3 | namespace EliteJournalReader 4 | { 5 | 6 | public class RouteElement 7 | { 8 | public string StarSystem { get; set; } 9 | 10 | public long SystemAddress { get; set; } 11 | 12 | [JsonConverter(typeof(SystemPositionConverter))] 13 | public SystemPosition StarPos { get; set; } 14 | 15 | public string StarClass { get; set; } 16 | } 17 | } -------------------------------------------------------------------------------- /EliteJournalReader/SAAGenus.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class SAAGenus 4 | { 5 | public string Genus { get; set; } 6 | public string Genus_Localised { get; set; } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /EliteJournalReader/SAASignal.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class SAASignal 4 | { 5 | public string Type { get;set; } 6 | public int Count { get; set; } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /EliteJournalReader/Signal.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class Signal 4 | { 5 | public string Type { get; set; } 6 | public string Type_Localised { get; set; } 7 | public int Count { get; set; } 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /EliteJournalReader/SuitModule.cs: -------------------------------------------------------------------------------- 1 | namespace EliteJournalReader 2 | { 3 | public class SuitModule 4 | { 5 | public string SlotName { get; set; } 6 | public string ModuleName { get; set; } 7 | public long SuitModuleID { get; set; } 8 | public string Class { get; set; } 9 | public string[] WeaponMods { get; set; } 10 | } 11 | } -------------------------------------------------------------------------------- /EliteJournalReader/SystemPosition.cs: -------------------------------------------------------------------------------- 1 | using Newtonsoft.Json; 2 | using Newtonsoft.Json.Linq; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | 9 | namespace EliteJournalReader 10 | { 11 | public class SystemPosition 12 | { 13 | public decimal X, Y, Z; 14 | 15 | public bool IsZero() => X == 0 && Y == 0 && Z == 0; 16 | 17 | public override bool Equals(object obj) => obj is SystemPosition that && Equals(that); 18 | 19 | public bool Equals(SystemPosition that) => X == that.X && Y == that.Y && Z == that.Z; 20 | 21 | public override int GetHashCode() 22 | { 23 | //https://stackoverflow.com/a/892640/3131828 24 | unchecked 25 | { 26 | int h = 23; 27 | h *= 31 + X.GetHashCode(); 28 | h *= 31 + Y.GetHashCode(); 29 | h *= 31 + Z.GetHashCode(); 30 | 31 | return h; 32 | } 33 | } 34 | 35 | public decimal[] ToArray() => new[] { X, Y, Z }; 36 | 37 | public override string ToString() => FormattableString.Invariant($"{X},{Y},{Z}"); 38 | 39 | public static bool operator ==(SystemPosition left, SystemPosition right) => left.Equals(right); 40 | 41 | public static bool operator !=(SystemPosition left, SystemPosition right) => !(left == right); 42 | } 43 | 44 | public class SystemPositionConverter : JsonConverter 45 | { 46 | public override bool CanConvert(Type objectType) => objectType == typeof(SystemPosition); 47 | 48 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) 49 | { 50 | var pos = (SystemPosition)existingValue; 51 | if (JToken.ReadFrom(reader) is JArray jarr) 52 | { 53 | decimal[] array = jarr.ToObject(); 54 | pos = new SystemPosition 55 | { 56 | X = Math.Round(array[0], 3), 57 | Y = Math.Round(array[1], 3), 58 | Z = Math.Round(array[2], 3), 59 | }; 60 | } 61 | return pos; 62 | } 63 | 64 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) 65 | { 66 | var pos = (SystemPosition)value; 67 | new JArray(pos.X, pos.Y, pos.Z).WriteTo(writer); 68 | } 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /EliteJournalReader/SystemScan.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace EliteJournalReader 8 | { 9 | public class SystemScan 10 | { 11 | public string SystemName { get; set; } 12 | public long NumBodies { get; set; } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /EliteJournalReader/ThargoidWar.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace EliteJournalReader 8 | { 9 | //"ThargoidWar":{ "CurrentState":"", "NextStateSuccess":"Unknown", "NextStateFailure":"Unknown", 10 | //"SuccessStateReached":false, "WarProgress":0.000000, "RemainingPorts":0 } 11 | 12 | public class ThargoidWar 13 | { 14 | public string CurrentState { get; set; } 15 | public string NextStateSuccess { get; set; } 16 | public string NextStateFailure { get; set; } 17 | public bool SuccessStateReached { get; set; } 18 | public double WarProgress { get; set; } 19 | public long RemainingPorts { get; set; } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /EliteJournalReader/VersionAutoIncrementer.tt: -------------------------------------------------------------------------------- 1 | <#@ template debug="false" hostspecific="false" language="C#" #> 2 | <#@ output extension=".cs" #> 3 | 4 | // https://makolyte.com/auto-increment-build-numbers-in-visual-studio/ 5 | 6 | using System.Reflection; 7 | 8 | [assembly: AssemblyVersion("<#= this.Major #>.<#= this.Minor #>.<#= this.DaysSinceProjectStarted #>.<#= this.MinutesSinceMidnight #>")] 9 | 10 | <#+ 11 | 12 | int Major = 4; 13 | int Minor = 1; 14 | 15 | static DateTime ProjectStartedDate = new DateTime(year: 2014, month: 12, day: 16); 16 | int DaysSinceProjectStarted = (int)((DateTime.UtcNow - ProjectStartedDate).TotalDays); 17 | 18 | int MinutesSinceMidnight = (int)DateTime.UtcNow.TimeOfDay.TotalMinutes; 19 | 20 | #> -------------------------------------------------------------------------------- /Journal_Manual-v32.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/Journal_Manual-v32.doc -------------------------------------------------------------------------------- /Journal_Manual.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MagicMau/EliteJournalReader/0b102939cab29a2173c570ae2735a08c00a0555f/Journal_Manual.doc -------------------------------------------------------------------------------- /License.md: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Maurits Elbers 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /ReadMe.md: -------------------------------------------------------------------------------- 1 | # EliteJournalReader 2 | 3 | The game Elite Dangerous generates a journal file while playing. 4 | Tools can use this data for their own purposes. 5 | 6 | This library aims to provide an easy way to consume these journal events 7 | in a .NET environment. 8 | 9 | # Usage 10 | 11 | Instantiate a JournalWatcher object. Call `StartWatching()` to start 12 | monitoring the Elite Dangerous Save Games folder (where the journal files are created) 13 | and register for events by calling: 14 | 15 | JournalWatcher.GetEvent().Fired += MyEventHandler; 16 | 17 | All events are automatically registered by a static method, you can find them 18 | in the namespace EliteJournalReader.Events. 19 | 20 | When you're done, call `StopWatching()` to stop monitoring file changes. 21 | 22 | # More information 23 | The full documentation on all generated events can be found at: 24 | http://hosting.zaonce.net/community/journal/v18/Journal_Manual_v18.pdf 25 | (or the same as a 26 | [Word document](http://hosting.zaonce.net/community/journal/v18/Journal_Manual_v18.doc)) 27 | 28 | # Disclaimer 29 | This site was created using assets and imagery from Elite: Dangerous, 30 | with the permission of Frontier Developments plc for non-commercial purposes. 31 | It is not endorsed by nor reflects the views or opinions of Frontier Developments 32 | and no employee of Frontier Developments was involved in the making of it. 33 | --------------------------------------------------------------------------------