/**
* React component for displaying the player's multipliers on the Augmentation UI page
*/
import { Box, Typography, List, ListItemText, ListItem, Paper } from "@mui/material";
import * as React from "react";
import { BitNodeMultipliers } from "../../BitNode/BitNodeMultipliers";
import { Player } from "../../Player";
import { numeralWrapper } from "../../ui/numeralFormat";
import { Augmentations } from "../Augmentations";
import { DoubleArrow } from "@mui/icons-material";
import { Settings } from "../../Settings/Settings";
function calculateAugmentedStats(): any {
const augP: any = {};
for (const aug of Player.queuedAugmentations) {
const augObj = Augmentations[aug.name];
for (const mult of Object.keys(augObj.mults)) {
const v = augP[mult] ? augP[mult] : 1;
augP[mult] = v * augObj.mults[mult];
}
}
return augP;
}
interface BitNodeModifiedStatsProps {
base: number;
mult: number;
color: string;
}
function BitNodeModifiedStats(props: BitNodeModifiedStatsProps): React.ReactElement {
if (props.mult === 1)
return {numeralWrapper.formatPercentage(props.base)};
return (
{numeralWrapper.formatPercentage(props.base)}{" "}
{numeralWrapper.formatPercentage(props.base * props.mult)}
);
}
interface MultListProps {
rows: (string | number)[][];
color: string;
}
function MultiplierList(props: MultListProps): React.ReactElement {
return (
{props.rows.map((data) => {
const mult = data[0] as string,
value = data[1] as number,
improved = data[2] as number | null,
bnMult = data[3] as number;
if (improved) {
return (
{mult}
}
secondary={
}
disableTypography
/>
);
}
return <>>;
})}
);
}
export function PlayerMultipliers(): React.ReactElement {
const mults = calculateAugmentedStats();
function BladeburnerMults(): React.ReactElement {
if (!Player.canAccessBladeburner()) return <>>;
return (
<>
>
);
}
return (
Multipliers
);
}