diff --git a/pokemongo_bot/__init__.py b/pokemongo_bot/__init__.py index 7ca837e22c..729326112d 100644 --- a/pokemongo_bot/__init__.py +++ b/pokemongo_bot/__init__.py @@ -90,7 +90,7 @@ def tick(self): return self.navigator.take_step() - + self.tick_count +=1 def get_meta_cell(self): @@ -345,25 +345,22 @@ def get_inventory(self): def update_inventory(self): response = self.get_inventory() self.inventory = list() - if 'responses' in response: - if 'GET_INVENTORY' in response['responses']: - if 'inventory_delta' in response['responses']['GET_INVENTORY']: - if 'inventory_items' in response['responses'][ - 'GET_INVENTORY']['inventory_delta']: - for item in response['responses']['GET_INVENTORY'][ - 'inventory_delta']['inventory_items']: - if not 'inventory_item_data' in item: - continue - if not 'item' in item['inventory_item_data']: - continue - if not 'item_id' in item['inventory_item_data'][ - 'item']: - continue - if not 'count' in item['inventory_item_data'][ - 'item']: - continue - self.inventory.append(item['inventory_item_data'][ - 'item']) + if response.get('responses', {}).get('GET_INVENTORY', {}) + .get('inventory_delta', {}).get('inventory_items'): + for item in response['responses']['GET_INVENTORY'][ + 'inventory_delta']['inventory_items']: + if not 'inventory_item_data' in item: + continue + if not 'item' in item['inventory_item_data']: + continue + if not 'item_id' in item['inventory_item_data'][ + 'item']: + continue + if not 'count' in item['inventory_item_data'][ + 'item']: + continue + self.inventory.append(item['inventory_item_data'][ + 'item']) def current_inventory(self): inventory_req = self.get_inventory() @@ -497,28 +494,24 @@ def heartbeat(self): def get_inventory_count(self, what): response_dict = self.get_inventory() - if 'responses' in response_dict: - if 'GET_INVENTORY' in response_dict['responses']: - if 'inventory_delta' in response_dict['responses'][ - 'GET_INVENTORY']: - if 'inventory_items' in response_dict['responses'][ - 'GET_INVENTORY']['inventory_delta']: - pokecount = 0 - itemcount = 1 - for item in response_dict['responses'][ - 'GET_INVENTORY']['inventory_delta'][ - 'inventory_items']: - #print('item {}'.format(item)) - if 'inventory_item_data' in item: - if 'pokemon_data' in item[ - 'inventory_item_data']: - pokecount = pokecount + 1 - if 'item' in item['inventory_item_data']: - if 'count' in item['inventory_item_data'][ - 'item']: - itemcount = itemcount + \ - item['inventory_item_data'][ - 'item']['count'] + if response.get('responses', {}).get('GET_INVENTORY', {}) + .get('inventory_delta', {}).get('inventory_items'): + pokecount = 0 + itemcount = 1 + for item in response_dict['responses'][ + 'GET_INVENTORY']['inventory_delta'][ + 'inventory_items']: + #print('item {}'.format(item)) + if 'inventory_item_data' in item: + if 'pokemon_data' in item[ + 'inventory_item_data']: + pokecount = pokecount + 1 + if 'item' in item['inventory_item_data']: + if 'count' in item['inventory_item_data'][ + 'item']: + itemcount = itemcount + \ + item['inventory_item_data'][ + 'item']['count'] if 'pokemon' in what: return pokecount if 'item' in what: @@ -527,52 +520,33 @@ def get_inventory_count(self, what): def get_player_info(self): response_dict = self.get_inventory() - if 'responses' in response_dict: - if 'GET_INVENTORY' in response_dict['responses']: - if 'inventory_delta' in response_dict['responses'][ - 'GET_INVENTORY']: - if 'inventory_items' in response_dict['responses'][ - 'GET_INVENTORY']['inventory_delta']: - pokecount = 0 - itemcount = 1 - for item in response_dict['responses'][ - 'GET_INVENTORY']['inventory_delta'][ - 'inventory_items']: - #print('item {}'.format(item)) - if 'inventory_item_data' in item: - if 'player_stats' in item[ - 'inventory_item_data']: - playerdata = item['inventory_item_data'][ - 'player_stats'] - - nextlvlxp = ( - int(playerdata.get('next_level_xp', 0)) - - int(playerdata.get('experience', 0))) - - if 'level' in playerdata: - if 'experience' in playerdata: - logger.log('Level: {level}'.format(**playerdata) + - ' (Next Level: {} XP)'.format(nextlvlxp) + - ' (Total: {experience} XP)'.format(**playerdata), 'cyan') - - - if 'pokemons_captured' in playerdata: - if 'poke_stop_visits' in playerdata: - logger.log( - 'Pokemon Captured: {pokemons_captured}'.format(**playerdata) + - ' | Pokestops Visited: {poke_stop_visits}'.format(**playerdata), 'cyan') - - def get_forts(self, order_by_distance=False): - forts = [fort - for fort in self.cell['forts'] - if 'latitude' in fort and 'type' in fort] - - if order_by_distance: - forts.sort(key=lambda x: distance( - self.position[0], - self.position[1], - x['latitude'], - x['longitude'] - )) - - return forts + if response.get('responses', {}).get('GET_INVENTORY', {}) + .get('inventory_delta', {}).get('inventory_items'): + pokecount = 0 + itemcount = 1 + for item in response_dict['responses'][ + 'GET_INVENTORY']['inventory_delta'][ + 'inventory_items']: + #print('item {}'.format(item)) + if 'inventory_item_data' in item: + if 'player_stats' in item[ + 'inventory_item_data']: + playerdata = item['inventory_item_data'][ + 'player_stats'] + + nextlvlxp = ( + int(playerdata.get('next_level_xp', 0)) - + int(playerdata.get('experience', 0))) + + if 'level' in playerdata: + if 'experience' in playerdata: + logger.log('Level: {level}'.format(**playerdata) + + ' (Next Level: {} XP)'.format(nextlvlxp) + + ' (Total: {experience} XP)'.format(**playerdata), 'cyan') + + + if 'pokemons_captured' in playerdata: + if 'poke_stop_visits' in playerdata: + logger.log( + 'Pokemon Captured: {pokemons_captured}'.format(**playerdata) + + ' | Pokestops Visited: {poke_stop_visits}'.format(**playerdata), 'cyan')