Esempio n. 1
0
    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
Esempio n. 2
0
    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')
Esempio n. 3
0
    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