mirror of
https://github.com/bitburner-official/bitburner-src.git
synced 2024-11-26 17:43:48 +01:00
Merge pull request #1479 from danielyxie/improve
fix package dependency issue
This commit is contained in:
commit
2f673b0767
32210
package-lock.json
generated
32210
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -13,10 +13,10 @@
|
|||||||
"@emotion/react": "^11.4.1",
|
"@emotion/react": "^11.4.1",
|
||||||
"@emotion/styled": "^11.3.0",
|
"@emotion/styled": "^11.3.0",
|
||||||
"@monaco-editor/react": "^4.2.2",
|
"@monaco-editor/react": "^4.2.2",
|
||||||
"@mui/icons-material": "^5.0.0-rc.1",
|
"@mui/icons-material": "^5.0.3",
|
||||||
"@mui/lab": "^5.0.0-alpha.46",
|
"@mui/lab": "^5.0.0-alpha.46",
|
||||||
"@mui/material": "^5.0.0-rc.1",
|
"@mui/material": "^5.0.3",
|
||||||
"@mui/styles": "^5.0.0-rc.1",
|
"@mui/styles": "^5.0.1",
|
||||||
"@types/escodegen": "^0.0.7",
|
"@types/escodegen": "^0.0.7",
|
||||||
"@types/js-beautify": "^1.13.2",
|
"@types/js-beautify": "^1.13.2",
|
||||||
"@types/numeral": "0.0.25",
|
"@types/numeral": "0.0.25",
|
||||||
@ -30,6 +30,7 @@
|
|||||||
"arg": "^5.0.0",
|
"arg": "^5.0.0",
|
||||||
"async": "^2.6.1",
|
"async": "^2.6.1",
|
||||||
"autosize": "^4.0.2",
|
"autosize": "^4.0.2",
|
||||||
|
"better-react-mathjax": "^1.0.3",
|
||||||
"brace": "^0.11.1",
|
"brace": "^0.11.1",
|
||||||
"codemirror": "^5.58.2",
|
"codemirror": "^5.58.2",
|
||||||
"decimal.js": "7.2.3",
|
"decimal.js": "7.2.3",
|
||||||
@ -47,7 +48,6 @@
|
|||||||
"loader-utils": "^1.1.0",
|
"loader-utils": "^1.1.0",
|
||||||
"material-ui-color": "^1.2.0",
|
"material-ui-color": "^1.2.0",
|
||||||
"mathjax-full": "^3.2.0",
|
"mathjax-full": "^3.2.0",
|
||||||
"mathjax-react": "^1.0.6",
|
|
||||||
"memory-fs": "~0.4.1",
|
"memory-fs": "~0.4.1",
|
||||||
"monaco-editor": "^0.27.0",
|
"monaco-editor": "^0.27.0",
|
||||||
"node-sass": "^6.0.1",
|
"node-sass": "^6.0.1",
|
||||||
@ -122,7 +122,6 @@
|
|||||||
"start-server-and-test": "^1.14.0",
|
"start-server-and-test": "^1.14.0",
|
||||||
"style-loader": "^0.21.0",
|
"style-loader": "^0.21.0",
|
||||||
"stylelint": "^9.2.1",
|
"stylelint": "^9.2.1",
|
||||||
"stylelint-declaration-use-variable": "^1.6.1",
|
|
||||||
"stylelint-order": "^0.8.1",
|
"stylelint-order": "^0.8.1",
|
||||||
"typescript": "^4.2.4",
|
"typescript": "^4.2.4",
|
||||||
"uglify-es": "^3.3.9",
|
"uglify-es": "^3.3.9",
|
||||||
|
@ -132,7 +132,7 @@ export class Bladeburner implements IBladeburner {
|
|||||||
return this.resetAction();
|
return this.resetAction();
|
||||||
}
|
}
|
||||||
this.actionTimeToComplete = action.getActionTime(this);
|
this.actionTimeToComplete = action.getActionTime(this);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -149,7 +149,7 @@ export class Bladeburner implements IBladeburner {
|
|||||||
return this.resetAction();
|
return this.resetAction();
|
||||||
}
|
}
|
||||||
this.actionTimeToComplete = action.getActionTime(this);
|
this.actionTimeToComplete = action.getActionTime(this);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -169,7 +169,7 @@ export class Bladeburner implements IBladeburner {
|
|||||||
throw new Error("Failed to get BlackOperation object for: " + actionId.name);
|
throw new Error("Failed to get BlackOperation object for: " + actionId.name);
|
||||||
}
|
}
|
||||||
this.actionTimeToComplete = action.getActionTime(this);
|
this.actionTimeToComplete = action.getActionTime(this);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -220,7 +220,7 @@ export class Bladeburner implements IBladeburner {
|
|||||||
for (let i = 0; i < arrayOfCommands.length; ++i) {
|
for (let i = 0; i < arrayOfCommands.length; ++i) {
|
||||||
this.executeConsoleCommand(player, arrayOfCommands[i]);
|
this.executeConsoleCommand(player, arrayOfCommands[i]);
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1298,7 +1298,7 @@ export class Bladeburner implements IBladeburner {
|
|||||||
action.level = action.maxLevel;
|
action.level = action.maxLevel;
|
||||||
} // Autolevel
|
} // Autolevel
|
||||||
this.startAction(player, this.action); // Repeat action
|
this.startAction(player, this.action); // Repeat action
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -1387,7 +1387,7 @@ export class Bladeburner implements IBladeburner {
|
|||||||
this.log("You lost " + formatNumber(losses, 0) + " team members during " + action.name);
|
this.log("You lost " + formatNumber(losses, 0) + " team members during " + action.name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2056,7 +2056,7 @@ export class Bladeburner implements IBladeburner {
|
|||||||
this.startAction(player, actionId);
|
this.startAction(player, actionId);
|
||||||
workerScript.log("bladeburner.startAction", `Starting bladeburner action with type '${type}' and name ${name}"`);
|
workerScript.log("bladeburner.startAction", `Starting bladeburner action with type '${type}' and name ${name}"`);
|
||||||
return true;
|
return true;
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
this.resetAction();
|
this.resetAction();
|
||||||
workerScript.log("bladeburner.startAction", errorLogText);
|
workerScript.log("bladeburner.startAction", errorLogText);
|
||||||
return false;
|
return false;
|
||||||
|
@ -99,7 +99,7 @@ export class Warehouse {
|
|||||||
updateSize(corporation: ICorporation, industry: IIndustry): void {
|
updateSize(corporation: ICorporation, industry: IIndustry): void {
|
||||||
try {
|
try {
|
||||||
this.size = this.level * 100 * corporation.getStorageMultiplier() * industry.getStorageMultiplier();
|
this.size = this.level * 100 * corporation.getStorageMultiplier() * industry.getStorageMultiplier();
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
import { IIndustry } from "../IIndustry";
|
import { IIndustry } from "../IIndustry";
|
||||||
import { MathComponent } from "mathjax-react";
|
import { MathJax, MathJaxContext } from "better-react-mathjax";
|
||||||
|
|
||||||
interface IProps {
|
interface IProps {
|
||||||
division: IIndustry;
|
division: IIndustry;
|
||||||
@ -19,9 +19,10 @@ export function IndustryProductEquation(props: IProps): React.ReactElement {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<MathComponent
|
<MathJaxContext>
|
||||||
display={false}
|
<MathJax>
|
||||||
tex={reqs.join("+") + String.raw`\Rightarrow` + prod.map((p) => String.raw`1\text{ }${p}`).join("+")}
|
{reqs.join("+") + String.raw`\Rightarrow` + prod.map((p) => String.raw`1\text{ }${p}`).join("+")}
|
||||||
/>
|
</MathJax>
|
||||||
|
</MathJaxContext>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -15,7 +15,7 @@ import { Reputation } from "../../ui/React/Reputation";
|
|||||||
import { numeralWrapper } from "../../ui/numeralFormat";
|
import { numeralWrapper } from "../../ui/numeralFormat";
|
||||||
|
|
||||||
import { dialogBoxCreate } from "../../ui/React/DialogBox";
|
import { dialogBoxCreate } from "../../ui/React/DialogBox";
|
||||||
import { MathComponent } from "mathjax-react";
|
import { MathJax, MathJaxContext } from "better-react-mathjax";
|
||||||
|
|
||||||
import Typography from "@mui/material/Typography";
|
import Typography from "@mui/material/Typography";
|
||||||
import Paper from "@mui/material/Paper";
|
import Paper from "@mui/material/Paper";
|
||||||
@ -98,9 +98,9 @@ export function DonateOption(props: IProps): React.ReactElement {
|
|||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
<Typography>
|
<Typography>
|
||||||
<MathComponent
|
<MathJaxContext>
|
||||||
tex={String.raw`reputation = \frac{\text{donation amount} \times \text{reputation multiplier}}{10^{${digits}}}`}
|
<MathJax>{String.raw`reputation = \frac{\text{donation amount} \times \text{reputation multiplier}}{10^{${digits}}}`}</MathJax>
|
||||||
/>
|
</MathJaxContext>
|
||||||
</Typography>
|
</Typography>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
@ -9,7 +9,7 @@ import { FactionInfo } from "../../Faction/FactionInfo";
|
|||||||
|
|
||||||
import { Reputation } from "../../ui/React/Reputation";
|
import { Reputation } from "../../ui/React/Reputation";
|
||||||
import { Favor } from "../../ui/React/Favor";
|
import { Favor } from "../../ui/React/Favor";
|
||||||
import { MathComponent } from "mathjax-react";
|
import { MathJax, MathJaxContext } from "better-react-mathjax";
|
||||||
|
|
||||||
import makeStyles from "@mui/styles/makeStyles";
|
import makeStyles from "@mui/styles/makeStyles";
|
||||||
import createStyles from "@mui/styles/createStyles";
|
import createStyles from "@mui/styles/createStyles";
|
||||||
@ -57,10 +57,14 @@ export function Info(props: IProps): React.ReactElement {
|
|||||||
You will have <Favor favor={props.faction.favor + favorGain} /> faction favor after installing an
|
You will have <Favor favor={props.faction.favor + favorGain} /> faction favor after installing an
|
||||||
Augmentation.
|
Augmentation.
|
||||||
</Typography>
|
</Typography>
|
||||||
<MathComponent tex={String.raw`\large{r = \text{total faction reputation}}`} />
|
<MathJaxContext>
|
||||||
<MathComponent
|
<MathJax>{"\\(\\huge{r = \\text{total faction reputation}}\\)"}</MathJax>
|
||||||
tex={String.raw`\large{favor=\left\lfloor\log_{1.02}\left(\frac{r+25000}{25500}\right)\right\rfloor}`}
|
</MathJaxContext>
|
||||||
/>
|
<MathJaxContext>
|
||||||
|
<MathJax>
|
||||||
|
{"\\(\\huge{favor=\\left\\lfloor\\log_{1.02}\\left(\\frac{r+25000}{25500}\\right)\\right\\rfloor}\\)"}
|
||||||
|
</MathJax>
|
||||||
|
</MathJaxContext>
|
||||||
</>
|
</>
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
@ -81,8 +85,13 @@ export function Info(props: IProps): React.ReactElement {
|
|||||||
favor is gained whenever you install an Augmentation. The amount of favor you gain depends on the total
|
favor is gained whenever you install an Augmentation. The amount of favor you gain depends on the total
|
||||||
amount of reputation you earned with this faction. Across all resets.
|
amount of reputation you earned with this faction. Across all resets.
|
||||||
</Typography>
|
</Typography>
|
||||||
<MathComponent tex={String.raw`\large{r = reputation}`} />
|
|
||||||
<MathComponent tex={String.raw`\large{\Delta r = \Delta r \times \frac{100+favor}{100}}`} />
|
<MathJaxContext>
|
||||||
|
<MathJax>{"\\(\\huge{r = reputation}\\)"}</MathJax>
|
||||||
|
</MathJaxContext>
|
||||||
|
<MathJaxContext>
|
||||||
|
<MathJax>{"\\(\\huge{\\Delta r = \\Delta r \\times \\frac{100+favor}{100}}\\)"}</MathJax>
|
||||||
|
</MathJaxContext>
|
||||||
</>
|
</>
|
||||||
}
|
}
|
||||||
>
|
>
|
||||||
|
@ -97,7 +97,7 @@ export class Gang {
|
|||||||
this.processExperienceGains(cycles);
|
this.processExperienceGains(cycles);
|
||||||
this.processTerritoryAndPowerGains(cycles);
|
this.processTerritoryAndPowerGains(cycles);
|
||||||
this.storedCycles -= cycles;
|
this.storedCycles -= cycles;
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
console.error(`Exception caught when processing Gang: ${e}`);
|
console.error(`Exception caught when processing Gang: ${e}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -344,7 +344,7 @@ export class Gang {
|
|||||||
workerScript.log("ascend", `Ascended Gang member ${member.name}`);
|
workerScript.log("ascend", `Ascended Gang member ${member.name}`);
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
if (workerScript == null) {
|
if (workerScript == null) {
|
||||||
exceptionAlert(e);
|
exceptionAlert(e);
|
||||||
}
|
}
|
||||||
|
@ -5,7 +5,7 @@ import Tooltip from "@mui/material/Tooltip";
|
|||||||
import { IPlayer } from "../../PersonObjects/IPlayer";
|
import { IPlayer } from "../../PersonObjects/IPlayer";
|
||||||
|
|
||||||
import { Money } from "../../ui/React/Money";
|
import { Money } from "../../ui/React/Money";
|
||||||
import { MathComponent } from "mathjax-react";
|
import { MathJax, MathJaxContext } from "better-react-mathjax";
|
||||||
|
|
||||||
type IProps = {
|
type IProps = {
|
||||||
p: IPlayer;
|
p: IPlayer;
|
||||||
@ -19,7 +19,7 @@ export function CoresButton(props: IProps): React.ReactElement {
|
|||||||
return <Button>Upgrade 'home' cores - MAX</Button>;
|
return <Button>Upgrade 'home' cores - MAX</Button>;
|
||||||
}
|
}
|
||||||
|
|
||||||
const cost = 1e9 * Math.pow(7.5, homeComputer.cpuCores);
|
const cost = props.p.getUpgradeHomeCoresCost();
|
||||||
|
|
||||||
function buy(): void {
|
function buy(): void {
|
||||||
if (maxCores) return;
|
if (maxCores) return;
|
||||||
@ -30,7 +30,13 @@ export function CoresButton(props: IProps): React.ReactElement {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Tooltip title={<MathComponent tex={String.raw`\large{cost = 10^9 \times 7.5 ^{\text{cores}}}`} />}>
|
<Tooltip
|
||||||
|
title={
|
||||||
|
<MathJaxContext>
|
||||||
|
<MathJax>{String.raw`\large{cost = 10^9 \times 7.5 ^{\text{cores}}}`}</MathJax>
|
||||||
|
</MathJaxContext>
|
||||||
|
}
|
||||||
|
>
|
||||||
<span>
|
<span>
|
||||||
<Button disabled={!props.p.canAfford(cost)} onClick={buy}>
|
<Button disabled={!props.p.canAfford(cost)} onClick={buy}>
|
||||||
Upgrade 'home' cores ({homeComputer.cpuCores} -> {homeComputer.cpuCores + 1}) -
|
Upgrade 'home' cores ({homeComputer.cpuCores} -> {homeComputer.cpuCores + 1}) -
|
||||||
|
@ -7,8 +7,8 @@ import { IPlayer } from "../../PersonObjects/IPlayer";
|
|||||||
import { purchaseRamForHomeComputer } from "../../Server/ServerPurchases";
|
import { purchaseRamForHomeComputer } from "../../Server/ServerPurchases";
|
||||||
|
|
||||||
import { Money } from "../../ui/React/Money";
|
import { Money } from "../../ui/React/Money";
|
||||||
import { MathComponent } from "mathjax-react";
|
|
||||||
import { numeralWrapper } from "../../ui/numeralFormat";
|
import { numeralWrapper } from "../../ui/numeralFormat";
|
||||||
|
import { MathJax, MathJaxContext } from "better-react-mathjax";
|
||||||
|
|
||||||
type IProps = {
|
type IProps = {
|
||||||
p: IPlayer;
|
p: IPlayer;
|
||||||
@ -29,7 +29,13 @@ export function RamButton(props: IProps): React.ReactElement {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Tooltip title={<MathComponent tex={String.raw`\large{cost = 3.2 \times 10^3 \times 1.58^{log_2{(ram)}}}`} />}>
|
<Tooltip
|
||||||
|
title={
|
||||||
|
<MathJaxContext>
|
||||||
|
<MathJax>{String.raw`\large{cost = 3.2 \times 10^3 \times 1.58^{log_2{(ram)}}}`}</MathJax>
|
||||||
|
</MathJaxContext>
|
||||||
|
}
|
||||||
|
>
|
||||||
<span>
|
<span>
|
||||||
<Button disabled={!props.p.canAfford(cost)} onClick={buy}>
|
<Button disabled={!props.p.canAfford(cost)} onClick={buy}>
|
||||||
Upgrade 'home' RAM ({numeralWrapper.formatRAM(homeComputer.maxRam)} ->
|
Upgrade 'home' RAM ({numeralWrapper.formatRAM(homeComputer.maxRam)} ->
|
||||||
|
@ -2301,7 +2301,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
// Coerce 'data' to be a string
|
// Coerce 'data' to be a string
|
||||||
try {
|
try {
|
||||||
data = String(data);
|
data = String(data);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("write", `Invalid data (${e}). Data being written must be convertible to a string`);
|
throw makeRuntimeErrorMsg("write", `Invalid data (${e}). Data being written must be convertible to a string`);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3959,7 +3959,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.startActionNetscriptFn(Player, type, name, workerScript);
|
return bladeburner.startActionNetscriptFn(Player, type, name, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.startAction", e);
|
throw makeRuntimeErrorMsg("bladeburner.startAction", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -3984,7 +3984,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.getActionTimeNetscriptFn(Player, type, name, workerScript);
|
return bladeburner.getActionTimeNetscriptFn(Player, type, name, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.getActionTime", e);
|
throw makeRuntimeErrorMsg("bladeburner.getActionTime", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -3998,7 +3998,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.getActionEstimatedSuccessChanceNetscriptFn(Player, type, name, workerScript);
|
return bladeburner.getActionEstimatedSuccessChanceNetscriptFn(Player, type, name, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.getActionEstimatedSuccessChance", e);
|
throw makeRuntimeErrorMsg("bladeburner.getActionEstimatedSuccessChance", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -4022,7 +4022,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.getActionCountRemainingNetscriptFn(type, name, workerScript);
|
return bladeburner.getActionCountRemainingNetscriptFn(type, name, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.getActionCountRemaining", e);
|
throw makeRuntimeErrorMsg("bladeburner.getActionCountRemaining", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -4083,7 +4083,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.getSkillLevelNetscriptFn(skillName, workerScript);
|
return bladeburner.getSkillLevelNetscriptFn(skillName, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.getSkillLevel", e);
|
throw makeRuntimeErrorMsg("bladeburner.getSkillLevel", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -4094,7 +4094,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.getSkillUpgradeCostNetscriptFn(skillName, workerScript);
|
return bladeburner.getSkillUpgradeCostNetscriptFn(skillName, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.getSkillUpgradeCost", e);
|
throw makeRuntimeErrorMsg("bladeburner.getSkillUpgradeCost", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -4105,7 +4105,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.upgradeSkillNetscriptFn(skillName, workerScript);
|
return bladeburner.upgradeSkillNetscriptFn(skillName, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.upgradeSkill", e);
|
throw makeRuntimeErrorMsg("bladeburner.upgradeSkill", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -4116,7 +4116,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.getTeamSizeNetscriptFn(type, name, workerScript);
|
return bladeburner.getTeamSizeNetscriptFn(type, name, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.getTeamSize", e);
|
throw makeRuntimeErrorMsg("bladeburner.getTeamSize", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -4127,7 +4127,7 @@ function NetscriptFunctions(workerScript: WorkerScript): NS {
|
|||||||
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
if (bladeburner === null) throw new Error("Should not be called without Bladeburner");
|
||||||
try {
|
try {
|
||||||
return bladeburner.setTeamSizeNetscriptFn(type, name, size, workerScript);
|
return bladeburner.setTeamSizeNetscriptFn(type, name, size, workerScript);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
throw makeRuntimeErrorMsg("bladeburner.setTeamSize", e);
|
throw makeRuntimeErrorMsg("bladeburner.setTeamSize", e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -93,7 +93,7 @@ function startNetscript2Script(workerScript: WorkerScript): Promise<WorkerScript
|
|||||||
let result;
|
let result;
|
||||||
try {
|
try {
|
||||||
result = f(...args);
|
result = f(...args);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
runningFn = null;
|
runningFn = null;
|
||||||
throw e;
|
throw e;
|
||||||
}
|
}
|
||||||
@ -151,7 +151,7 @@ function startNetscript1Script(workerScript: WorkerScript): Promise<WorkerScript
|
|||||||
const importProcessingRes = processNetscript1Imports(code, workerScript);
|
const importProcessingRes = processNetscript1Imports(code, workerScript);
|
||||||
codeWithImports = importProcessingRes.code;
|
codeWithImports = importProcessingRes.code;
|
||||||
codeLineOffset = importProcessingRes.lineOffset;
|
codeLineOffset = importProcessingRes.lineOffset;
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
dialogBoxCreate("Error processing Imports in " + workerScript.name + ":<br>" + e);
|
dialogBoxCreate("Error processing Imports in " + workerScript.name + ":<br>" + e);
|
||||||
workerScript.env.stopFlag = true;
|
workerScript.env.stopFlag = true;
|
||||||
workerScript.running = false;
|
workerScript.running = false;
|
||||||
@ -251,7 +251,7 @@ function startNetscript1Script(workerScript: WorkerScript): Promise<WorkerScript
|
|||||||
let interpreter: any;
|
let interpreter: any;
|
||||||
try {
|
try {
|
||||||
interpreter = new Interpreter(codeWithImports, interpreterInitialization, codeLineOffset);
|
interpreter = new Interpreter(codeWithImports, interpreterInitialization, codeLineOffset);
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
dialogBoxCreate("Syntax ERROR in " + workerScript.name + ":<br>" + e);
|
dialogBoxCreate("Syntax ERROR in " + workerScript.name + ":<br>" + e);
|
||||||
workerScript.env.stopFlag = true;
|
workerScript.env.stopFlag = true;
|
||||||
workerScript.running = false;
|
workerScript.running = false;
|
||||||
@ -271,7 +271,7 @@ function startNetscript1Script(workerScript: WorkerScript): Promise<WorkerScript
|
|||||||
} else {
|
} else {
|
||||||
resolve(workerScript);
|
resolve(workerScript);
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
e = e.toString();
|
e = e.toString();
|
||||||
if (!isScriptErrorMessage(e)) {
|
if (!isScriptErrorMessage(e)) {
|
||||||
e = makeRuntimeRejectMsg(workerScript, e);
|
e = makeRuntimeRejectMsg(workerScript, e);
|
||||||
@ -283,7 +283,7 @@ function startNetscript1Script(workerScript: WorkerScript): Promise<WorkerScript
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
runInterpreter();
|
runInterpreter();
|
||||||
} catch (e) {
|
} catch (e: any) {
|
||||||
if (isString(e)) {
|
if (isString(e)) {
|
||||||
workerScript.errorMessage = e;
|
workerScript.errorMessage = e;
|
||||||
return reject(workerScript);
|
return reject(workerScript);
|
||||||
|
@ -191,6 +191,7 @@ export interface IPlayer {
|
|||||||
getHomeComputer(): Server;
|
getHomeComputer(): Server;
|
||||||
getNextCompanyPosition(company: Company, entryPosType: CompanyPosition): CompanyPosition | null;
|
getNextCompanyPosition(company: Company, entryPosType: CompanyPosition): CompanyPosition | null;
|
||||||
getUpgradeHomeRamCost(): number;
|
getUpgradeHomeRamCost(): number;
|
||||||
|
getUpgradeHomeCoresCost(): number;
|
||||||
gotoLocation(to: LocationName): boolean;
|
gotoLocation(to: LocationName): boolean;
|
||||||
hasAugmentation(aug: string | Augmentation): boolean;
|
hasAugmentation(aug: string | Augmentation): boolean;
|
||||||
hasCorporation(): boolean;
|
hasCorporation(): boolean;
|
||||||
|
@ -198,6 +198,7 @@ export class PlayerObject implements IPlayer {
|
|||||||
getHomeComputer: () => Server;
|
getHomeComputer: () => Server;
|
||||||
getNextCompanyPosition: (company: Company, entryPosType: CompanyPosition) => CompanyPosition | null;
|
getNextCompanyPosition: (company: Company, entryPosType: CompanyPosition) => CompanyPosition | null;
|
||||||
getUpgradeHomeRamCost: () => number;
|
getUpgradeHomeRamCost: () => number;
|
||||||
|
getUpgradeHomeCoresCost: () => number;
|
||||||
gotoLocation: (to: LocationName) => boolean;
|
gotoLocation: (to: LocationName) => boolean;
|
||||||
hasAugmentation: (aug: string | Augmentation) => boolean;
|
hasAugmentation: (aug: string | Augmentation) => boolean;
|
||||||
hasCorporation: () => boolean;
|
hasCorporation: () => boolean;
|
||||||
@ -567,6 +568,7 @@ export class PlayerObject implements IPlayer {
|
|||||||
this.getCurrentServer = serverMethods.getCurrentServer;
|
this.getCurrentServer = serverMethods.getCurrentServer;
|
||||||
this.getHomeComputer = serverMethods.getHomeComputer;
|
this.getHomeComputer = serverMethods.getHomeComputer;
|
||||||
this.getUpgradeHomeRamCost = serverMethods.getUpgradeHomeRamCost;
|
this.getUpgradeHomeRamCost = serverMethods.getUpgradeHomeRamCost;
|
||||||
|
this.getUpgradeHomeCoresCost = serverMethods.getUpgradeHomeCoresCost;
|
||||||
this.createHacknetServer = serverMethods.createHacknetServer;
|
this.createHacknetServer = serverMethods.createHacknetServer;
|
||||||
this.factionWorkType = "";
|
this.factionWorkType = "";
|
||||||
this.committingCrimeThruSingFn = false;
|
this.committingCrimeThruSingFn = false;
|
||||||
|
@ -40,6 +40,10 @@ export function getUpgradeHomeRamCost(this: IPlayer): number {
|
|||||||
return cost;
|
return cost;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getUpgradeHomeCoresCost(this: IPlayer): number {
|
||||||
|
return 1e9 * Math.pow(7.5, this.getHomeComputer().cpuCores);
|
||||||
|
}
|
||||||
|
|
||||||
export function createHacknetServer(this: IPlayer): HacknetServer {
|
export function createHacknetServer(this: IPlayer): HacknetServer {
|
||||||
const numOwned = this.hacknetNodes.length;
|
const numOwned = this.hacknetNodes.length;
|
||||||
const name = `hacknet-node-${numOwned}`;
|
const name = `hacknet-node-${numOwned}`;
|
||||||
|
@ -73,9 +73,10 @@ class BitburnerSaveObject {
|
|||||||
const bn = Player.bitNodeN;
|
const bn = Player.bitNodeN;
|
||||||
const filename = `bitburnerSave_BN${bn}x${SourceFileFlags[bn]}_${epochTime}.json`;
|
const filename = `bitburnerSave_BN${bn}x${SourceFileFlags[bn]}_${epochTime}.json`;
|
||||||
const file = new Blob([saveString], { type: "text/plain" });
|
const file = new Blob([saveString], { type: "text/plain" });
|
||||||
if (window.navigator.msSaveOrOpenBlob) {
|
const navigator = window.navigator as any;
|
||||||
|
if (navigator.msSaveOrOpenBlob) {
|
||||||
// IE10+
|
// IE10+
|
||||||
window.navigator.msSaveOrOpenBlob(file, filename);
|
navigator.msSaveOrOpenBlob(file, filename);
|
||||||
} else {
|
} else {
|
||||||
// Others
|
// Others
|
||||||
const a = document.createElement("a"),
|
const a = document.createElement("a"),
|
||||||
|
@ -35,9 +35,10 @@ export class TextFile {
|
|||||||
const filename: string = this.fn;
|
const filename: string = this.fn;
|
||||||
const file: Blob = new Blob([this.text], { type: "text/plain" });
|
const file: Blob = new Blob([this.text], { type: "text/plain" });
|
||||||
/* tslint:disable-next-line:strict-boolean-expressions */
|
/* tslint:disable-next-line:strict-boolean-expressions */
|
||||||
if (window.navigator.msSaveOrOpenBlob) {
|
const navigator = window.navigator as any;
|
||||||
|
if (navigator.msSaveOrOpenBlob) {
|
||||||
// IE10+
|
// IE10+
|
||||||
window.navigator.msSaveOrOpenBlob(file, filename);
|
navigator.msSaveOrOpenBlob(file, filename);
|
||||||
} else {
|
} else {
|
||||||
// Others
|
// Others
|
||||||
const a: HTMLAnchorElement = document.createElement("a");
|
const a: HTMLAnchorElement = document.createElement("a");
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
/* eslint-disable spaced-comment */
|
/* eslint-disable spaced-comment */
|
||||||
module.exports = {
|
module.exports = {
|
||||||
plugins: [
|
plugins: [
|
||||||
"stylelint-declaration-use-variable",
|
|
||||||
"stylelint-order" /*,
|
"stylelint-order" /*,
|
||||||
"stylelint-scss" */,
|
"stylelint-scss" */,
|
||||||
],
|
],
|
||||||
|
Loading…
Reference in New Issue
Block a user