返回提交历史
Modified
src/services/inventoryService.ts
+15
-3
XFEstudio/XFESpaceNinjaServer
feat: railjack steel path rewards (#4406)
Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/4406 Reviewed-by: Sainan <63328889+sainan@users.noreply.github.com> Co-authored-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com> Co-committed-by: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>
d5e07ae6
代码差异
1 个文件
+15
-3
@@ -3487,6 +3487,7 @@ const steelPathSystems: [number, string][] = [
3487
3487
[16, "Deimos"],
3488
3488
[17, "Lua"],
3489
3489
[18, "KuvaFortress"],
3490
[20, "DeepSpace"],
3490
3491
[21, "Zariman"],
3491
3492
[22, "Duviri"],
3492
3493
[23, "1999"],
@@ -3494,7 +3495,15 @@ const steelPathSystems: [number, string][] = [
3494
3495
];
3495
3496
3496
3497
const isRequiredForSteelPathTrophy = (region: IRegion): boolean => {
3497
return region.missionType != "MT_RAILJACK" && region.missionType != "MT_PVP";
3498
return region.missionType != "MT_PVP";
3499
};
3500
3501
const isRequiredForRailjackSteelPathTrophy = (region: IRegion): boolean => {
3502
return (
3503
region.systemIndex != 6 && // ash & garuda nodes
3504
!region.hidden && // nemesis nodes
3505
region.maxEnemyLevel != 1 // freeroam node
3506
);
3498
3507
};
3499
3508
3500
3509
export const ensureUserHasSteelPathRewards = async (
@@ -3510,8 +3519,11 @@ export const ensureUserHasSteelPathRewards = async (
3510
3519
3511
3520
const eligibleSystems = new Set<number>(steelPathSystems.map(x => x[0]));
3512
3521
for (const [tag, region] of Object.entries(ExportRegions)) {
3513
if (!completedNodes.has(tag) && isRequiredForSteelPathTrophy(region)) {
3514
eligibleSystems.delete(region.systemIndex);
3522
if (!completedNodes.has(tag)) {
3523
const isRailjack = region.missionType == "MT_RAILJACK";
3524
if (isRailjack ? isRequiredForRailjackSteelPathTrophy(region) : isRequiredForSteelPathTrophy(region)) {
3525
eligibleSystems.delete(isRailjack ? 20 : region.systemIndex);
3526
}
3515
3527
}
3516
3528
}
3517
3529