diff --git a/source/constants.py b/source/constants.py index 34d9526..e67541f 100755 --- a/source/constants.py +++ b/source/constants.py @@ -696,6 +696,7 @@ SOUNDS = ( # 程序交互等 SOUND_WIN := _getSound("win.ogg"), SOUND_SCREAM := _getSound("scream.ogg"), SOUND_CANNOT_CHOOSE_WARNING := _getSound("cannotChooseWarning.ogg"), + SOUND_FINAL_FANFARE := _getSound("finalfanfare.ogg") ) # 记录本地存储文件初始值 diff --git a/source/state/level.py b/source/state/level.py index a90e803..c63203c 100644 --- a/source/state/level.py +++ b/source/state/level.py @@ -1421,24 +1421,30 @@ class Level(tool.State): def checkGameState(self): if self.checkVictory(): - # 播放胜利音效 - c.SOUND_WIN.play() if self.game_info[c.GAME_MODE] == c.MODE_ADVENTURE: self.game_info[c.LEVEL_NUM] += 1 if self.game_info[c.LEVEL_NUM] >= map.TOTAL_LEVEL: self.game_info[c.LEVEL_COMPLETIONS] += 1 self.game_info[c.LEVEL_NUM] = 1 self.next = c.AWARD_SCREEN + # 播放大胜利音效 + c.SOUND_FINAL_FANFARE.play() else: self.next = c.GAME_VICTORY + # 播放胜利音效 + c.SOUND_WIN.play() elif self.game_info[c.GAME_MODE] == c.MODE_LITTLEGAME: self.game_info[c.LITTLEGAME_NUM] += 1 - if self.game_info[c.LITTLEGAME_NUM] > map.TOTAL_LITTLE_GAME: + if self.game_info[c.LITTLEGAME_NUM] >= map.TOTAL_LITTLE_GAME: self.game_info[c.LITTLEGAME_COMPLETIONS] += 1 self.game_info[c.LITTLEGAME_NUM] = 1 self.next = c.AWARD_SCREEN + # 播放大胜利音效 + c.SOUND_FINAL_FANFARE.play() else: - self.next = c.GAME_VICTORY + self.next = c.GAME_VICTORY + # 播放胜利音效 + c.SOUND_WIN.play() self.done = True self.saveUserData() elif self.checkLose():