feat: add rest of all piece types (L, O, S, T, Z)

This commit is contained in:
2021-06-03 21:00:23 -04:00
parent 2e914fd1a6
commit f31a4f5017
2 changed files with 12 additions and 7 deletions

View File

@@ -69,3 +69,8 @@ class Piece: # TODO game objects base class / interface?
# shape attributes
I_SHAPE = (((0, 0), (1, 0), (1, 1), (0, 1)), ((1, 0), (2, 0), (2, 1), (1, 1)), ((2, 0), (3, 0), (3, 1), (2, 1)), ((3, 0), (4, 0), (4, 1), (3, 1)), (2, 0))
J_SHAPE = (((0, 0), (1, 0), (1, 1), (0, 1)), ((1, 0), (2, 0), (2, 1), (1, 1)), ((2, 0), (3, 0), (3, 1), (2, 1)), ((2, 1), (3, 1), (3, 2), (2, 2)), (1.5, 0.5))
L_SHAPE = (((0, 0), (1, 0), (1, 1), (0, 1)), ((1, 0), (2, 0), (2, 1), (1, 1)), ((2, 0), (3, 0), (3, 1), (2, 1)), ((0, 1), (1, 1), (1, 2), (0, 2)), (1.5, 0.5))
O_SHAPE = (((0, 0), (1, 0), (1, 1), (0, 1)), ((1, 0), (2, 0), (2, 1), (1, 1)), ((1, 1), (2, 1), (2, 2), (1, 2)), ((0, 1), (1, 1), (1, 2), (0, 2)), (1, 1))
S_SHAPE = (((0, 1), (1, 1), (1, 2), (0, 2)), ((1, 0), (2, 0), (2, 1), (1, 1)), ((1, 1), (2, 1), (2, 2), (1, 2)), ((2, 0), (3, 0), (3, 1), (2, 1)), (1.5, 0.5))
T_SHAPE = (((0, 0), (1, 0), (1, 1), (0, 1)), ((1, 0), (2, 0), (2, 1), (1, 1)), ((1, 1), (2, 1), (2, 2), (1, 2)), ((2, 0), (3, 0), (3, 1), (2, 1)), (1.5, 0.5))
Z_SHAPE = (((0, 0), (1, 0), (1, 1), (0, 1)), ((1, 0), (2, 0), (2, 1), (1, 1)), ((1, 1), (2, 1), (2, 2), (1, 2)), ((2, 1), (3, 1), (3, 2), (2, 2)), (1.5, 0.5))

14
main.py
View File

@@ -41,7 +41,7 @@ def main():
pygame.display.set_icon(loaded_icon)
i_piece = Piece(Piece.I_SHAPE, (100, 100), base_one_color)
j_piece = Piece(Piece.J_SHAPE, (250, 100), base_two_color)
piece = Piece(Piece.Z_SHAPE, (250, 100), base_two_color)
is_running = True
while is_running:
@@ -53,21 +53,21 @@ def main():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_SPACE:
i_piece.rotate()
j_piece.rotate()
piece.rotate()
if event.key == pygame.K_LEFT:
i_piece.move((-tile_size, 0))
j_piece.move((-tile_size, 0))
piece.move((-tile_size, 0))
if event.key == pygame.K_RIGHT:
i_piece.move((tile_size, 0))
j_piece.move((tile_size, 0))
piece.move((tile_size, 0))
if event.key == pygame.K_UP:
i_piece.move((0, -tile_size))
j_piece.move((0, -tile_size))
piece.move((0, -tile_size))
if event.key == pygame.K_DOWN:
i_piece.move((0, tile_size))
j_piece.move((0, tile_size))
piece.move((0, tile_size))
draw(screen, [i_piece, j_piece])
draw(screen, [i_piece, piece])
pygame.quit()