Exemple #1
0
def checker():

    profiler = cProfile.Profile()
    profiler.enable()
    read()
    profiler.disable()
    stats = pstats.Stats(profiler).sort_stats('cumtime')
    stats.print_stats()
def run(col, tim):
    refer = get_ref()
    if col == True:
        old_bo = np.zeros((8, 8))
    else:
        old_bo = new_board()

    while True:
        new_bo = read(ref=refer)
        print(old_bo, '\n ==============')
        print(new_bo, '\n ==============')

        if np.array_equal(old_bo, new_bo) == False:
            temp_bo = online_minmax(col, new_bo, refer, tim)
            #time.sleep(0.5)

            if np.array_equal(temp_bo, read(ref=refer)):
                old_bo = temp_bo
def online_random(): #only for white start at the bottom
    refer = (350,228)
    a = read(ref = refer)
    move = random_moves(a,True)
    mov = move[1][0]
    #print(mov)
    f_mov = (mov[0][0]-2*(mov[0][0]-4)-1,mov[0][1]-2*(mov[0][1]-4)-1)
    t_mov = (mov[1][0]-2*(mov[1][0]-4)-1,mov[1][1]-2*(mov[1][1]-4)-1)
    #print(f_mov,t_mov)
    make_move(f_mov,t_mov,0.1,refer)
    #make_move(mov[0],mov[1],1,refer)
    print(np.flip(move[0]))
def online_play():
    ref = (350, 228)  #(x,y) top left corner postion
    nex = int(input('Please press enter colour of player \n 0=White/1=Black'))
    print('Starting in 5')

    if nex == 0:
        col = True
    else:
        col = False

    while True:
        bo = read()
        if col == True:
            move = random_moves(bo, col)
            make_move(move[0], move[1], 1)
        else:
            time.sleep(3)
def online_minmax(col): #only play from bottom so white needs flip
    refer = get_ref()
    a = read(ref = refer)
    
    move = minimax_move(a,3,col,score_minimax,flip=col)
    
    mov = move[1][0]
    #print(mov)
    if col == True:
        f_mov = (mov[0][0]-2*(mov[0][0]-4)-1,mov[0][1]-2*(mov[0][1]-4)-1)
        t_mov = (mov[1][0]-2*(mov[1][0]-4)-1,mov[1][1]-2*(mov[1][1]-4)-1)
        #print(f_mov,t_mov)
        make_move(f_mov,t_mov,0.1,refer)
        #make_move(mov[0],mov[1],1,refer)
        print(np.flip(move[0]))
    else:
        make_move(mov[0],mov[1],0.1,refer)
        print(move[0])
def read2(ref, flip=True):
    return board_conv(read(ref), flip)