From 183711f4ac3de21d4ee31ff698f9aff785986bd1 Mon Sep 17 00:00:00 2001 From: Jordan Christensen Date: Tue, 9 Aug 2016 16:43:10 +0000 Subject: [PATCH] Keep extra pokemon in our bag so we can do smarter things later --- configs/config.json.example | 5 ++++- pokemongo_bot/__init__.py | 5 +++++ pokemongo_bot/cell_workers/transfer_pokemon.py | 17 +++++++++++++++++ 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/configs/config.json.example b/configs/config.json.example index d2e8d4f064..bee592d834 100644 --- a/configs/config.json.example +++ b/configs/config.json.example @@ -19,7 +19,10 @@ } }, { - "type": "TransferPokemon" + "type": "TransferPokemon", + "config": { + "min_empty_space": 15 + } }, { "type": "EvolvePokemon", diff --git a/pokemongo_bot/__init__.py b/pokemongo_bot/__init__.py index dd4de22551..23b189c344 100644 --- a/pokemongo_bot/__init__.py +++ b/pokemongo_bot/__init__.py @@ -362,6 +362,11 @@ def _register_events(self): self.event_manager.register_event('inventory_full') # release + self.event_manager.register_event( + 'pokemon_transfer_skipped', + parameters=('space',) + ) + self.event_manager.register_event( 'keep_best_release', parameters=( diff --git a/pokemongo_bot/cell_workers/transfer_pokemon.py b/pokemongo_bot/cell_workers/transfer_pokemon.py index ebc197ef24..dbec217a17 100644 --- a/pokemongo_bot/cell_workers/transfer_pokemon.py +++ b/pokemongo_bot/cell_workers/transfer_pokemon.py @@ -7,7 +7,24 @@ class TransferPokemon(BaseTask): SUPPORTED_TASK_API_VERSION = 1 + def initialize(self): + self.min_empty_space = self.config.get('min_empty_space', None) + + def get_pokemon_slot_left(self): + return self.bot._player["max_pokemon_storage"] - self.bot.get_inventory_count('pokemon') + def work(self): + if self.min_empty_space is not None: + free_poke_space = self.get_pokemon_slot_left() + if free_poke_space >= self.min_empty_space: + print free_poke_space + self.emit_event( + 'pokemon_transfer_skipped', + formatted="Skipping Transfering of Pokemon. {space} space left in poke bag.", + data={ 'space': free_poke_space } + ) + return + pokemon_groups = self._release_pokemon_get_groups() for pokemon_id in pokemon_groups: group = pokemon_groups[pokemon_id]