feat(stats): minigame stats #1249

Merged
Sainan merged 3 commits from AMelonInsideLemon/SpaceNinjaServer:stats-minigame into main 2025-03-21 02:40:04 -07:00
3 changed files with 21 additions and 1 deletions
Showing only changes of commit b7d525ccb9 - Show all commits

View File

@ -92,7 +92,11 @@ const statsSchema = new Schema<IStatsDatabase>({
Deaths: Number,
HealCount: Number,
ReviveCount: Number,
Races: { type: Map, of: raceSchema, default: {} }
Races: { type: Map, of: raceSchema, default: {} },
ZephyrScore: Number,
SentinelGameScore: Number,
CaliberChicksScore: Number,
OlliesCrashCourseScore: Number
});
statsSchema.set("toJSON", {

View File

@ -305,6 +305,14 @@ export const updateStats = async (playerStats: TStatsDatabaseDocument, payload:
break;
case "ZephyrScore":
case "SentinelGameScore":
case "CaliberChicksScore":
case "OlliesCrashCourseScore":
playerStats[category] ??= 0;
playerStats[category] = data;
break;
default:
if (!ignoredCategories.includes(category)) {
if (!unknownCategories[action]) {

View File

@ -26,6 +26,10 @@ export interface IStatsClient {
HealCount?: number;
ReviveCount?: number;
Races?: Map<string, IRace>;
ZephyrScore?: number;
SentinelGameScore?: number;
CaliberChicksScore?: number;
OlliesCrashCourseScore?: number;
}
export interface IStatsDatabase extends IStatsClient {
@ -139,6 +143,10 @@ export interface IStatsMax {
WEAPON_XP?: IUploadEntry;
MISSION_SCORE?: IUploadEntry;
RACE_SCORE?: IUploadEntry;
ZephyrScore?: number;
SentinelGameScore?: number;
CaliberChicksScore?: number;
OlliesCrashCourseScore?: number;
}
export interface IStatsSet {