diff --git a/server/src/lib/score-import/framework/score-importing/score-import-main.ts b/server/src/lib/score-import/framework/score-importing/score-import-main.ts index 96bb8d34a..4a11a87a7 100644 --- a/server/src/lib/score-import/framework/score-importing/score-import-main.ts +++ b/server/src/lib/score-import/framework/score-importing/score-import-main.ts @@ -1,6 +1,6 @@ import db from "external/mongo/db"; import { KtLogger } from "lib/logger/logger"; -import { ScoreImportJob, ScoreImportProgress } from "lib/score-import/worker/types"; +import { ScoreImportJob } from "lib/score-import/worker/types"; import { Game, IDStrings, diff --git a/server/src/lib/score-import/import-types/ir/usc/converter.ts b/server/src/lib/score-import/import-types/ir/usc/converter.ts index 14f71d687..7070876bb 100644 --- a/server/src/lib/score-import/import-types/ir/usc/converter.ts +++ b/server/src/lib/score-import/import-types/ir/usc/converter.ts @@ -122,6 +122,7 @@ export const ConverterIRUSC: ConverterFunction = a gauge: data.gauge, fast: data.early, slow: data.late, + maxCombo: data.combo, }, }, scoreMeta: { diff --git a/server/src/lib/score-import/import-types/ir/usc/parser.ts b/server/src/lib/score-import/import-types/ir/usc/parser.ts index dfe8b2857..1b46c783b 100644 --- a/server/src/lib/score-import/import-types/ir/usc/parser.ts +++ b/server/src/lib/score-import/import-types/ir/usc/parser.ts @@ -16,6 +16,7 @@ const PR_USCIRScore: PrudenceSchema = { error: p.isPositiveInteger, early: p.optional(p.isPositiveInteger), late: p.optional(p.isPositiveInteger), + combo: p.optional(p.isPositiveInteger), options: { gaugeType: p.isIn(0, 1), mirror: "boolean", @@ -51,8 +52,11 @@ export function ParseIRUSC( const score = body.score as USCClientScore; // Enforce null for this instead of undefined. + // This is because FJSH cannot handle undefined properly. + // Maybe fjsh should handle that, lol... score.early ??= null; score.late ??= null; + score.combo ??= null; return { context: { diff --git a/server/src/server/router/ir/usc/_playtype/types.ts b/server/src/server/router/ir/usc/_playtype/types.ts index f66a98e0c..887242eb0 100644 --- a/server/src/server/router/ir/usc/_playtype/types.ts +++ b/server/src/server/router/ir/usc/_playtype/types.ts @@ -22,6 +22,7 @@ export interface USCClientScore { error: integer; early: integer | null; late: integer | null; + combo: integer | null; options: { gaugeType: 0 | 1; gaugeOpt: integer; diff --git a/server/src/test-utils/test-data.ts b/server/src/test-utils/test-data.ts index 3f9349ca1..f0bedcd05 100644 --- a/server/src/test-utils/test-data.ts +++ b/server/src/test-utils/test-data.ts @@ -228,6 +228,7 @@ export const uscScore: USCClientScore = { gauge: 0.8, early: 50, late: 20, + combo: 5, options: { autoFlags: 0, gaugeOpt: 0,