From 11457cf4ca4b31178b5544329474faba69cf3cd7 Mon Sep 17 00:00:00 2001 From: Till Skrodzki Date: Thu, 29 Oct 2020 11:35:37 +0100 Subject: [PATCH 1/2] Update MITMBase.py --- mapadroid/worker/MITMBase.py | 49 ------------------------------------ 1 file changed, 49 deletions(-) diff --git a/mapadroid/worker/MITMBase.py b/mapadroid/worker/MITMBase.py index 000d764d4..335979d00 100644 --- a/mapadroid/worker/MITMBase.py +++ b/mapadroid/worker/MITMBase.py @@ -277,59 +277,10 @@ def _clear_quests(self, delayadd, openmenu=True): self.logger.debug("_clear_quests Open menu: {}, {}", int(x), int(y)) time.sleep(6 + int(delayadd)) - if self._enhanced_mode: - x, y = self._resocalc.get_close_main_button_coords(self) - self._communicator.click(int(x), int(y)) - return - - x, y = self._resocalc.get_quest_listview(self) - self._communicator.click(int(x), int(y)) - self.logger.debug("_clear_quests Open field: {}, {}", int(x), int(y)) - time.sleep(4 + int(delayadd)) - - trashcancheck = self._get_trash_positions(full_screen=True) - self.logger.debug("_clear_quests Found trash: {}", trashcancheck) - if trashcancheck is None: - self.logger.error('Could not find any trashcan - abort') - return - if len(trashcancheck) == 0: - self._clear_quests_failcount += 1 - if self._clear_quests_failcount < 3: - self.logger.warning("Could not find any trashcan on a valid screenshot {} time(s) in a row!", - self._clear_quests_failcount) - else: - self._clear_quests_failcount = 0 - self.logger.error("Unable to clear quests 3 times in a row. Restart pogo ...") - if not self._restart_pogo(mitm_mapper=self._mitm_mapper): - # TODO: put in loop, count up for a reboot ;) - raise InternalStopWorkerException - return - else: - self.logger.info("Found {} trashcan(s) on screen", len(trashcancheck)) - # get confirm box coords - x, y = self._resocalc.get_confirm_delete_quest_coords(self) - - for trash in range(len(trashcancheck)): - self._clear_quests_failcount = 0 - self.set_devicesettings_value('last_questclear_time', time.time()) - self.logger.info("Delete old quest {}", int(trash) + 1) - for i in range(3): - self.logger.debug("repeated trash click #{}", i + 1) - self._communicator.click(int(trashcancheck[0].x), int(trashcancheck[0].y)) - time.sleep(0.3 + int(delayadd)) - self.logger.debug("final trash click ...") - self._communicator.click(int(trashcancheck[0].x), int(trashcancheck[0].y)) - time.sleep(2.5 + int(delayadd)) - self._communicator.click(int(x), int(y)) - time.sleep(1 + int(delayadd)) - x, y = self._resocalc.get_close_main_button_coords(self) self._communicator.click(int(x), int(y)) - time.sleep(1.5) - self.logger.debug('{_clear_quests} finished') - return def _open_gym(self, delayadd): self.logger.debug('{_open_gym} called') From dcea98f10d80a3110b8deb552822943d476e8dbd Mon Sep 17 00:00:00 2001 From: Joddie <5710881+fosJoddie@users.noreply.github.com> Date: Sat, 31 Oct 2020 20:21:39 +0100 Subject: [PATCH 2/2] remove conditional for quest cleanup If getting a quest failed in some conditions, it could be benefitial to try and clear quests even in quest enhance mode. --- mapadroid/worker/WorkerQuests.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/mapadroid/worker/WorkerQuests.py b/mapadroid/worker/WorkerQuests.py index 715b1d5e0..97f4134d2 100644 --- a/mapadroid/worker/WorkerQuests.py +++ b/mapadroid/worker/WorkerQuests.py @@ -748,8 +748,7 @@ def _handle_stop(self, timestamp: float): if self._db_wrapper.check_stop_quest(self.current_location.lat, self.current_location.lng): self.logger.info('Quest is done without us noticing. Getting new Quest...') - if not self._enhanced_mode: - self.clear_thread_task = ClearThreadTasks.QUEST + self.clear_thread_task = ClearThreadTasks.QUEST break elif data_received == FortSearchResultTypes.QUEST: self.logger.info('Received new Quest') @@ -793,8 +792,7 @@ def _handle_stop(self, timestamp: float): if not self._restart_pogo(mitm_mapper=self._mitm_mapper): # TODO: put in loop, count up for a reboot ;) raise InternalStopWorkerException - if not self._enhanced_mode: - self.clear_thread_task = ClearThreadTasks.QUEST + self.clear_thread_task = ClearThreadTasks.QUEST self._clear_quest_counter = 0 break else: