[+] Mai2 add nameplate fields to settableFields

pull/119/head
Clansty 2025-02-13 13:43:41 +08:00
parent 519f67071d
commit 7431e58f70
No known key found for this signature in database
GPG Key ID: 3A6BE8BAF2EDE134
1 changed files with 11 additions and 17 deletions

View File

@ -27,8 +27,16 @@ class Maimai2(
// Only show > S rank
override val shownRanks = mai2Scores.filter { it.first >= 97 * 10000 }
override val settableFields: Map<String, (Mai2UserDetail, String) -> Unit> by lazy {
mapOf("userName" to usernameCheck(SEGA_USERNAME_CAHRS))
mapOf(
"userName" to usernameCheck(SEGA_USERNAME_CAHRS),
"iconId" to { u, v -> u.iconId = v.int() },
"plateId" to { u, v -> u.plateId = v.int() },
"titleId" to { u, v -> u.titleId = v.int() },
"frameId" to { u, v -> u.frameId = v.int() },
"partnerId" to { u, v -> u.partnerId = v.int() },
)
}
override val gettableFields: Set<String> = setOf("lastGameId", "lastRomVersion", "classRank", "playerRating", "courseRank")
override suspend fun userSummary(@RP username: Str, @RP token: String?) = us.cardByName(username) { card ->
val extra = repos.userGeneralData.findByUser_Card_ExtId(card.extId)
@ -82,22 +90,8 @@ class Maimai2(
}
@API("user-name-plate")
suspend fun userNamePlate(@RP username: Str) = us.cardByName(username) { card ->
val userData = repos.userData.findByCardExtId(card.extId).orElse(null) ?: (404 - "User not found")
mapOf(
"lastGameId" to userData.lastGameId,
"lastRomVersion" to userData.lastRomVersion,
"iconId" to userData.iconId,
"plateId" to userData.plateId,
"titleId" to userData.titleId,
"frameId" to userData.frameId,
"partnerId" to userData.partnerId,
"classRank" to userData.classRank,
"playerRating" to userData.playerRating,
"userName" to userData.userName,
"courseRank" to userData.courseRank,
)
}
// legacy
suspend fun userNamePlate(@RP username: Str) = this.userDetail(username)
@API("user-favorite")
suspend fun userFavorite(@RP username: Str) = us.cardByName(username) { card ->