0.1.1 #7

Merged
Lerking merged 2 commits from 0.1.1 into main 2025-04-27 19:28:14 +02:00
2 changed files with 20 additions and 14 deletions

View File

@@ -3,8 +3,6 @@ import globals
import enums
from random import choice
class Brick:
def __init__(self, brick, state = enums.BrickState.Next):
self.shape = []
@@ -49,8 +47,11 @@ class Brick:
return True if self.state == enums.BrickState.Current else False
def update(self):
if self.y + self.rows == globals.GRID_HEIGHT:
return False
self.y += 1
self.location = (self.x, self.y)
return True
def rotate_clockwise(self, shape):
return [list(row)[::-1] for row in zip(*shape)]
@@ -72,6 +73,7 @@ class Brick:
new_x = x + col_idx
new_y = y + row_idx
if new_x <= 0 or new_x >= globals.GRID_WIDTH or new_y >= globals.GRID_HEIGHT:
print(f"Collision X:{new_x}, Y:{new_y}")
return True
if new_y >= 0 and globals.dropgrid[new_y][new_x]:
return True
@@ -82,18 +84,20 @@ class Brick:
print(f"State set to {self.state}")
def move_right(self):
if self.collision(self.shape, self.x, self.y):
return
else:
self.x += 1
self.location = (self.x, self.y)
print(f"X: {self.x}")
if self.x != 0:
if self.collision(self.shape, self.x, self.y):
return
self.x += 1
self.location = (self.x, self.y)
def move_left(self):
if self.collision(self.shape, self.x, self.y):
return
else:
self.x -= 1
self.location = (self.x, self.y)
print(f"X: {self.x}")
if self.x != globals.GRID_WIDTH:
if self.collision(self.shape, self.x, self.y):
return
self.x -= 1
self.location = (self.x, self.y)
def drop(self):
print("Dropping")

View File

@@ -10,7 +10,7 @@ from dropzone import DropZone
from dropnext import DropNext
from hud import Hud
__version__ = "0.1.0"
__version__ = "0.1.1"
# Constants
HAT_REPEAT_DELAY = 0 # milliseconds before first repeat
@@ -177,7 +177,9 @@ class Tetris:
self.current.drop()
case self.fall_timer:
self.current.update()
if not self.current.update():
self.current = self.next
self.next = Brick(brick = randrange(0, len(BRICKS)))
# Handle hotplugging
case pygame.JOYDEVICEADDED: