def online_minmax(col, bo, refer, depth): start = time.time() move = move2(bo, depth, col) str_mov = str(move) f_mov = (8 - int(str_mov[1]), ord(str_mov[0]) - 97) t_mov = (8 - int(str_mov[3]), ord(str_mov[2]) - 97) mov = (f_mov, t_mov) if col == False: 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(mov) #print(f_mov) #print(t_mov) make_move(f_mov, t_mov, 0.1, refer) bo.push(move) print(bo, '\nTook ', round(time.time() - start, 3), ' seconds thinking') return bo
def online_minmax(col, bo, refer, tim): #only play from bottom so white needs flip bo, move = order_minimax_move(tim, bo, col, score_minimax, flip=col) mov = move[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) if col: bo = np.flip(bo) else: make_move(mov[0], mov[1], 0.1, refer) if col: bo = np.flip(bo) print(bo) return 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_minmax(col, bo, refer): mov = move2(bo, 3, col) str_mov = str(mov) f_mov = (7 - (int(str_mov[1]) - 1), 7 - (7 - (ord(str_mov[0]) - 97))) t_mov = (7 - (int(str_mov[3]) - 1), 7 - (7 - (ord(str_mov[2]) - 97))) print(mov) print(f_mov) print(t_mov) make_move(f_mov, t_mov, 0.1, refer) bo.push(mov) print(bo) return bo
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])