From 0551f8bff14e71cccc1a6f2ea5a58b18b2d33378 Mon Sep 17 00:00:00 2001 From: Azalea <22280294+hykilpikonna@users.noreply.github.com> Date: Thu, 28 Mar 2024 19:05:35 -0400 Subject: [PATCH] [+] Wacca: user/rating/update --- .../icu/samnyan/aqua/sega/wacca/WaccaServer.kt | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/main/java/icu/samnyan/aqua/sega/wacca/WaccaServer.kt b/src/main/java/icu/samnyan/aqua/sega/wacca/WaccaServer.kt index 4a82d629..37603c3b 100644 --- a/src/main/java/icu/samnyan/aqua/sega/wacca/WaccaServer.kt +++ b/src/main/java/icu/samnyan/aqua/sega/wacca/WaccaServer.kt @@ -275,6 +275,23 @@ fun WaccaServer.init() { ls(best.ls(), ls(song.songId, best.clears[0]), "seasonalInfo" - (1..11).map { 0 }, "rankingInfo" - empty) } + "user/music/UpdateCoop" redirect "user/music/update" + "user/music/UpdateVersus" redirect "user/music/update" + "user/music/UpdateTrial" redirect "user/music/update" + + "user/rating/update" { _, (uid, newRating, songs) -> + val u = user(uid) ?: (404 - "User not found") + rp.user.save(u.apply { rating = newRating.int() }) + + // Update best record + (songs as List>).forEach { (songId, diff, newRating) -> + val best = rp.bestScore.findByUserAndSongIdAndDifficulty(u, songId.int(), diff.int()) ?: return@forEach + best.rating = newRating.int() + rp.bestScore.save(best) + } + + empty + } }