From b8eb9f979d0b6f3fbb80a0b19848b0eedc9d4626 Mon Sep 17 00:00:00 2001 From: Jonathan Harris Date: Tue, 2 Jan 2018 16:15:10 +0000 Subject: [PATCH] Synthesise Cargo and Materials events on LoadGame --- plugins/edsm.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/plugins/edsm.py b/plugins/edsm.py index b583c94a..61c9e52a 100644 --- a/plugins/edsm.py +++ b/plugins/edsm.py @@ -201,6 +201,27 @@ def journal_entry(cmdr, is_beta, system, station, entry, state): '_shipId': state['ShipID'], } entry.update(transient) + + if entry['event'] == 'LoadGame': + # Synthesise Cargo and Materials events on LoadGame since we will have missed them because Cmdr was unknown + cargo = { + 'timestamp': entry['timestamp'], + 'event': 'Cargo', + 'Inventory': [ { 'Name': k, 'Count': v } for k,v in state['Cargo'].iteritems() ], + } + cargo.update(transient) + this.queue.put((cmdr, cargo)) + + materials = { + 'timestamp': entry['timestamp'], + 'event': 'Materials', + 'Raw': [ { 'Name': k, 'Count': v } for k,v in state['Raw'].iteritems() ], + 'Manufactured': [ { 'Name': k, 'Count': v } for k,v in state['Manufactured'].iteritems() ], + 'Encoded': [ { 'Name': k, 'Count': v } for k,v in state['Encoded'].iteritems() ], + } + materials.update(transient) + this.queue.put((cmdr, materials)) + this.queue.put((cmdr, entry))