Exemplo n.º 1
0
def main(args):

    assert args.c <= args.columns and args.c <= args.rows

    #print "----- Parámetros -----"
    #print "columnas: \t", args.columns
    #print "filas: \t\t", args.rows
    #print "c: \t\t", args.c
    #print "p: \t\t", args.p
    #print "----------------------"

    if args.blue_player is None:
        blue_player = HumanPlayer(BLUE)
    else:
        executable = args.blue_player.pop(0)
        blue_player = PlayerCommunicator(executable, args.blue_player, BLUE,
                                         RED)

    if args.red_player is None:
        red_player = HumanPlayer(RED)
    else:
        executable = args.red_player.pop(0)
        red_player = PlayerCommunicator(executable, args.red_player, RED, BLUE)

    ref = Referee(args.columns,
                  args.rows,
                  args.c,
                  args.p,
                  blue_player,
                  red_player,
                  show_ui=args.ui)

    iteration = 0
    while args.iterations is None or args.iterations > iteration:
        iteration += 1
        if args.first == BLUE:
            ref.runPlay(blue_player)
        elif args.first == RED:
            ref.runPlay(red_player)
        else:
            ref.runPlay(choice([blue_player, red_player]))

    ref.exit()