SCREENHEIGHT // 2) w.blit(not_valid, not_valid_rect) pygame.display.update() time.sleep(2) w.fill((255, 255, 255)) elif clear_board_rect.collidepoint(mouse_pos): g.clear_grid() w.fill((255, 255, 255)) g.draw_grid(SCREENWIDTH, SCREENHEIGHT) board.set_board(g.get_board()) elif reset_board_rect.collidepoint(mouse_pos): g = copy w.fill((255, 255, 255)) g.draw_grid(SCREENWIDTH, SCREENHEIGHT) board.set_board(g.get_board()) board.solutions = [] elif solve_rect.collidepoint(mouse_pos): board.solve() for i in range(len(board.board)): for j in range(len(board.board)): tile = g.board[i][j] tile.number = board.solutions[counter].board[i][j] elif next_solution_rect.collidepoint(mouse_pos): counter += 1 if counter < len(board.solutions): for i in range(len(board.board)): for j in range(len(board.board)): tile = g.board[i][j] tile.number = board.solutions[counter].board[i][j] w.fill((255, 255, 255)) g.draw_grid(SCREENWIDTH, SCREENHEIGHT)