From 55cf25d3ae404d8cc2fd33c87058066f3c1bb4b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aure=CC=81lien=20Chre=CC=81tien?= Date: Thu, 11 Aug 2016 00:36:56 +0200 Subject: [PATCH 1/3] Remove the "evolve_captured" flag in favor of the EvolveTask --- configs/config.json.cluster.example | 1 - configs/config.json.example | 1 - configs/config.json.map.example | 1 - configs/config.json.path.example | 1 - configs/config.json.pokemon.example | 1 - pokecli.py | 19 +------ .../cell_workers/pokemon_catch_worker.py | 54 ------------------- 7 files changed, 2 insertions(+), 76 deletions(-) diff --git a/configs/config.json.cluster.example b/configs/config.json.cluster.example index eb507cd43c..73ba037703 100644 --- a/configs/config.json.cluster.example +++ b/configs/config.json.cluster.example @@ -78,7 +78,6 @@ "location_cache": true, "distance_unit": "km", "reconnecting_timeout": 15, - "evolve_captured": "NONE", "catch_randomize_reticle_factor": 1.0, "catch_randomize_spin_factor": 1.0, "logging_color": true, diff --git a/configs/config.json.example b/configs/config.json.example index 08c844218c..71829b5143 100644 --- a/configs/config.json.example +++ b/configs/config.json.example @@ -86,7 +86,6 @@ "location_cache": true, "distance_unit": "km", "reconnecting_timeout": 15, - "evolve_captured": "NONE", "catch_randomize_reticle_factor": 1.0, "catch_randomize_spin_factor": 1.0, "logging_color": true, diff --git a/configs/config.json.map.example b/configs/config.json.map.example index cf6604976b..f20fb9f1ac 100644 --- a/configs/config.json.map.example +++ b/configs/config.json.map.example @@ -320,7 +320,6 @@ "location_cache": true, "distance_unit": "km", "reconnecting_timeout": 15, - "evolve_captured": "NONE", "catch_randomize_reticle_factor": 1.0, "catch_randomize_spin_factor": 1.0, "logging_color": true, diff --git a/configs/config.json.path.example b/configs/config.json.path.example index 6b6619573b..08867f1967 100644 --- a/configs/config.json.path.example +++ b/configs/config.json.path.example @@ -80,7 +80,6 @@ "location_cache": true, "distance_unit": "km", "reconnecting_timeout": 15, - "evolve_captured": "NONE", "catch_randomize_reticle_factor": 1.0, "catch_randomize_spin_factor": 1.0, "logging_color": true, diff --git a/configs/config.json.pokemon.example b/configs/config.json.pokemon.example index 1dfa01199d..3216ad6681 100644 --- a/configs/config.json.pokemon.example +++ b/configs/config.json.pokemon.example @@ -86,7 +86,6 @@ "location_cache": true, "distance_unit": "km", "reconnecting_timeout": 15, - "evolve_captured": "NONE", "catch_randomize_reticle_factor": 1.0, "catch_randomize_spin_factor": 1.0, "logging_color": true, diff --git a/pokecli.py b/pokecli.py index f59ae3acb9..e1942b44ec 100644 --- a/pokecli.py +++ b/pokecli.py @@ -326,15 +326,6 @@ def _json_loader(filename): type=str, default='km' ) - add_config( - parser, - load, - short_flag="-ec", - long_flag="--evolve_captured", - help="(Ad-hoc mode) Pass \"all\" or a list of pokemon to evolve (e.g., \"Pidgey,Weedle,Caterpie\"). Bot will attempt to evolve all the pokemon captured!", - type=str, - default=[] - ) add_config( parser, load, @@ -453,11 +444,8 @@ def task_configuration_error(flag_name): task_configuration_error('{}.{}'.format(outer, inner)) return None - if (config.evolve_captured - and (not isinstance(config.evolve_captured, str) - or str(config.evolve_captured).lower() in ["true", "false"])): - parser.error('"evolve_captured" should be list of pokemons: use "all" or "none" to match all ' + - 'or none of the pokemons, or use a comma separated list such as "Pidgey,Weedle,Caterpie"') + if config.evolve_captured: + parser.error('"evolve_captured" has been removed in favor of the EvolveTask') return None if not (config.location or config.location_cache): @@ -483,9 +471,6 @@ def task_configuration_error(flag_name): if not os.path.isdir(web_dir): raise - if config.evolve_captured and isinstance(config.evolve_captured, str): - config.evolve_captured = [str(pokemon_name).strip() for pokemon_name in config.evolve_captured.split(',')] - fix_nested_config(config) return config diff --git a/pokemongo_bot/cell_workers/pokemon_catch_worker.py b/pokemongo_bot/cell_workers/pokemon_catch_worker.py index d551a68632..29b2fb5cfb 100644 --- a/pokemongo_bot/cell_workers/pokemon_catch_worker.py +++ b/pokemongo_bot/cell_workers/pokemon_catch_worker.py @@ -187,30 +187,6 @@ def _is_vip_pokemon(self, pokemon): return True return self._pokemon_matches_config(self.config.vips, pokemon, default_logic='or') - def _get_current_pokemon_ids(self): - # don't use cached bot.get_inventory() here because we need to have actual information in capture logic - response_dict = self.api.get_inventory() - - try: - inventory_items = response_dict['responses']['GET_INVENTORY']['inventory_delta']['inventory_items'] - except KeyError: - return [] # no items - - id_list = [] - for item in inventory_items: - try: - pokemon = item['inventory_item_data']['pokemon_data'] - except KeyError: - continue - - # ignore eggs - if pokemon.get('is_egg'): - continue - - id_list.append(pokemon['id']) - - return id_list - def _pct(self, rate_by_ball): return '{0:.2f}'.format(rate_by_ball * 100) @@ -322,9 +298,6 @@ def _do_catch(self, pokemon, encounter_id, catch_rate_by_ball, is_vip=False): catch_rate_by_ball = self._use_berry(berry_id, berry_count, encounter_id, catch_rate_by_ball, current_ball) berry_count -= 1 - # get current pokemon list before catch - pokemon_before_catch = self._get_current_pokemon_ids() - # try to catch pokemon! items_stock[current_ball] -= 1 self.emit_event( @@ -404,31 +377,4 @@ def _do_catch(self, pokemon, encounter_id, catch_rate_by_ball, is_vip=False): self.bot.softban = False - # evolve pokemon if necessary - if self.config.evolve_captured and (self.config.evolve_captured[0] == 'all' or pokemon.name in self.config.evolve_captured): - pokemon_after_catch = self._get_current_pokemon_ids() - pokemon_to_evolve = list(set(pokemon_after_catch) - set(pokemon_before_catch)) - - if len(pokemon_to_evolve) == 0: - break - - self._do_evolve(pokemon, pokemon_to_evolve[0]) - break - - def _do_evolve(self, pokemon, new_pokemon_id): - response_dict = self.api.evolve_pokemon(pokemon_id=new_pokemon_id) - catch_pokemon_status = response_dict['responses']['EVOLVE_POKEMON']['result'] - - if catch_pokemon_status == 1: - self.emit_event( - 'pokemon_evolved', - formatted='{pokemon} evolved!', - data={'pokemon': pokemon.name} - ) - else: - self.emit_event( - 'pokemon_evolve_fail', - formatted='Failed to evolve {pokemon}!', - data={'pokemon': pokemon.name} - ) From f1a2166845956a8b99af39c7d78683e11cb5b72d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aure=CC=81lien=20Chre=CC=81tien?= Date: Thu, 11 Aug 2016 00:41:19 +0200 Subject: [PATCH 2/3] Remove unused event --- pokemongo_bot/__init__.py | 4 ---- pokemongo_bot/event_handlers/colored_logging_handler.py | 1 - 2 files changed, 5 deletions(-) diff --git a/pokemongo_bot/__init__.py b/pokemongo_bot/__init__.py index 31e7eb0bd1..eb4a69db92 100644 --- a/pokemongo_bot/__init__.py +++ b/pokemongo_bot/__init__.py @@ -287,10 +287,6 @@ def _register_events(self): 'pokemon_evolved', parameters=('pokemon', 'iv', 'cp') ) - self.event_manager.register_event( - 'pokemon_evolve_fail', - parameters=('pokemon',) - ) self.event_manager.register_event('skip_evolve') self.event_manager.register_event('threw_berry_failed', parameters=('status_code',)) self.event_manager.register_event('vip_pokemon') diff --git a/pokemongo_bot/event_handlers/colored_logging_handler.py b/pokemongo_bot/event_handlers/colored_logging_handler.py index 80e5414ae6..e7a2a248ab 100644 --- a/pokemongo_bot/event_handlers/colored_logging_handler.py +++ b/pokemongo_bot/event_handlers/colored_logging_handler.py @@ -71,7 +71,6 @@ class ColoredLoggingHandler(EventHandler): 'moving_to_fort': 'white', 'moving_to_lured_fort': 'white', 'pokemon_catch_rate': 'white', - 'pokemon_evolve_fail': 'white', 'pokestop_on_cooldown': 'white', 'pokestop_out_of_range': 'white', 'polyline_request': 'white', From d6008c017f10397960196ad63b47b0170b8d090b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aure=CC=81lien=20Chre=CC=81tien?= Date: Thu, 11 Aug 2016 12:06:18 +0200 Subject: [PATCH 3/3] Warn the user instead of stopping the bot --- pokecli.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pokecli.py b/pokecli.py index e1942b44ec..4544ccf124 100644 --- a/pokecli.py +++ b/pokecli.py @@ -444,9 +444,8 @@ def task_configuration_error(flag_name): task_configuration_error('{}.{}'.format(outer, inner)) return None - if config.evolve_captured: - parser.error('"evolve_captured" has been removed in favor of the EvolveTask') - return None + if "evolve_captured" in load: + logger.warning('The evolve_captured argument is no longer supported. Please use the EvolvePokemon task instead') if not (config.location or config.location_cache): parser.error("Needs either --use-location-cache or --location.")