From d3268769e11c0e175847d7d3542cd18b0157ad7e Mon Sep 17 00:00:00 2001 From: Liam Date: Sat, 27 Jul 2024 21:05:33 +0100 Subject: [PATCH] only update the scores if it's required --- .../cc/fascinated/platform/impl/ScoreSaberPlatform.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/cc/fascinated/platform/impl/ScoreSaberPlatform.java b/src/main/java/cc/fascinated/platform/impl/ScoreSaberPlatform.java index 534c902..6583812 100644 --- a/src/main/java/cc/fascinated/platform/impl/ScoreSaberPlatform.java +++ b/src/main/java/cc/fascinated/platform/impl/ScoreSaberPlatform.java @@ -202,7 +202,14 @@ public class ScoreSaberPlatform extends Platform { continue; } - List toUpdate = scores.stream().filter(score -> score.getLeaderboardId().equals(id)).toList(); + List toUpdate = scores.stream().filter(score -> { + if (!score.getLeaderboardId().equals(id)) { // Check if the leaderboard ID matches + return false; + } + double pp = this.getPp(this.getCurrentCurveVersion(), leaderboard.getStars(), score.getAccuracy()); + return pp != score.getPp(); // Check if the pp has changed + }).toList(); + for (TrackedScore score : toUpdate) { // Update the scores double pp = this.getPp(this.getCurrentCurveVersion(), leaderboard.getStars(), score.getAccuracy()); score.setPp(pp);