[+] Maimai Prism+: New ext field

pull/138/head
Azalea 2025-03-29 14:02:47 -04:00
parent 9d3f79560d
commit 731d974e96
1 changed files with 11 additions and 75 deletions

View File

@ -5,7 +5,7 @@ package icu.samnyan.aqua.sega.maimai2.model.userdata
import com.fasterxml.jackson.annotation.JsonIgnore
import com.fasterxml.jackson.annotation.JsonInclude
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.annotation.JsonPropertyOrder
import ext.toJson
import icu.samnyan.aqua.net.games.BaseEntity
import icu.samnyan.aqua.net.games.IGenericGamePlaylog
import icu.samnyan.aqua.net.games.IGenericUserMusic
@ -41,7 +41,6 @@ class Mai2MapEncountNpc : Mai2UserEntity() {
@Table(name = "maimai2_user_activity")
@Data @Entity
@JsonPropertyOrder("kind", "id", "sortNumber", "param1", "param2", "param3", "param4")
class Mai2UserAct : Mai2UserEntity() {
var kind = 0
@ -97,7 +96,6 @@ class Mai2UserCharacter : Mai2UserEntity() {
@Table(name = "maimai2_user_charge", uniqueConstraints = [UniqueConstraint(columnNames = ["user_id", "charge_id"])])
@Data @Entity
@JsonPropertyOrder("chargeId", "stock", "purchaseDate", "validDate")
class Mai2UserCharge : Mai2UserEntity() {
@Column(name = "charge_id")
var chargeId = 0
@ -110,8 +108,6 @@ class Mai2UserCharge : Mai2UserEntity() {
@Data @Entity
class Mai2UserCourse : Mai2UserEntity() {
var courseId = 0
@JsonProperty("isLastClear")
var isLastClear = false
var totalRestlife = 0
var totalAchievement = 0
@ -127,23 +123,6 @@ class Mai2UserCourse : Mai2UserEntity() {
@Table(name = "maimai2_user_extend")
@Data @Entity
@JsonPropertyOrder(
"selectMusicId",
"selectDifficultyId",
"categoryIndex",
"musicIndex",
"extraFlag",
"selectScoreType",
"extendContentBit",
"isPhotoAgree",
"isGotoCodeRead",
"selectResultDetails",
"sortCategorySetting",
"sortMusicSetting",
"playStatusSetting",
"selectedCardList",
"encountMapNpcList"
)
class Mai2UserExtend : Mai2UserEntity() {
var selectMusicId = 0
var selectDifficultyId = 0
@ -152,11 +131,7 @@ class Mai2UserExtend : Mai2UserEntity() {
var extraFlag = 0
var selectScoreType = 0
var extendContentBit: Long = 0
@JsonProperty("isPhotoAgree")
var isPhotoAgree = false
@JsonProperty("isGotoCodeRead")
var isGotoCodeRead = false
var selectResultDetails = false
var sortCategorySetting = 0 //enum SortTabID
@ -239,8 +214,6 @@ class Mai2UserItem : Mai2UserEntity() {
var itemKind = 0
var itemId = 0
var stock = 0
@JsonProperty("isValid")
var isValid = false
}
@ -265,32 +238,20 @@ enum class Mai2ItemKind(val id: Int) {
@Table(name = "maimai2_user_login_bonus")
@Data @Entity
@JsonPropertyOrder("bonusId", "point", "isCurrent", "isComplete")
class Mai2UserLoginBonus : Mai2UserEntity() {
var bonusId = 0
var point = 0
@JsonProperty("isCurrent")
var isCurrent = false
@JsonProperty("isComplete")
var isComplete = false
}
@Table(name = "maimai2_user_map")
@Data @Entity
@JsonPropertyOrder("mapId", "distance", "isLock", "isClear", "isComplete")
class Mai2UserMap : Mai2UserEntity() {
var mapId = 0
var distance = 0
@JsonProperty("isLock")
var isLock = false
@JsonProperty("isClear")
var isClear = false
@JsonProperty("isComplete")
var isComplete = false
}
@ -445,39 +406,19 @@ class Mai2UserPlaylog : Mai2UserEntity(), IGenericGamePlaylog {
var breakGreat = 0
var breakGood = 0
var breakMiss = 0
@JsonProperty("isTap")
var isTap = false
@JsonProperty("isHold")
var isHold = false
@JsonProperty("isSlide")
var isSlide = false
@JsonProperty("isTouch")
var isTouch = false
@JsonProperty("isBreak")
var isBreak = false
@JsonProperty("isCriticalDisp")
var isCriticalDisp = false
@JsonProperty("isFastLateDisp")
var isFastLateDisp = false
var fastCount = 0
var lateCount = 0
@JsonProperty("isAchieveNewRecord")
var isAchieveNewRecord = false
@JsonProperty("isDeluxscoreNewRecord")
var isDeluxscoreNewRecord = false
var comboStatus = 0
var syncStatus = 0
@JsonProperty("isClear")
var isClear = false
override var beforeRating: Int = 0
override var afterRating: Int = 0
@ -486,29 +427,20 @@ class Mai2UserPlaylog : Mai2UserEntity(), IGenericGamePlaylog {
var afterGradeRank = 0
var beforeDeluxRating = 0
var afterDeluxRating = 0
@JsonProperty("isPlayTutorial")
var isPlayTutorial = false
@JsonProperty("isEventMode")
var isEventMode = false
@JsonProperty("isFreedomMode")
var isFreedomMode = false
var playMode = 0
@JsonProperty("isNewFree")
var isNewFree = false
var trialPlayAchievement = 0
var extNum1 = 0
var extNum2 = 0
var extNum4 = 0
var extNum1 = 0 // StartLife * 10000 + Life
var extNum2 = 0 // Course ID
var extNum4 = 0 // Select Category
@JsonProperty("extBool1")
var extBool1 = false
@JsonProperty("extBool2")
var extBool2 = false
var extBool1 = false // Utage Coop
var extBool2 = false // Random Select
var extBool3 = false // Track Skip
override val isFullCombo: Boolean
get() = maxCombo == totalCombo
@ -521,6 +453,10 @@ class Mai2UserPlaylog : Mai2UserEntity(), IGenericGamePlaylog {
breakMiss + breakGood + breakGreat == 0
}
fun main(args: Array<String>) {
println(Mai2UserPlaylog().toJson())
}
@Table(name = "maimai2_user_print_detail")
@Data @Entity
class Mai2UserPrintDetail : Mai2UserEntity() {