def start_game(return_args): global WINNER WINNER = 0 return_args['map'] = cli.get_map(return_args['map']) return_args['dir_p2'] = '/player/' + return_args['dir_p2'] return_args['dir_p1'] = '/player/' + return_args['dir_p1'] global game (game, dockers, sock_file) = cli.create_game(return_args) try: print("running game") winner = cli.run_game(game, dockers, return_args, sock_file) finally: cli.cleanup(dockers, return_args, sock_file) lock.release() eel.trigger_end_game(1 if winner == 'player1' else 2)()
def start_game(return_args): global WINNER WINNER = 0 return_args['map_name'] = return_args['map'] # check mountpoint for maps first c2 = os.path.abspath( os.path.join('/player/battlecode-maps', return_args['map'])) if 'NODOCKER' not in os.environ and os.path.exists(c2): return_args['map'] = cli.get_map(c2) else: c1 = os.path.abspath( os.path.join('..', 'battlecode-maps', return_args['map'])) if os.path.exists(c1): return_args['map'] = cli.get_map(c1) else: if 'testmap' not in return_args['map']: print("Can't find map {} in {}, falling back to test map..", return_args['map'], os.path.abspath(os.path.join('..', 'battlecode-maps'))) if 'NODOCKER' not in os.environ: print( '(Also looked in /player/battlecode-maps, which should be mounted to the battlecode-maps directory of your scaffold)' ) return_args['map'] = bc.GameMap.test_map() if 'NODOCKER' in os.environ: return_args['docker'] = False return_args['dir_p1'] = os.path.abspath( os.path.join('..', return_args['dir_p1'])) return_args['dir_p2'] = os.path.abspath( os.path.join('..', return_args['dir_p2'])) else: return_args['docker'] = True return_args['dir_p1'] = os.path.abspath( os.path.join('/player', return_args['dir_p1'])) return_args['dir_p2'] = os.path.abspath( os.path.join('/player', return_args['dir_p2'])) return_args['terminal_viewer'] = False return_args['extra_delay'] = 0 global game (game, dockers, sock_file) = cli.create_game(return_args) winner = None try: print("Running game...") winner = cli.run_game(game, dockers, return_args, sock_file) finally: cli.cleanup(dockers, return_args, sock_file) lock.release() if winner == 'player1': eel.trigger_end_game(1)() elif winner == ' player2': eel.trigger_end_game(2)() else: eel.trigger_end_game(0)() print("Ready to run next game.")
def start_game(return_args): global WINNER WINNER = 0 return_args['map'] = cli.get_map(os.path.abspath(os.path.join('..', 'battlecode-maps', return_args['map']))) if 'NODOCKER' in os.environ: return_args['docker'] = False return_args['dir_p1'] = os.path.abspath(os.path.join('..', return_args['dir_p1'])) return_args['dir_p2'] = os.path.abspath(os.path.join('..', return_args['dir_p2'])) else: return_args['docker'] = True return_args['dir_p1'] = os.path.abspath(os.path.join('/player', return_args['dir_p1'])) return_args['dir_p2'] = os.path.abspath(os.path.join('/player', return_args['dir_p2'])) global game (game, dockers, sock_file) = cli.create_game(return_args) winner = None try: print("Running game...") winner = cli.run_game(game, dockers, return_args, sock_file) finally: cli.cleanup(dockers, return_args, sock_file) lock.release() if winner == 'player1': eel.trigger_end_game(1)() elif winner == ' player2': eel.trigger_end_game(2)() else: eel.trigger_end_game(0)()