├── .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 |
--------------------------------------------------------------------------------