返回提交历史
Modified
src/controllers/api/nemesisController.ts
+12
-9
Modified
src/helpers/nemesisHelpers.ts
+3
-0
XFEstudio/SpaceNinjaServer
fix: oull being considered an incorrect guess (#2125)
Closes #2121 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2125 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com>
8ffbb308
代码差异
2 个文件
+15
-9
@@ -7,6 +7,7 @@ import {
7
7
getNemesisManifest,
8
8
getNemesisPasscode,
9
9
getNemesisPasscodeModTypes,
10
GUESS_WILDCARD,
10
11
IKnifeResponse
11
12
} from "@/src/helpers/nemesisHelpers";
12
13
import { getJSONfromString } from "@/src/helpers/stringHelpers";
@@ -82,7 +83,7 @@ export const nemesisController: RequestHandler = async (req, res) => {
82
83
}
83
84
} else {
84
85
for (let i = 0; i != 3; ++i) {
85
if (body.guess[i] == passcode[i]) {
86
if (body.guess[i] == passcode[i] || body.guess[i] == GUESS_WILDCARD) {
86
87
++guessResult;
87
88
}
88
89
}
@@ -149,16 +150,18 @@ export const nemesisController: RequestHandler = async (req, res) => {
149
150
await inventory.save();
150
151
res.json(response);
151
152
} else {
152
const passcode = getNemesisPasscode(inventory.Nemesis!);
153
153
let RankIncrease: number | undefined;
154
if (passcode[body.position] != body.guess) {
155
const manifest = getNemesisManifest(inventory.Nemesis!.manifest);
156
if (inventory.Nemesis!.Rank + 1 < manifest.systemIndexes.length) {
157
inventory.Nemesis!.Rank += 1;
158
RankIncrease = 1;
154
if (body.guess != GUESS_WILDCARD) {
155
const passcode = getNemesisPasscode(inventory.Nemesis!);
156
if (passcode[body.position] != body.guess) {
157
const manifest = getNemesisManifest(inventory.Nemesis!.manifest);
158
if (inventory.Nemesis!.Rank + 1 < manifest.systemIndexes.length) {
159
inventory.Nemesis!.Rank += 1;
160
RankIncrease = 1;
161
}
162
inventory.Nemesis!.InfNodes = getInfNodes(manifest, inventory.Nemesis!.Rank);
163
await inventory.save();
159
164
}
160
inventory.Nemesis!.InfNodes = getInfNodes(manifest, inventory.Nemesis!.Rank);
161
await inventory.save();
162
165
}
163
166
res.json({ RankIncrease });
164
167
}
@@ -266,6 +266,9 @@ export const getNemesisPasscodeModTypes = (nemesis: { fp: bigint; Faction: TNeme
266
266
: passcode.map(i => reqiuemMods[i]);
267
267
};
268
268
269
export const GUESS_NONE = 8;
270
export const GUESS_WILDCARD = 9;
271
269
272
export const encodeNemesisGuess = (
270
273
symbol1: number,
271
274
result1: number,