def third_stage(self): kill_enemy = KillEnemy() kill_enemy.start() item_pos = action.find_item_in_bar( gate_bar_pos, ['Acceleration Gate to Central Warehouses']) if item_pos is not None: log.info('found item position') action.click_pos(item_pos) target_info = action.parse_target_data(action.get_target_data()) target_distance = action.parse_distance(target_info["distance"]) if (target_distance["metric"] == "km" and target_distance["number"] * 1000 > loot_distance) or \ (target_distance["metric"] == "m" and target_distance["number"] > loot_distance): log.info('flying to wreck') if target_distance["metric"] == "km": target_distance["number"] *= 1000 action.fly_to_target(target_distance["number"], loot_distance) action.click_pos(warp_dock_loot_pos) action.check_warp_end(enemy_bar_pos) action.click_pos(anomaly_info_close_pos) else: return False return True
def start(self): log.init_time() log.info('# start warp to anomaly') self._is_anomaly_closed = False anomaly_pos, anomaly_info = action.find_anomaly_pos( anomaly_init_pos, anomaly_name_list, self._except_anomaly_ids) if anomaly_pos is not None: log.info('found anomaly - start warping') anomaly_pos[0] = anomaly_warp_x action.click_pos(anomaly_pos) if 'drone' in anomaly_info['name'].lower(): action.click_pos(anomaly_info_close_pos) warp_result, target_data = action.check_warp_end(enemy_bar_pos) is_someone_in_grid, grid_data = action.get_grid_info(target_data) if is_someone_in_grid: log.info('have someone in anomaly with name: ' + grid_data['name']) self._is_anomaly_closed = True self._except_anomaly_ids.append(anomaly_info['id']) if not warp_result: self._is_anomaly_closed = True else: self._is_anomaly_end = True log.info('# elapsed time: ' + str(log.elapsed_time()) + ' sec') log.info('# end warp to anomaly')
def first_stage(self): item_pos = action.find_item_in_bar(gate_bar_pos, ['Ancient Acceleration Gate']) if item_pos is not None: # move to wreck log.info('found item position') action.click_pos(item_pos) action.click_pos(warp_dock_loot_pos) action.check_warp_end(enemy_bar_pos) action.click_pos(anomaly_info_close_pos) else: return False return True