mirror of https://github.com/hykilpikonna/AquaDX
[+] Better kaleidx
parent
b178d7fd8d
commit
dfee2cd71f
|
@ -6,6 +6,8 @@ import ext.*
|
||||||
import icu.samnyan.aqua.sega.general.PagedHandler
|
import icu.samnyan.aqua.sega.general.PagedHandler
|
||||||
import icu.samnyan.aqua.sega.maimai2.model.response.data.UserRivalMusic
|
import icu.samnyan.aqua.sega.maimai2.model.response.data.UserRivalMusic
|
||||||
import icu.samnyan.aqua.sega.maimai2.model.response.data.UserRivalMusicDetail
|
import icu.samnyan.aqua.sega.maimai2.model.response.data.UserRivalMusicDetail
|
||||||
|
import icu.samnyan.aqua.sega.maimai2.model.userdata.Mai2UserKaleidx
|
||||||
|
import java.time.LocalDate
|
||||||
import java.util.*
|
import java.util.*
|
||||||
|
|
||||||
fun Maimai2ServletController.initApis() {
|
fun Maimai2ServletController.initApis() {
|
||||||
|
@ -187,13 +189,34 @@ fun Maimai2ServletController.initApis() {
|
||||||
"GetGameNgMusicId" static { mapOf("length" to 0, "musicIdList" to empty) }
|
"GetGameNgMusicId" static { mapOf("length" to 0, "musicIdList" to empty) }
|
||||||
"GetGameTournamentInfo" static { mapOf("length" to 0, "gameTournamentInfoList" to empty) }
|
"GetGameTournamentInfo" static { mapOf("length" to 0, "gameTournamentInfoList" to empty) }
|
||||||
|
|
||||||
|
// <phaseId: start offset days>
|
||||||
|
val phases = mapOf(1 to 1, 2 to 7, 3 to 14, 4 to 21)
|
||||||
|
// Find the minimum phase id that started prior to today.
|
||||||
|
fun findPhase(baseDate: LocalDate): Int {
|
||||||
|
val today = LocalDate.now()
|
||||||
|
return phases.entries.find { baseDate.plusDays(it.value.toLong()) >= today }?.key ?: 5
|
||||||
|
}
|
||||||
|
|
||||||
// Kaleidoscope, added on 1.50
|
// Kaleidoscope, added on 1.50
|
||||||
"GetGameKaleidxScope" static { mapOf("gameKaleidxScopeList" to ls(
|
"GetGameKaleidxScope" { mapOf("gameKaleidxScopeList" to ls(
|
||||||
mapOf("gateId" to 1, "phaseId" to 1),
|
mapOf("gateId" to 1, "phaseId" to findPhase(LocalDate.of(2025, 1, 18))),
|
||||||
|
mapOf("gateId" to 2, "phaseId" to findPhase(LocalDate.of(2025, 2, 20))),
|
||||||
|
mapOf("gateId" to 3, "phaseId" to 2),
|
||||||
|
mapOf("gateId" to 4, "phaseId" to 2),
|
||||||
|
mapOf("gateId" to 5, "phaseId" to 2),
|
||||||
|
mapOf("gateId" to 6, "phaseId" to 2),
|
||||||
)) }
|
)) }
|
||||||
"GetUserKaleidxScope".unpaged {
|
"GetUserKaleidxScope".unpaged {
|
||||||
db.userKaleidx.findByUser_Card_ExtId(uid)
|
val u = db.userData.findByCardExtId(uid)() ?: (404 - "User not found")
|
||||||
|
db.userKaleidx.findByUser(u)
|
||||||
.mapApply { isKeyFound = true }
|
.mapApply { isKeyFound = true }
|
||||||
|
.ifEmpty { ls(
|
||||||
|
// I'll add this here so people don't need to unlock it
|
||||||
|
Mai2UserKaleidx().apply {
|
||||||
|
user = u
|
||||||
|
gateId = 1
|
||||||
|
}
|
||||||
|
) }
|
||||||
}
|
}
|
||||||
// Added on 1.50
|
// Added on 1.50
|
||||||
"GetUserNewItemList" { mapOf("userId" to uid, "userItemList" to empty) }
|
"GetUserNewItemList" { mapOf("userId" to uid, "userItemList" to empty) }
|
||||||
|
|
|
@ -581,9 +581,9 @@ class Mai2UserUdemae : Mai2UserEntity() {
|
||||||
@Table(name = "maimai2_user_kaleidx")
|
@Table(name = "maimai2_user_kaleidx")
|
||||||
@Data @Entity
|
@Data @Entity
|
||||||
class Mai2UserKaleidx : Mai2UserEntity() {
|
class Mai2UserKaleidx : Mai2UserEntity() {
|
||||||
var gateId = 0
|
var gateId = 1
|
||||||
var isGateFound = false
|
var isGateFound = true
|
||||||
var isKeyFound = false
|
var isKeyFound = true
|
||||||
var isClear = false
|
var isClear = false
|
||||||
var totalRestLife = 0
|
var totalRestLife = 0
|
||||||
var totalAchievement = 0
|
var totalAchievement = 0
|
||||||
|
|
Loading…
Reference in New Issue