From 8fc5e84b9fcba48d01eb422c4ead2bd219d9426e Mon Sep 17 00:00:00 2001 From: Julien Lavergne Date: Fri, 16 Sep 2016 19:00:14 +0800 Subject: [PATCH] Fix api issues when session stale --- pokemongo_bot/cell_workers/complete_tutorial.py | 11 +++++------ pokemongo_bot/cell_workers/evolve_pokemon.py | 3 +-- pokemongo_bot/cell_workers/pokemon_catch_worker.py | 7 +++---- pokemongo_bot/walkers/step_walker.py | 3 +-- 4 files changed, 10 insertions(+), 14 deletions(-) diff --git a/pokemongo_bot/cell_workers/complete_tutorial.py b/pokemongo_bot/cell_workers/complete_tutorial.py index 7fdfcd9c97..2e988954a6 100644 --- a/pokemongo_bot/cell_workers/complete_tutorial.py +++ b/pokemongo_bot/cell_workers/complete_tutorial.py @@ -13,7 +13,6 @@ class CompleteTutorial(BaseTask): SUPPORTED_TASK_API_VERSION = 1 def initialize(self): - self.api = self.bot.api self.nickname = self.config.get('nickname','') self.team = self.config.get('team',0) self.tutorial_run = True @@ -96,7 +95,7 @@ def _encounter_tutorial(self): # You just need to call the API with the pokemon you choose # Probably can't get MewTwo as first pokemon though first_pokemon_id = random.choice([1, 4, 7]) - response_dict = self.api.encounter_tutorial_complete( + response_dict = self.bot.api.encounter_tutorial_complete( pokemon_id=first_pokemon_id) try: if response_dict['responses']['ENCOUNTER_TUTORIAL_COMPLETE']['result'] == 1: @@ -128,7 +127,7 @@ def _random_avatar(self): def _set_avatar(self): avatar = self._random_avatar() - response_dict = self.api.set_avatar(player_avatar=avatar) + response_dict = self.bot.api.set_avatar(player_avatar=avatar) status = response_dict['responses']['SET_AVATAR']['status'] try: if status == 1: @@ -147,7 +146,7 @@ def _set_avatar(self): return False def _set_nickname(self, nickname): - response_dict = self.api.claim_codename(codename=nickname) + response_dict = self.bot.api.claim_codename(codename=nickname) try: result = response_dict['responses']['CLAIM_CODENAME']['status'] if result == 1: @@ -170,7 +169,7 @@ def _set_nickname(self, nickname): return False def _set_tutorial_state(self, completed): - response_dict = self.api.mark_tutorial_complete(tutorials_completed=[ + response_dict = self.bot.api.mark_tutorial_complete(tutorials_completed=[ completed], send_marketing_emails=False, send_push_notifications=False) try: self._player = response_dict['responses'][ @@ -189,7 +188,7 @@ def _set_team(self): return True sleep(10) - response_dict = self.api.set_player_team(team=self.team) + response_dict = self.bot.api.set_player_team(team=self.team) try: result = response_dict['responses']['SET_PLAYER_TEAM']['status'] if result == 1: diff --git a/pokemongo_bot/cell_workers/evolve_pokemon.py b/pokemongo_bot/cell_workers/evolve_pokemon.py index a9852514f3..145756aac2 100644 --- a/pokemongo_bot/cell_workers/evolve_pokemon.py +++ b/pokemongo_bot/cell_workers/evolve_pokemon.py @@ -18,7 +18,6 @@ def __init__(self, bot, config): def initialize(self): self.start_time = 0 - self.api = self.bot.api self.evolve_list = self.config.get('evolve_list', []) self.donot_evolve_list = self.config.get('donot_evolve_list', []) self.min_evolve_speed = self.config.get('min_evolve_speed', 25) @@ -148,7 +147,7 @@ def _execute_pokemon_evolve(self, pokemon, cache): if pokemon.name in cache: return False - response_dict = self.api.evolve_pokemon(pokemon_id=pokemon.unique_id) + response_dict = self.bot.api.evolve_pokemon(pokemon_id=pokemon.unique_id) if response_dict.get('responses', {}).get('EVOLVE_POKEMON', {}).get('result', 0) == 1: xp = response_dict.get("responses", {}).get("EVOLVE_POKEMON", {}).get("experience_awarded", 0) evolution = response_dict.get("responses", {}).get("EVOLVE_POKEMON", {}).get("evolved_pokemon_data", {}) diff --git a/pokemongo_bot/cell_workers/pokemon_catch_worker.py b/pokemongo_bot/cell_workers/pokemon_catch_worker.py index 3a879c76c1..0a29646075 100644 --- a/pokemongo_bot/cell_workers/pokemon_catch_worker.py +++ b/pokemongo_bot/cell_workers/pokemon_catch_worker.py @@ -52,7 +52,6 @@ def __init__(self, pokemon, bot, config): super(PokemonCatchWorker, self).__init__(bot, config) def initialize(self): - self.api = self.bot.api self.position = self.bot.position self.pokemon_list = self.bot.pokemon_list self.inventory = inventory.items() @@ -210,7 +209,7 @@ def create_encounter_api_call(self): player_latitude = self.pokemon['latitude'] player_longitude = self.pokemon['longitude'] - request = self.api.create_request() + request = self.bot.api.create_request() if 'spawn_point_id' in self.pokemon: spawn_point_id = self.pokemon['spawn_point_id'] self.spawn_point_guid = spawn_point_id @@ -348,7 +347,7 @@ def _use_berry(self, berry_id, berry_count, encounter_id, catch_rate_by_ball, cu } ) - response_dict = self.api.use_item_capture( + response_dict = self.bot.api.use_item_capture( item_id=berry_id, encounter_id=encounter_id, spawn_point_id=self.spawn_point_guid @@ -523,7 +522,7 @@ def _do_catch(self, pokemon, encounter_id, catch_rate_by_ball, is_vip=False): if random() >= self.catch_throw_parameters_hit_rate and not is_vip: hit_pokemon = 0 - response_dict = self.api.catch_pokemon( + response_dict = self.bot.api.catch_pokemon( encounter_id=encounter_id, pokeball=current_ball, normalized_reticle_size=throw_parameters['normalized_reticle_size'], diff --git a/pokemongo_bot/walkers/step_walker.py b/pokemongo_bot/walkers/step_walker.py index 78adb7ab4a..b9cc8c6943 100644 --- a/pokemongo_bot/walkers/step_walker.py +++ b/pokemongo_bot/walkers/step_walker.py @@ -10,7 +10,6 @@ class StepWalker(object): def __init__(self, bot, dest_lat, dest_lng, dest_alt=None, precision=0.5): self.bot = bot - self.api = bot.api self.epsilon = 0.01 self.precision = max(precision, self.epsilon) @@ -38,7 +37,7 @@ def step(self, speed=None): new_position = self.get_next_position(origin_lat, origin_lng, origin_alt, self.dest_lat, self.dest_lng, self.dest_alt, speed) - self.api.set_position(new_position[0], new_position[1], new_position[2]) + self.bot.api.set_position(new_position[0], new_position[1], new_position[2]) self.bot.event_manager.emit("position_update", sender=self, level="debug",