mirror of
https://github.com/norohind/EDMC_SpanshRouter.git
synced 2026-10-22 18:02:08 +03:00
Finalized implementing the LY distance info - now works for both imports of neutron plotter and galaxy plotter, plus when issuing API call from within the plugin itself. Properly restores on restarts of the EDMC.
This commit is contained in:
1 parent
abfb417878
commit
c45db5fab9
1 file changed
+33
-10
@@ -866,8 +866,10 @@ class SpanshRouter():
|
||||
|
||||
# Spansh returned immediate error
|
||||
if results.status_code != 202:
|
||||
logger.warning(f"Failed to query plotted route from Spansh: "
|
||||
f"{results.status_code}; text: {results.text}")
|
||||
logger.warning(
|
||||
f"Failed to query plotted route from Spansh: "
|
||||
f"{results.status_code}; text: {results.text}"
|
||||
)
|
||||
|
||||
try:
|
||||
failure = json.loads(results.content)
|
||||
@@ -926,19 +928,39 @@ class SpanshRouter():
|
||||
# Clear previous route silently
|
||||
self.clear_route(show_dialog=False)
|
||||
|
||||
# Fill route
|
||||
# Fill route with distance-aware entries (API plot)
|
||||
for waypoint in route:
|
||||
self.route.append([waypoint["system"], str(waypoint["jumps"])])
|
||||
self.jumps_left += waypoint["jumps"]
|
||||
system = waypoint.get("system", "")
|
||||
jumps = waypoint.get("jumps", 0)
|
||||
|
||||
# Map API distance fields to internal format
|
||||
distance_to_arrival = waypoint.get("distance_jumped", "")
|
||||
distance_remaining = waypoint.get("distance_left", "")
|
||||
|
||||
self.route.append([
|
||||
system,
|
||||
str(jumps),
|
||||
distance_to_arrival,
|
||||
distance_remaining
|
||||
])
|
||||
|
||||
try:
|
||||
self.jumps_left += int(jumps)
|
||||
except:
|
||||
pass
|
||||
|
||||
self.enable_plot_gui(True)
|
||||
self.show_plot_gui(False)
|
||||
|
||||
# Compute offset
|
||||
self.offset = 1 if self.route and self.route[0][0] == monitor.state.get('SystemName') else 0
|
||||
self.offset = (
|
||||
1
|
||||
if self.route and self.route[0][0] == monitor.state.get('SystemName')
|
||||
else 0
|
||||
)
|
||||
self.next_stop = self.route[self.offset][0] if self.route else ""
|
||||
|
||||
# Update GUI
|
||||
# Update GUI and persist
|
||||
self.compute_distances()
|
||||
self.copy_waypoint()
|
||||
self.update_gui()
|
||||
@@ -946,8 +968,10 @@ class SpanshRouter():
|
||||
return
|
||||
|
||||
# Otherwise: Spansh error on final poll
|
||||
logger.warning(f"Failed final route fetch: {route_response.status_code}; "
|
||||
f"text: {route_response.text}")
|
||||
logger.warning(
|
||||
f"Failed final route fetch: {route_response.status_code}; "
|
||||
f"text: {route_response.text}"
|
||||
)
|
||||
|
||||
try:
|
||||
failure = json.loads(results.content)
|
||||
@@ -971,7 +995,6 @@ class SpanshRouter():
|
||||
self.enable_plot_gui(True)
|
||||
self.show_error(self.plot_error)
|
||||
|
||||
|
||||
def plot_edts(self, filename):
|
||||
try:
|
||||
with open(filename, 'r') as txtfile:
|
||||
|
||||
Reference in new issue
Block a user