diff --git a/bemani/data/api/music.py b/bemani/data/api/music.py index ea79b7a..5c284d2 100644 --- a/bemani/data/api/music.py +++ b/bemani/data/api/music.py @@ -401,6 +401,10 @@ class GlobalMusicData(BaseGlobalData): def __merge_jubeat_score( self, version: int, oldscore: Score, newscore: Score ) -> Score: + rate = self.__max( + oldscore.data.get("music_rate", -1), newscore.data.get("music_rate", -1) + ) + return Score( -1, oldscore.id, @@ -419,9 +423,8 @@ class GlobalMusicData(BaseGlobalData): else newscore.data.get("ghost"), "combo": self.__max(oldscore.data["combo"], newscore.data["combo"]), "medal": self.__max(oldscore.data["medal"], newscore.data["medal"]), - "music_rate": self.__max( - oldscore.data["music_rate"], newscore.data["music_rate"] - ), + # Conditionally include this if we have any info for it. + **({"music_rate": rate} if rate >= 0 else {}), }, )