Beispiel #1
0
    def run(self):
        player = self.process_client.login(3)
        map_graph = self.process_client.read_map()
        objects = self.process_client.read_objects()
        strategy = Strategy(player, map_graph, objects)
        if self.is_gui:
            self.gui = GUI(player, map_graph, objects)

        while player.is_alive:
            if self.is_gui:
                self.gui.turn()
                if ((not self.gui.paused) or self.gui.onestep):
                    moves = strategy.get_moves()
                    if moves:
                        for move in moves:
                            self.process_client.move(move)
                    self.process_client.turn()
            else:
                moves = strategy.get_moves()
                if moves:
                    for move in moves:
                        self.process_client.move(move)
                self.process_client.turn()
                sleep(0.5)

        return player.is_alive  # for testing
    def run(self):
        status, start_data = self.remote_process_client.login(self.name)
        try:
            map_graph = self.remote_process_client.read_map()
            objects = self.remote_process_client.read_objects()
            strategy = Strategy(start_data)
            while strategy.in_progress:
                self.remote_process_client.update_objects(objects)
                moves = strategy.get_moves(objects, map_graph)
                if moves:
                    for move in moves:
                        self.remote_process_client.move(move)
                self.remote_process_client.turn()

        finally:
            self.remote_process_client.logout()
            self.remote_process_client.close()