|
10 | 10 | from dumbdisplay.layer_turtle import LayerTurtle |
11 | 11 | from dumbdisplay.layer_lcd import LayerLcd |
12 | 12 | from dumbdisplay_examples.tetris.tetris_common import Grid, _colors, _grid_n_rows, _grid_n_cols, _block_unit_width, \ |
13 | | - _width, _height, _left, _top, _draw_grid |
| 13 | + _width, _height, _left, _top, _draw_grid, _check_can_place_block_grid, _commit_block_grid |
14 | 14 |
|
15 | 15 | from dumbdisplay_examples.utils import DDAppBase, create_example_wifi_dd |
16 | 16 |
|
@@ -97,27 +97,27 @@ def _randomize_grid() -> Grid: |
97 | 97 | grid_cells.append(grid_row) |
98 | 98 | return Grid(grid_cells=grid_cells) |
99 | 99 |
|
100 | | -def _check_can_place_block_grid(block_grid: Grid, block_grid_x_off: int, block_grid_y_offset: int, grid: Grid) -> bool: |
101 | | - for y in range(block_grid.n_rows): |
102 | | - for x in range(block_grid.n_cols): |
103 | | - if block_grid.get_value(y, x) != 0: |
104 | | - row_idx = y + block_grid_y_offset |
105 | | - col_idx = x + block_grid_x_off |
106 | | - if row_idx < 0 or row_idx >= grid.n_rows: |
107 | | - return True |
108 | | - if col_idx < 0 or col_idx >= grid.n_cols: |
109 | | - return True |
110 | | - if grid.get_value(row_idx, col_idx) != 0: |
111 | | - return True |
112 | | - return False |
113 | | - |
114 | | - |
115 | | -def _commit_block_grid(block_grid: Grid, block_grid_x_off: int, block_grid_y_offset: int, grid: Grid): |
116 | | - for y in range(block_grid.n_rows): |
117 | | - for x in range(block_grid.n_cols): |
118 | | - color = block_grid.get_value(y, x) |
119 | | - if color != 0: |
120 | | - grid.set_value(y + block_grid_y_offset, x + block_grid_x_off, color) |
| 100 | +# def _check_can_place_block_grid(block_grid: Grid, block_grid_x_off: int, block_grid_y_offset: int, grid: Grid) -> bool: |
| 101 | +# for y in range(block_grid.n_rows): |
| 102 | +# for x in range(block_grid.n_cols): |
| 103 | +# if block_grid.get_value(y, x) != 0: |
| 104 | +# row_idx = y + block_grid_y_offset |
| 105 | +# col_idx = x + block_grid_x_off |
| 106 | +# if row_idx < 0 or row_idx >= grid.n_rows: |
| 107 | +# return True |
| 108 | +# if col_idx < 0 or col_idx >= grid.n_cols: |
| 109 | +# return True |
| 110 | +# if grid.get_value(row_idx, col_idx) != 0: |
| 111 | +# return True |
| 112 | +# return False |
| 113 | +# |
| 114 | +# |
| 115 | +# def _commit_block_grid(block_grid: Grid, block_grid_x_off: int, block_grid_y_offset: int, grid: Grid): |
| 116 | +# for y in range(block_grid.n_rows): |
| 117 | +# for x in range(block_grid.n_cols): |
| 118 | +# color = block_grid.get_value(y, x) |
| 119 | +# if color != 0: |
| 120 | +# grid.set_value(y + block_grid_y_offset, x + block_grid_x_off, color) |
121 | 121 |
|
122 | 122 |
|
123 | 123 | # def _draw(x, y, color_number, pen: LayerTurtle): |
@@ -260,7 +260,7 @@ def sync_image(self): |
260 | 260 | _draw_grid(self.grid, self.pen) |
261 | 261 |
|
262 | 262 |
|
263 | | -class TetrisOneBlock2App(DDAppBase): |
| 263 | +class TetrisTwoBlockApp(DDAppBase): |
264 | 264 | def __init__(self, dd: DumbDisplay = create_example_wifi_dd()): |
265 | 265 | super().__init__(dd) |
266 | 266 | self.score: LayerTurtle = None |
@@ -426,5 +426,5 @@ def moveBlockRight(self) -> bool: |
426 | 426 |
|
427 | 427 | if __name__ == "__main__": |
428 | 428 | from dumbdisplay_examples.utils import create_example_wifi_dd, DDAppBase |
429 | | - app = TetrisOneBlock2App(create_example_wifi_dd()) |
| 429 | + app = TetrisTwoBlockApp(create_example_wifi_dd()) |
430 | 430 | app.run() |
0 commit comments