API: Add ns.singularity.getHackingLevelRequirementOfProgram (#2271)

This commit is contained in:
catloversg
2025-07-31 04:44:06 +07:00
committed by GitHub
parent 952fc28b67
commit 8976d54532
7 changed files with 82 additions and 16 deletions
+6 -1
View File
@@ -14,13 +14,18 @@ import { CompletedProgramName, FactionName } from "@enums";
import { Router } from "../ui/GameRoot";
import { Page } from "../ui/Router";
import { knowAboutBitverse } from "../BitNode/BitNodeUtils";
import { clampNumber } from "../utils/helpers/clampNumber";
function requireHackingLevel(lvl: number) {
return function () {
return Player.skills.hacking + Player.skills.intelligence / 2 >= lvl;
return Player.skills.hacking >= getEffectiveHackingLevelRequirement(lvl);
};
}
export function getEffectiveHackingLevelRequirement(level: number): number {
return clampNumber(level - Player.skills.intelligence / 2, 1);
}
function bitFlumeRequirements() {
return function () {
return knowAboutBitverse() && Player.skills.hacking >= 1;