From 4cebd4e2fe86a195827f07edb2884575da9110f0 Mon Sep 17 00:00:00 2001 From: Kylin_on_Mac Date: Sat, 23 Sep 2023 11:12:37 +0800 Subject: [PATCH] feat: add Cheer.wav --- asset/sounds/Cheer.wav | Bin 0 -> 55356 bytes src/game.py | 15 ++++++++++++--- src/sound_controller.py | 4 ++++ 3 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 asset/sounds/Cheer.wav diff --git a/asset/sounds/Cheer.wav b/asset/sounds/Cheer.wav new file mode 100644 index 0000000000000000000000000000000000000000..4bc9782c38492d32446472e4ad16e87b37b07591 GIT binary patch literal 55356 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 P&%f;d|H1#~J_G+ZCi)|X literal 0 HcmV?d00001 diff --git a/src/game.py b/src/game.py index 26452f4..3b916df 100644 --- a/src/game.py +++ b/src/game.py @@ -75,6 +75,7 @@ class EasyGame(PaiaGame): with open(os.path.join(LEVEL_PATH, "001.json")) as f: game_params = json.load(f) self._level = 1 + self._level_file=None self._set_game_params(game_params) def _set_game_params(self, game_params): @@ -164,16 +165,20 @@ class EasyGame(PaiaGame): if self.is_running: status = GameStatus.GAME_ALIVE - elif self.score > self._score_to_pass: + elif self.is_passed: status = GameStatus.GAME_PASS else: status = GameStatus.GAME_OVER return status def reset(self): + + if self.is_passed: + self.sound_controller.play_cheer() + if self._level_file: pass - elif self.score > self._score_to_pass and self._level != -1: + elif self.is_passed and self._level != -1: # win and use level will enter next level self._level += 1 self.set_game_params_by_level(self._level) @@ -182,6 +187,10 @@ class EasyGame(PaiaGame): pass + @property + def is_passed(self): + return self.score > self._score_to_pass + @property def is_running(self): return self.frame_count < self._frame_limit @@ -247,7 +256,7 @@ class EasyGame(PaiaGame): "player": get_ai_name(0), "rank": 1, "score": self.score, - "passed": self.score > self._score_to_pass + "passed": self.is_passed } ] diff --git a/src/sound_controller.py b/src/sound_controller.py index b6688b5..284109d 100644 --- a/src/sound_controller.py +++ b/src/sound_controller.py @@ -24,6 +24,7 @@ class SoundController(): pygame.mixer.music.set_volume(0.6) self._eating_good = pygame.mixer.Sound(path.join(SOUND_PATH, "Coin.wav")) self._eating_bad = pygame.mixer.Sound(path.join(SOUND_PATH, "Low Boing.wav")) + self._cheer = pygame.mixer.Sound(path.join(SOUND_PATH, "Cheer.wav")) except Exception: self._is_sound_on = False @@ -38,3 +39,6 @@ class SoundController(): @sound_enabled def play_eating_bad(self): self._eating_bad.play() + @sound_enabled + def play_cheer(self): + self._cheer.play()