From 7f9b1fb266fde0a287512c454964e0f05cbcbe3a Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Thu, 4 Jan 2024 06:43:34 +0200 Subject: [PATCH] feat(game): add langing sound --- assets/music/landing.wav | Bin 0 -> 16478 bytes src/game/game.py | 4 ++++ src/game/main.py | 2 +- src/utils/config.py | 2 +- 4 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 assets/music/landing.wav diff --git a/assets/music/landing.wav b/assets/music/landing.wav new file mode 100644 index 0000000000000000000000000000000000000000..230a6ebd67d7ace3dc6458fd1161fa4e5c986352 GIT binary patch literal 16478 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 XBk*+uzK+1x5%@X+Uq|5o?+E-K*dr)C literal 0 HcmV?d00001 diff --git a/src/game/game.py b/src/game/game.py index 4bb6d09..557eadb 100644 --- a/src/game/game.py +++ b/src/game/game.py @@ -49,6 +49,9 @@ class Game: self.score = 0 self.lines = 0 + self.landing_sound = pygame.mixer.Sound(CONFIG.music.landing) + self.landing_sound.set_volume(CONFIG.music.volume) + def run(self) -> None: self.dispaly_surface.blit(self.surface, CONFIG.game.pos) self.draw() @@ -110,6 +113,7 @@ class Game: self.tetromino.move_horizontal(Direction.RIGHT) def create_new_tetromino(self) -> None: + self.landing_sound.play() if self.game_over(): self.restart() diff --git a/src/game/main.py b/src/game/main.py index 6065846..f3462cf 100644 --- a/src/game/main.py +++ b/src/game/main.py @@ -26,7 +26,7 @@ class Main: self.music = pygame.mixer.Sound(CONFIG.music.background) self.music.set_volume(CONFIG.music.volume) - self.music.play() + self.music.play(-1) def draw(self) -> None: pygame.display.update() diff --git a/src/utils/config.py b/src/utils/config.py index f8d0202..cdfeb25 100644 --- a/src/utils/config.py +++ b/src/utils/config.py @@ -54,7 +54,7 @@ class Window: @define class Music: background: Path = BASE_PATH / "assets" / "music" / "background.wav" - langing: Path = BASE_PATH / "assets" / "music" / "landing.wav" + landing: Path = BASE_PATH / "assets" / "music" / "landing.wav" volume: float = 0.01