From 7c9bbc337eda764566213bd96e163b3c70a49379 Mon Sep 17 00:00:00 2001 From: Brandon Rodriguez <brodriguez8774@gmail.com> Date: Sat, 6 Nov 2021 13:27:35 -0400 Subject: [PATCH] Correct "total move counter" resetting when roomba fails --- src/misc.py | 4 +++- src/systems.py | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/misc.py b/src/misc.py index 8d1a4db..24d9b0d 100644 --- a/src/misc.py +++ b/src/misc.py @@ -765,11 +765,12 @@ def calc_trash_distances(data_manager, roomba_only=False): _calc_trash_distances() -def calc_traveling_salesman(data_manager, calc_new=True, debug=False): +def calc_traveling_salesman(data_manager, calc_new=True, total_move_reset=True, debug=False): """ Calculates the approximately-ideal overall path to visit all trash tiles. :param data_manager: Data manager data structure. Consolidates useful program data to one location. :param calc_new: Bool indicating if previously calculated path data should be discarded. Such as wall entity update. + :param total_move_reset: Bool indicating if "total moves counter" should reset. """ logger.debug('calc_traveling_salesman()') @@ -790,6 +791,7 @@ def calc_traveling_salesman(data_manager, calc_new=True, debug=False): if calc_new: data_manager.ideal_overall_path = calculated_path data_manager.gui_data['optimal_counter'] = curr_total_dist + if total_move_reset: data_manager.gui_data['total_move_counter'] = 0 logger.debug('') diff --git a/src/systems.py b/src/systems.py index a2f5cc8..ca3088c 100644 --- a/src/systems.py +++ b/src/systems.py @@ -230,7 +230,7 @@ class AbstractMovementSystem(ABC): # Recalculate path distances for new roomba location. calc_trash_distances(self.data_manager, roomba_only=(not roomba_failed)) - calc_traveling_salesman(self.data_manager, calc_new=roomba_failed) + calc_traveling_salesman(self.data_manager, calc_new=roomba_failed, total_move_reset=False) # Update for a movement. self.data_manager.gui_data['total_move_counter'] += 1 -- GitLab