From c9e317fc8ce1087459ab2499b806ab99410bdce1 Mon Sep 17 00:00:00 2001 From: Matt J Madsen Date: Mon, 22 Aug 2016 11:23:19 -0500 Subject: [PATCH] Better edge case output on catcher worker (#4567) * Ultraball try emit_event * Output change * Change emit_events * register_event(enough_ultraballs) * Altered no_pokeballs output --- pokemongo_bot/__init__.py | 1 + pokemongo_bot/cell_workers/pokemon_catch_worker.py | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pokemongo_bot/__init__.py b/pokemongo_bot/__init__.py index 3fd04997a8..97aa59e02f 100644 --- a/pokemongo_bot/__init__.py +++ b/pokemongo_bot/__init__.py @@ -306,6 +306,7 @@ def _register_events(self): ) ) self.event_manager.register_event('no_pokeballs') + self.event_manager.register_event('enough_ultraballs') self.event_manager.register_event( 'pokemon_catch_rate', parameters=( diff --git a/pokemongo_bot/cell_workers/pokemon_catch_worker.py b/pokemongo_bot/cell_workers/pokemon_catch_worker.py index 994dc6caec..e220a9642f 100644 --- a/pokemongo_bot/cell_workers/pokemon_catch_worker.py +++ b/pokemongo_bot/cell_workers/pokemon_catch_worker.py @@ -358,13 +358,13 @@ def _do_catch(self, pokemon, encounter_id, catch_rate_by_ball, is_vip=False): while ball_count[current_ball] == 0 and current_ball < maximum_ball: current_ball += 1 if ball_count[current_ball] == 0: - self.emit_event('no_pokeballs', formatted='No usable pokeballs found!') - # use untraball if there is no other balls with constraint to `min_ultraball_to_keep` if maximum_ball != ITEM_ULTRABALL and ball_count[ITEM_ULTRABALL] > min_ultraball_to_keep: maximum_ball = ITEM_ULTRABALL + self.emit_event('enough_ultraballs', formatted='No regular balls left! Trying ultraball.') continue else: + self.emit_event('no_pokeballs', formatted='No pokeballs left! Fleeing...') return WorkerResult.ERROR # check future ball count