diff --git a/assets/music/background.mp3 b/assets/music/background.mp3 new file mode 100644 index 0000000..e8899f9 Binary files /dev/null and b/assets/music/background.mp3 differ diff --git a/assets/music/background.wav b/assets/music/background.wav deleted file mode 100644 index 900ec90..0000000 Binary files a/assets/music/background.wav and /dev/null differ diff --git a/settings.toml b/settings.toml index ccda425..30f1608 100644 --- a/settings.toml +++ b/settings.toml @@ -1,5 +1,5 @@ [General] -pause = ["esc", "F1"] +pause = ["escape", "F1"] # WIP quit = ["q"] [Movement] @@ -18,7 +18,7 @@ ccw = [ ] # counter-clockwise [Action] -hold = ["shift", "c", "keypad 0"] +hold = ["left shift", "right shift", "c", "keypad 0"] # WIP drop = ["space", "keypad 5"] [Volume.Music] diff --git a/src/game/screens/game.py b/src/game/screens/game.py index 371001f..9a9667c 100644 --- a/src/game/screens/game.py +++ b/src/game/screens/game.py @@ -30,6 +30,7 @@ class Game(BaseScreen): def __init__(self, game_mode: GameMode, settings: dict[str, Any]) -> None: self.game_mode = game_mode self.settings = settings + self.paused = False self._initialize_game_components() self._start_background_music() diff --git a/src/game/screens/tetris.py b/src/game/screens/tetris.py index 3c4b02e..1972df0 100644 --- a/src/game/screens/tetris.py +++ b/src/game/screens/tetris.py @@ -69,7 +69,7 @@ class Tetris(BaseScreen): """Run a single iteration of the game loop.""" self.draw() self._timer_update() - self.handle_event() + self.handle_events() def draw(self) -> None: """Draw the game surface and its components.""" @@ -83,7 +83,7 @@ class Tetris(BaseScreen): self._update_display_surface() self.sprites.update() - def handle_event(self) -> None: + def handle_events(self) -> None: """Handle player input events.""" keys: pygame.key.ScancodeWrapper = pygame.key.get_pressed() @@ -366,12 +366,12 @@ class Tetris(BaseScreen): See `settings.toml` for the default key bindings. """ - right_keys = [ + right_keys: list[int] = [ pygame.key.key_code(key) for key in self.settings["Movement"]["right"] ] right_key_pressed = any(keys[key] for key in right_keys) - left_keys = [ + left_keys: list[int] = [ pygame.key.key_code(key) for key in self.settings["Movement"]["left"] ] left_key_pressed = any(keys[key] for key in left_keys) @@ -390,10 +390,12 @@ class Tetris(BaseScreen): See `settings.toml` for the default key bindings. """ - cw_keys = [pygame.key.key_code(key) for key in self.settings["Rotation"]["cw"]] + cw_keys: list[int] = [ + pygame.key.key_code(key) for key in self.settings["Rotation"]["cw"] + ] cw_key_pressed = any(keys[key] for key in cw_keys) - ccw_keys = [ + ccw_keys: list[int] = [ pygame.key.key_code(key) for key in self.settings["Rotation"]["ccw"] ] ccw_key_pressed = any(keys[key] for key in ccw_keys) @@ -413,7 +415,7 @@ class Tetris(BaseScreen): See `settings.toml` for the default key bindings. """ - down_keys = [ + down_keys: list[int] = [ pygame.key.key_code(key) for key in self.settings["Movement"]["down"] ] down_key_pressed = any(keys[key] for key in down_keys) diff --git a/src/utils/config.py b/src/utils/config.py index 8ff77aa..169dd06 100644 --- a/src/utils/config.py +++ b/src/utils/config.py @@ -61,7 +61,7 @@ class Window: @define class Music: - background: Path = BASE_PATH / "assets" / "music" / "background.wav" + background: Path = BASE_PATH / "assets" / "music" / "background.mp3" landing: Path = BASE_PATH / "assets" / "music" / "landing.wav"