feat(stats): minigame stats #1249
@ -92,7 +92,12 @@ const statsSchema = new Schema<IStatsDatabase>({
 | 
				
			|||||||
    Deaths: Number,
 | 
					    Deaths: Number,
 | 
				
			||||||
    HealCount: Number,
 | 
					    HealCount: Number,
 | 
				
			||||||
    ReviveCount: Number,
 | 
					    ReviveCount: Number,
 | 
				
			||||||
    Races: { type: Map, of: raceSchema, default: {} }
 | 
					    Races: { type: Map, of: raceSchema, default: {} },
 | 
				
			||||||
 | 
					    ZephyrScore: Number,
 | 
				
			||||||
 | 
					    SentinelGameScore: Number,
 | 
				
			||||||
 | 
					    CaliberChicksScore: Number,
 | 
				
			||||||
 | 
					    OlliesCrashCourseScore: Number,
 | 
				
			||||||
 | 
					    DojoObstacleScore: Number
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
statsSchema.set("toJSON", {
 | 
					statsSchema.set("toJSON", {
 | 
				
			||||||
 | 
				
			|||||||
@ -305,6 +305,15 @@ export const updateStats = async (playerStats: TStatsDatabaseDocument, payload:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
                            break;
 | 
					                            break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                        case "ZephyrScore":
 | 
				
			||||||
 | 
					                        case "SentinelGameScore":
 | 
				
			||||||
 | 
					                        case "CaliberChicksScore":
 | 
				
			||||||
 | 
					                        case "OlliesCrashCourseScore":
 | 
				
			||||||
 | 
					                        case "DojoObstacleScore":
 | 
				
			||||||
 | 
					                            playerStats[category] ??= 0;
 | 
				
			||||||
 | 
					                            if (data > playerStats[category]) playerStats[category] = data;
 | 
				
			||||||
 | 
					                            break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                        default:
 | 
					                        default:
 | 
				
			||||||
                            if (!ignoredCategories.includes(category)) {
 | 
					                            if (!ignoredCategories.includes(category)) {
 | 
				
			||||||
                                if (!unknownCategories[action]) {
 | 
					                                if (!unknownCategories[action]) {
 | 
				
			||||||
 | 
				
			|||||||
@ -26,6 +26,11 @@ export interface IStatsClient {
 | 
				
			|||||||
    HealCount?: number;
 | 
					    HealCount?: number;
 | 
				
			||||||
    ReviveCount?: number;
 | 
					    ReviveCount?: number;
 | 
				
			||||||
    Races?: Map<string, IRace>;
 | 
					    Races?: Map<string, IRace>;
 | 
				
			||||||
 | 
					    ZephyrScore?: number;
 | 
				
			||||||
 | 
					    SentinelGameScore?: number;
 | 
				
			||||||
 | 
					    CaliberChicksScore?: number;
 | 
				
			||||||
 | 
					    OlliesCrashCourseScore?: number;
 | 
				
			||||||
 | 
					    DojoObstacleScore?: number;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export interface IStatsDatabase extends IStatsClient {
 | 
					export interface IStatsDatabase extends IStatsClient {
 | 
				
			||||||
@ -139,6 +144,11 @@ export interface IStatsMax {
 | 
				
			|||||||
    WEAPON_XP?: IUploadEntry;
 | 
					    WEAPON_XP?: IUploadEntry;
 | 
				
			||||||
    MISSION_SCORE?: IUploadEntry;
 | 
					    MISSION_SCORE?: IUploadEntry;
 | 
				
			||||||
    RACE_SCORE?: IUploadEntry;
 | 
					    RACE_SCORE?: IUploadEntry;
 | 
				
			||||||
 | 
					    ZephyrScore?: number;
 | 
				
			||||||
 | 
					    SentinelGameScore?: number;
 | 
				
			||||||
 | 
					    CaliberChicksScore?: number;
 | 
				
			||||||
 | 
					    OlliesCrashCourseScore?: number;
 | 
				
			||||||
 | 
					    DojoObstacleScore?: number;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export interface IStatsSet {
 | 
					export interface IStatsSet {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user