From ff54bd56fd932cb3a8980d2cc9356fb4dbfd5a1d Mon Sep 17 00:00:00 2001 From: Jonathan Harris Date: Thu, 10 Aug 2017 18:25:41 +0100 Subject: [PATCH] Send cargo to EDSM --- plugins/edsm.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/plugins/edsm.py b/plugins/edsm.py index 923820d9..7d3841f4 100644 --- a/plugins/edsm.py +++ b/plugins/edsm.py @@ -204,6 +204,12 @@ def journal_entry(cmdr, is_beta, system, station, entry, state): elif entry['event'] in ['ShipyardBuy', 'ShipyardSell']: sellship(cmdr, entry.get('SellShipID')) + # Send cargo to EDSM on startup or change + if entry['event'] in (['StartUp', 'LoadGame', 'CollectCargo', 'EjectCargo', 'MarketBuy', 'MarketSell', + 'MiningRefined', 'EngineerContribution'] or + (entry['event'] == 'MissionCompleted' and entry.get('CommodityReward'))): + setcargo(cmdr, state['Cargo']) + # Send materials info to EDSM on startup or change if entry['event'] in ['StartUp', 'LoadGame', 'MaterialCollected', 'MaterialDiscarded', 'ScientificResearch', 'EngineerCraft', 'Synthesis']: setmaterials(cmdr, state['Raw'], state['Manufactured'], state['Encoded']) @@ -336,6 +342,9 @@ def setcredits(cmdr, balance, loan): if balance is not None: call(cmdr, 'api-commander-v1/set-credits', '&balance=%d&loan=%d' % (balance, loan)) +def setcargo(cmdr, cargo): + call(cmdr, 'api-commander-v1/set-materials', "&type=cargo&values=%s" % json.dumps(cargo, separators = (',', ':'))) + def setmaterials(cmdr, raw, manufactured, encoded): call(cmdr, 'api-commander-v1/set-materials', "&type=data&values=%s" % json.dumps(encoded, separators = (',', ':'))) materials = {}