MCPcopy Create free account
hub / github.com/Mrinank-Bhowmick/python-beginner-projects / Board

Class Board

projects/Sudoku-Solver/SudokuGUI.py:33–163  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

31
32
33class Board:
34 def __init__(self, window):
35 self.board = generate()
36 self.solvedBoard = deepcopy(self.board)
37 solve(self.solvedBoard)
38 self.tiles = [
39 [Tile(self.board[i][j], window, i * 60, j * 60) for j in range(9)]
40 for i in range(9)
41 ]
42 self.window = window
43
44 def draw_board(self):
45 for i in range(9):
46 for j in range(9):
47 if j % 3 == 0 and j != 0:
48 pygame.draw.line(
49 self.window,
50 (0, 0, 0),
51 (j // 3 * 180, 0),
52 (j // 3 * 180, 540),
53 4,
54 )
55
56 if i % 3 == 0 and i != 0:
57 pygame.draw.line(
58 self.window,
59 (0, 0, 0),
60 (0, i // 3 * 180),
61 (540, i // 3 * 180),
62 4,
63 )
64
65 self.tiles[i][j].draw((0, 0, 0), 1)
66
67 if self.tiles[i][j].value != 0:
68 self.tiles[i][j].display(
69 self.tiles[i][j].value, (21 + j * 60, 16 + i * 60), (0, 0, 0)
70 )
71
72 pygame.draw.line(
73 self.window,
74 (0, 0, 0),
75 (0, (i + 1) // 3 * 180),
76 (540, (i + 1) // 3 * 180),
77 4,
78 )
79
80 def deselect(self, tile):
81 for i in range(9):
82 for j in range(9):
83 if self.tiles[i][j] != tile:
84 self.tiles[i][j].selected = False
85
86 def redraw(
87 self,
88 keys,
89 wrong,
90 time,

Callers 1

mainFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected