mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-10-23 10:13:13 +02:00
b2add6c26b
Found most (hopefully all) places where the error message wording incorrectly was shown to the tune of 'no script exists', where it should have been showing to the effect of 'script is not running'. Also cleaned up some of the consistency in the wording and added a 'helper' export for knowing valid script extensions used in validation of 'isScriptFilename', so we can have consistent error messaging. Resolves danielyxie/bitburner#1966
45 lines
1.3 KiB
TypeScript
45 lines
1.3 KiB
TypeScript
import { ITerminal } from "../ITerminal";
|
|
import { IRouter } from "../../ui/Router";
|
|
import { IPlayer } from "../../PersonObjects/IPlayer";
|
|
import { BaseServer } from "../../Server/BaseServer";
|
|
import { numeralWrapper } from "../../ui/numeralFormat";
|
|
|
|
export function mem(
|
|
terminal: ITerminal,
|
|
router: IRouter,
|
|
player: IPlayer,
|
|
server: BaseServer,
|
|
args: (string | number | boolean)[],
|
|
): void {
|
|
try {
|
|
if (args.length !== 1 && args.length !== 3) {
|
|
terminal.error("Incorrect usage of mem command. usage: mem [scriptname] [-t] [number threads]");
|
|
return;
|
|
}
|
|
|
|
const scriptName = args[0] + "";
|
|
let numThreads = 1;
|
|
if (args.length === 3 && args[1] === "-t") {
|
|
numThreads = Math.round(parseInt(args[2] + ""));
|
|
if (isNaN(numThreads) || numThreads < 1) {
|
|
terminal.error("Invalid number of threads specified. Number of threads must be greater than 1");
|
|
return;
|
|
}
|
|
}
|
|
|
|
const script = terminal.getScript(player, scriptName);
|
|
if (script == null) {
|
|
terminal.error("mem failed. No such script exists!");
|
|
return;
|
|
}
|
|
|
|
const ramUsage = script.ramUsage * numThreads;
|
|
|
|
terminal.print(
|
|
`This script requires ${numeralWrapper.formatRAM(ramUsage)} of RAM to run for ${numThreads} thread(s)`,
|
|
);
|
|
} catch (e) {
|
|
terminal.error(e + "");
|
|
}
|
|
}
|