diff --git a/src/Bladeburner/ui/ContractElem.tsx b/src/Bladeburner/ui/ContractElem.tsx
index 2d5cd79ec..8c1a0e1c7 100644
--- a/src/Bladeburner/ui/ContractElem.tsx
+++ b/src/Bladeburner/ui/ContractElem.tsx
@@ -11,7 +11,7 @@ import { CopyableText } from "../../ui/React/CopyableText";
import { ActionLevel } from "./ActionLevel";
import { Autolevel } from "./Autolevel";
import { StartButton } from "./StartButton";
-
+import { numeralWrapper } from "../../ui/numeralFormat";
import Typography from "@mui/material/Typography";
import Paper from "@mui/material/Paper";
@@ -76,11 +76,11 @@ export function ContractElem(props: IProps): React.ReactElement {
Time Required: {convertTimeMsToTimeElapsedString(actionTime * 1000)}
- Contracts remaining: {Math.floor(props.action.count)}
+ Contracts remaining: {numeralWrapper.formatReallyBigNumber(Math.floor(props.action.count), 3)}
- Successes: {props.action.successes}
+ Successes: {numeralWrapper.formatReallyBigNumber(props.action.successes, 3)}
- Failures: {props.action.failures}
+ Failures: {numeralWrapper.formatReallyBigNumber(props.action.failures, 3)}
diff --git a/src/Bladeburner/ui/OperationElem.tsx b/src/Bladeburner/ui/OperationElem.tsx
index 056c39219..ae745da66 100644
--- a/src/Bladeburner/ui/OperationElem.tsx
+++ b/src/Bladeburner/ui/OperationElem.tsx
@@ -12,7 +12,7 @@ import { Operation } from "../Operation";
import { Operations } from "../data/Operations";
import { Player } from "@player";
import { CopyableText } from "../../ui/React/CopyableText";
-
+import { numeralWrapper } from "../../ui/numeralFormat";
import Typography from "@mui/material/Typography";
import Paper from "@mui/material/Paper";
@@ -79,11 +79,11 @@ export function OperationElem(props: IProps): React.ReactElement {
Time Required: {convertTimeMsToTimeElapsedString(actionTime * 1000)}
- Operations remaining: {Math.floor(props.action.count)}
+ Operations remaining: {numeralWrapper.formatReallyBigNumber(Math.floor(props.action.count), 3)}
- Successes: {props.action.successes}
+ Successes: {numeralWrapper.formatReallyBigNumber(props.action.successes, 3)}
- Failures: {props.action.failures}
+ Failures: {numeralWrapper.formatReallyBigNumber(props.action.failures, 3)}
diff --git a/src/Bladeburner/ui/SkillElem.tsx b/src/Bladeburner/ui/SkillElem.tsx
index e878f4339..8588ca8fb 100644
--- a/src/Bladeburner/ui/SkillElem.tsx
+++ b/src/Bladeburner/ui/SkillElem.tsx
@@ -1,8 +1,7 @@
import React from "react";
import { CopyableText } from "../../ui/React/CopyableText";
-import { formatNumber } from "../../utils/StringHelperFunctions";
+import { numeralWrapper } from "../../ui/numeralFormat";
import { Bladeburner } from "../Bladeburner";
-
import Typography from "@mui/material/Typography";
import IconButton from "@mui/material/IconButton";
import Box from "@mui/material/Box";
@@ -49,11 +48,11 @@ export function SkillElem(props: IProps): React.ReactElement {
)}
- Level: {currentLevel}
+ Level: {numeralWrapper.formatReallyBigNumber(currentLevel, 3)}
{maxLvl ? (
MAX LEVEL
) : (
- Skill Points required: {formatNumber(pointCost, 0)}
+ Skill Points required: {numeralWrapper.formatReallyBigNumber(pointCost, 3)}
)}
{props.skill.desc}
diff --git a/src/Bladeburner/ui/SkillPage.tsx b/src/Bladeburner/ui/SkillPage.tsx
index 44795d62c..4dcbbe9c2 100644
--- a/src/Bladeburner/ui/SkillPage.tsx
+++ b/src/Bladeburner/ui/SkillPage.tsx
@@ -1,8 +1,8 @@
import React, { useState } from "react";
import { SkillList } from "./SkillList";
import { BladeburnerConstants } from "../data/Constants";
-import { formatNumber } from "../../utils/StringHelperFunctions";
import { Bladeburner } from "../Bladeburner";
+import { numeralWrapper } from "../../ui/numeralFormat";
import Typography from "@mui/material/Typography";
interface IProps {
bladeburner: Bladeburner;
@@ -19,7 +19,7 @@ export function SkillPage(props: IProps): React.ReactElement {
return (
<>
- Skill Points: {formatNumber(props.bladeburner.skillPoints, 0)}
+ Skill Points: {numeralWrapper.formatReallyBigNumber(props.bladeburner.skillPoints, 3)}
You will gain one skill point every {BladeburnerConstants.RanksPerSkillPoint} ranks.
@@ -28,34 +28,68 @@ export function SkillPage(props: IProps): React.ReactElement {
skills with each other is multiplicative.
{valid(mults["successChanceAll"]) && (
- Total Success Chance: x{formatNumber(mults["successChanceAll"], 3)}
+
+ Total Success Chance: x{numeralWrapper.formatReallyBigNumber(mults["successChanceAll"], 3)}
+
)}
{valid(mults["successChanceStealth"]) && (
- Stealth Success Chance: x{formatNumber(mults["successChanceStealth"], 3)}
+
+ Stealth Success Chance: x{numeralWrapper.formatReallyBigNumber(mults["successChanceStealth"], 3)}
+
)}
{valid(mults["successChanceKill"]) && (
- Retirement Success Chance: x{formatNumber(mults["successChanceKill"], 3)}
+
+ Retirement Success Chance: x{numeralWrapper.formatReallyBigNumber(mults["successChanceKill"], 3)}
+
)}
{valid(mults["successChanceContract"]) && (
- Contract Success Chance: x{formatNumber(mults["successChanceContract"], 3)}
+
+ Contract Success Chance: x{numeralWrapper.formatReallyBigNumber(mults["successChanceContract"], 3)}
+
)}
{valid(mults["successChanceOperation"]) && (
- Operation Success Chance: x{formatNumber(mults["successChanceOperation"], 3)}
+
+ Operation Success Chance: x{numeralWrapper.formatReallyBigNumber(mults["successChanceOperation"], 3)}
+
)}
{valid(mults["successChanceEstimate"]) && (
- Synthoid Data Estimate: x{formatNumber(mults["successChanceEstimate"], 3)}
+
+ Synthoid Data Estimate: x{numeralWrapper.formatReallyBigNumber(mults["successChanceEstimate"], 3)}
+
+ )}
+ {valid(mults["actionTime"]) && (
+ Action Time: x{numeralWrapper.formatReallyBigNumber(mults["actionTime"], 3)}
+ )}
+ {valid(mults["effHack"]) && (
+ Hacking Skill: x{numeralWrapper.formatReallyBigNumber(mults["effHack"], 3)}
+ )}
+ {valid(mults["effStr"]) && (
+ Strength: x{numeralWrapper.formatReallyBigNumber(mults["effStr"], 3)}
+ )}
+ {valid(mults["effDef"]) && (
+ Defense: x{numeralWrapper.formatReallyBigNumber(mults["effDef"], 3)}
+ )}
+ {valid(mults["effDex"]) && (
+ Dexterity: x{numeralWrapper.formatReallyBigNumber(mults["effDex"], 3)}
+ )}
+ {valid(mults["effAgi"]) && (
+ Agility: x{numeralWrapper.formatReallyBigNumber(mults["effAgi"], 3)}
+ )}
+ {valid(mults["effCha"]) && (
+ Charisma: x{numeralWrapper.formatReallyBigNumber(mults["effCha"], 3)}
+ )}
+ {valid(mults["effInt"]) && (
+ Intelligence: x{numeralWrapper.formatReallyBigNumber(mults["effInt"], 3)}
+ )}
+ {valid(mults["stamina"]) && (
+ Stamina: x{numeralWrapper.formatReallyBigNumber(mults["stamina"], 3)}
+ )}
+ {valid(mults["money"]) && (
+ Contract Money: x{numeralWrapper.formatReallyBigNumber(mults["money"], 3)}
+ )}
+ {valid(mults["expGain"]) && (
+ Exp Gain: x{numeralWrapper.formatReallyBigNumber(mults["expGain"], 3)}
)}
- {valid(mults["actionTime"]) && Action Time: x{formatNumber(mults["actionTime"], 3)}}
- {valid(mults["effHack"]) && Hacking Skill: x{formatNumber(mults["effHack"], 3)}}
- {valid(mults["effStr"]) && Strength: x{formatNumber(mults["effStr"], 3)}}
- {valid(mults["effDef"]) && Defense: x{formatNumber(mults["effDef"], 3)}}
- {valid(mults["effDex"]) && Dexterity: x{formatNumber(mults["effDex"], 3)}}
- {valid(mults["effAgi"]) && Agility: x{formatNumber(mults["effAgi"], 3)}}
- {valid(mults["effCha"]) && Charisma: x{formatNumber(mults["effCha"], 3)}}
- {valid(mults["effInt"]) && Intelligence: x{formatNumber(mults["effInt"], 3)}}
- {valid(mults["stamina"]) && Stamina: x{formatNumber(mults["stamina"], 3)}}
- {valid(mults["money"]) && Contract Money: x{formatNumber(mults["money"], 3)}}
- {valid(mults["expGain"]) && Exp Gain: x{formatNumber(mults["expGain"], 3)}}
setRerender((old) => !old)} />
>
);