diff --git a/src/controllers/api/nemesisController.ts b/src/controllers/api/nemesisController.ts index 435f6791..3b56d85b 100644 --- a/src/controllers/api/nemesisController.ts +++ b/src/controllers/api/nemesisController.ts @@ -7,6 +7,7 @@ import { getNemesisManifest, getNemesisPasscode, getNemesisPasscodeModTypes, + GUESS_WILDCARD, IKnifeResponse } from "@/src/helpers/nemesisHelpers"; import { getJSONfromString } from "@/src/helpers/stringHelpers"; @@ -82,7 +83,7 @@ export const nemesisController: RequestHandler = async (req, res) => { } } else { for (let i = 0; i != 3; ++i) { - if (body.guess[i] == passcode[i]) { + if (body.guess[i] == passcode[i] || body.guess[i] == GUESS_WILDCARD) { ++guessResult; } } @@ -151,7 +152,7 @@ export const nemesisController: RequestHandler = async (req, res) => { } else { const passcode = getNemesisPasscode(inventory.Nemesis!); let RankIncrease: number | undefined; - if (passcode[body.position] != body.guess) { + if (body.guess != GUESS_WILDCARD && passcode[body.position] != body.guess) { const manifest = getNemesisManifest(inventory.Nemesis!.manifest); if (inventory.Nemesis!.Rank + 1 < manifest.systemIndexes.length) { inventory.Nemesis!.Rank += 1; diff --git a/src/helpers/nemesisHelpers.ts b/src/helpers/nemesisHelpers.ts index 9d6a7a2b..0c2eebbe 100644 --- a/src/helpers/nemesisHelpers.ts +++ b/src/helpers/nemesisHelpers.ts @@ -266,6 +266,9 @@ export const getNemesisPasscodeModTypes = (nemesis: { fp: bigint; Faction: TNeme : passcode.map(i => reqiuemMods[i]); }; +export const GUESS_NONE = 8; +export const GUESS_WILDCARD = 9; + export const encodeNemesisGuess = ( symbol1: number, result1: number,