Example #1
0
    def __init__(self, file):
        # インプットとして指定されたファイルを読む
        source = CVCapture()
        source.start_recorded_file(file)
        source.need_resize = True

        # 画面が見えないと進捗が判らないので
        screen = outputs.Screen(0, size=(640, 360))

        # プラグインとして自分自身(画面)を設定しコールバックを受ける
        outputPlugins = [self, screen]

        # IkaEngine を実行
        self.engine = IkaEngine()
        self.engine.pause(False)
        self.engine.set_capture(source)
        self.engine.set_plugins(outputPlugins)
        try:
            self.engine.run()
        except:
            pass

        if args.write:
            # 正解ファイルを生成する
            if self.write_answer_file(file, self.engine.context):
                self.exit_code = 0

        elif args.regression:
            # リグレッションテスト
            answer = self.read_answer_file(file)
            if self.test_regression(self.engine.context, answer):
                self.exit_code = 0

        else:
            args.stdout = True
            self.exit_code = 0

        if args.stdout:
            # 標準出力に表示
            map = IkaUtils.map2text(self.engine.context['game']['map'],
                                    unknown='None')
            rule = IkaUtils.rule2text(self.engine.context['game']['rule'],
                                      unknown='None')
            print(file, map, rule)
Example #2
0
    def __init__(self, file):
        # インプットとして指定されたファイルを読む
        source = CVCapture()
        source.start_recorded_file(file)
        source.need_resize = True

        # 画面が見えないと進捗が判らないので
        screen = outputs.Screen(0, size=(640, 360))

        # プラグインとして自分自身(画面)を設定しコールバックを受ける
        outputPlugins = [self, screen]

        # IkaEngine を実行
        self.engine = IkaEngine()
        self.engine.pause(False)
        self.engine.set_capture(source)
        self.engine.set_plugins(outputPlugins)
        try:
            self.engine.run()
        except:
            pass

        if args.write:
            # 正解ファイルを生成する
            if self.write_answer_file(file, self.engine.context):
                self.exit_code = 0

        elif args.regression:
            # リグレッションテスト
            answer = self.read_answer_file(file)
            if self.test_regression(self.engine.context, answer):
                self.exit_code = 0

        else:
            args.stdout = True
            self.exit_code = 0

        if args.stdout:
            # 標準出力に表示
            map = IkaUtils.map2text(self.engine.context['game'][
                                    'map'], unknown='None')
            rule = IkaUtils.rule2text(self.engine.context['game'][
                                      'rule'], unknown='None')
            print(file, map, rule)
Example #3
0
    def __init__(self, file):
        self.file = file

        # インプットとして指定されたファイルを読む
        source = CVCapture()
        source.start_recorded_file(file)
        source.need_resize = True

        # 画面が見えないと進捗が判らないので
        screen = outputs.Screen(0, size=(640, 360))

        # プラグインとして自分自身(画面)を設定しコールバックを受ける
        outputPlugins = [self, screen]

        # IkaEngine を実行
        self.engine = IkaEngine()
        self.engine.pause(False)
        self.engine.set_capture(source)
        self.engine.set_plugins(outputPlugins)
        self.engine.run()
Example #4
0
    def __init__(self, file):
        self.file = file

        # インプットとして指定されたファイルを読む
        source = CVCapture()
        source.start_recorded_file(file)
        source.need_resize = True

        # 画面が見えないと進捗が判らないので
        screen = outputs.Screen(0, size=(640, 360))

        # プラグインとして自分自身(画面)を設定しコールバックを受ける
        outputPlugins = [self, screen]

        # IkaEngine を実行
        self.engine = IkaEngine()
        self.engine.pause(False)
        self.engine.set_capture(source)
        self.engine.set_plugins(outputPlugins)
        self.engine.run()