small improvements to augmentation page.

This commit is contained in:
Olivier Gagnon 2021-09-25 02:42:21 -04:00
parent 8b15adda8a
commit 4254cc2807
3 changed files with 151 additions and 139 deletions

@ -14,6 +14,7 @@ import { canGetBonus } from "../../ExportBonus";
import Typography from "@mui/material/Typography"; import Typography from "@mui/material/Typography";
import Button from "@mui/material/Button"; import Button from "@mui/material/Button";
import Tooltip from "@mui/material/Tooltip"; import Tooltip from "@mui/material/Tooltip";
import Box from "@mui/material/Box";
interface IProps { interface IProps {
exportGameFn: () => void; exportGameFn: () => void;
@ -36,40 +37,50 @@ export function AugmentationsRoot(props: IProps): React.ReactElement {
return ( return (
<> <>
<Typography variant="h4">Augmentations</Typography> <Typography variant="h4">Augmentations</Typography>
<Typography> <Box mx={2}>
Below is a list of all Augmentations you have purchased but not yet installed. Click the button below to install <Typography>
them. Below is a list of all Augmentations you have purchased but not yet installed. Click the button below to
install them.
</Typography>
<Typography>WARNING: Installing your Augmentations resets most of your progress, including:</Typography>
<br />
<Typography>- Stats/Skill levels and Experience</Typography>
<Typography>- Money</Typography>
<Typography>- Scripts on every computer but your home computer</Typography>
<Typography>- Purchased servers</Typography>
<Typography>- Hacknet Nodes</Typography>
<Typography>- Faction/Company reputation</Typography>
<Typography>- Stocks</Typography>
<br />
<Typography>
Installing Augmentations lets you start over with the perks and benefits granted by all of the Augmentations
you have ever installed. Also, you will keep any scripts and RAM/Core upgrades on your home computer (but you
will lose all programs besides NUKE.exe)
</Typography>
</Box>
<Typography variant="h4" color="primary">
Purchased Augmentations
</Typography> </Typography>
<Typography>WARNING: Installing your Augmentations resets most of your progress, including:</Typography> <Box mx={2}>
<br /> <Tooltip title={"'I never asked for this'"}>
<Typography>- Stats/Skill levels and Experience</Typography> <Button onClick={props.installAugmentationsFn}>
<Typography>- Money</Typography> <Typography>Install Augmentations</Typography>
<Typography>- Scripts on every computer but your home computer</Typography> </Button>
<Typography>- Purchased servers</Typography> </Tooltip>
<Typography>- Hacknet Nodes</Typography> <Tooltip title={"It's always a good idea to backup/export your save!"}>
<Typography>- Faction/Company reputation</Typography> <Button sx={{ mx: 2 }} onClick={doExport}>
<Typography>- Stocks</Typography> <Typography color="error">Backup Save {exportBonusStr()}</Typography>
<br /> </Button>
<Typography> </Tooltip>
Installing Augmentations lets you start over with the perks and benefits granted by all of the Augmentations you <PurchasedAugmentations />
have ever installed. Also, you will keep any scripts and RAM/Core upgrades on your home computer (but you will </Box>
lose all programs besides NUKE.exe)
</Typography>
<Tooltip title={"'I never asked for this'"}>
<Button onClick={props.installAugmentationsFn}>
<Typography>Install Augmentations</Typography>
</Button>
</Tooltip>
<Tooltip title={"It's always a good idea to backup/export your save!"}>
<Button sx={{ mx: 2 }} onClick={doExport}>
<Typography color="error">Backup Save {exportBonusStr()}</Typography>
</Button>
</Tooltip>
<PurchasedAugmentations />
<Typography variant="h4">Installed Augmentations</Typography> <Typography variant="h4">Installed Augmentations</Typography>
<Typography>List of all Augmentations that have been installed. You have gained the effects of these.</Typography> <Box mx={2}>
<InstalledAugmentations /> <Typography>
<br /> <br /> List of all Augmentations that have been installed. You have gained the effects of these.
</Typography>
<InstalledAugmentations />
</Box>
<PlayerMultipliers /> <PlayerMultipliers />
<SourceFiles /> <SourceFiles />
</> </>

@ -10,6 +10,7 @@ import { Table, TableCell } from "../../ui/React/Table";
import TableBody from "@mui/material/TableBody"; import TableBody from "@mui/material/TableBody";
import TableRow from "@mui/material/TableRow"; import TableRow from "@mui/material/TableRow";
import Typography from "@mui/material/Typography"; import Typography from "@mui/material/Typography";
import Box from "@mui/material/Box";
function calculateAugmentedStats(): any { function calculateAugmentedStats(): any {
const augP: any = {}; const augP: any = {};
@ -97,119 +98,116 @@ export function PlayerMultipliers(): React.ReactElement {
return ( return (
<> <>
<p> <Typography variant="h4">Multipliers</Typography>
<strong> <Box mx={2}>
<u>Multipliers:</u> <MultiplierTable
</strong> rows={[
</p> ["Hacking Chance ", Player.hacking_chance_mult, Player.hacking_chance_mult * mults.hacking_chance_mult],
<br /> ["Hacking Speed ", Player.hacking_speed_mult, Player.hacking_speed_mult * mults.hacking_speed_mult],
<MultiplierTable ["Hacking Money ", Player.hacking_money_mult, Player.hacking_money_mult * mults.hacking_money_mult],
rows={[ ["Hacking Growth ", Player.hacking_grow_mult, Player.hacking_grow_mult * mults.hacking_grow_mult],
["Hacking Chance ", Player.hacking_chance_mult, Player.hacking_chance_mult * mults.hacking_chance_mult], ]}
["Hacking Speed ", Player.hacking_speed_mult, Player.hacking_speed_mult * mults.hacking_speed_mult], />
["Hacking Money ", Player.hacking_money_mult, Player.hacking_money_mult * mults.hacking_money_mult], <br />
["Hacking Growth ", Player.hacking_grow_mult, Player.hacking_grow_mult * mults.hacking_grow_mult],
]}
/>
<br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Hacking Level ", Player.hacking_mult, Player.hacking_mult * mults.hacking_mult], ["Hacking Level ", Player.hacking_mult, Player.hacking_mult * mults.hacking_mult],
["Hacking Experience ", Player.hacking_exp_mult, Player.hacking_exp_mult * mults.hacking_exp_mult], ["Hacking Experience ", Player.hacking_exp_mult, Player.hacking_exp_mult * mults.hacking_exp_mult],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Strength Level ", Player.strength_mult, Player.strength_mult * mults.strength_mult], ["Strength Level ", Player.strength_mult, Player.strength_mult * mults.strength_mult],
["Strength Experience ", Player.strength_exp_mult, Player.strength_exp_mult * mults.strength_exp_mult], ["Strength Experience ", Player.strength_exp_mult, Player.strength_exp_mult * mults.strength_exp_mult],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Defense Level ", Player.defense_mult, Player.defense_mult * mults.defense_mult], ["Defense Level ", Player.defense_mult, Player.defense_mult * mults.defense_mult],
["Defense Experience ", Player.defense_exp_mult, Player.defense_exp_mult * mults.defense_exp_mult], ["Defense Experience ", Player.defense_exp_mult, Player.defense_exp_mult * mults.defense_exp_mult],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Dexterity Level ", Player.dexterity_mult, Player.dexterity_mult * mults.dexterity_mult], ["Dexterity Level ", Player.dexterity_mult, Player.dexterity_mult * mults.dexterity_mult],
["Dexterity Experience ", Player.dexterity_exp_mult, Player.dexterity_exp_mult * mults.dexterity_exp_mult], ["Dexterity Experience ", Player.dexterity_exp_mult, Player.dexterity_exp_mult * mults.dexterity_exp_mult],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Agility Level ", Player.agility_mult, Player.agility_mult * mults.agility_mult], ["Agility Level ", Player.agility_mult, Player.agility_mult * mults.agility_mult],
["Agility Experience ", Player.agility_exp_mult, Player.agility_exp_mult * mults.agility_exp_mult], ["Agility Experience ", Player.agility_exp_mult, Player.agility_exp_mult * mults.agility_exp_mult],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Charisma Level ", Player.charisma_mult, Player.charisma_mult * mults.charisma_mult], ["Charisma Level ", Player.charisma_mult, Player.charisma_mult * mults.charisma_mult],
["Charisma Experience ", Player.charisma_exp_mult, Player.charisma_exp_mult * mults.charisma_exp_mult], ["Charisma Experience ", Player.charisma_exp_mult, Player.charisma_exp_mult * mults.charisma_exp_mult],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
[ [
"Hacknet Node production ", "Hacknet Node production ",
Player.hacknet_node_money_mult, Player.hacknet_node_money_mult,
Player.hacknet_node_money_mult * mults.hacknet_node_money_mult, Player.hacknet_node_money_mult * mults.hacknet_node_money_mult,
], ],
[ [
"Hacknet Node purchase cost ", "Hacknet Node purchase cost ",
Player.hacknet_node_purchase_cost_mult, Player.hacknet_node_purchase_cost_mult,
Player.hacknet_node_purchase_cost_mult * mults.hacknet_node_purchase_cost_mult, Player.hacknet_node_purchase_cost_mult * mults.hacknet_node_purchase_cost_mult,
], ],
[ [
"Hacknet Node RAM upgrade cost ", "Hacknet Node RAM upgrade cost ",
Player.hacknet_node_ram_cost_mult, Player.hacknet_node_ram_cost_mult,
Player.hacknet_node_ram_cost_mult * mults.hacknet_node_ram_cost_mult, Player.hacknet_node_ram_cost_mult * mults.hacknet_node_ram_cost_mult,
], ],
[ [
"Hacknet Node Core purchase cost ", "Hacknet Node Core purchase cost ",
Player.hacknet_node_core_cost_mult, Player.hacknet_node_core_cost_mult,
Player.hacknet_node_core_cost_mult * mults.hacknet_node_core_cost_mult, Player.hacknet_node_core_cost_mult * mults.hacknet_node_core_cost_mult,
], ],
[ [
"Hacknet Node level upgrade cost ", "Hacknet Node level upgrade cost ",
Player.hacknet_node_level_cost_mult, Player.hacknet_node_level_cost_mult,
Player.hacknet_node_level_cost_mult * mults.hacknet_node_level_cost_mult, Player.hacknet_node_level_cost_mult * mults.hacknet_node_level_cost_mult,
], ],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Company reputation gain ", Player.company_rep_mult, Player.company_rep_mult * mults.company_rep_mult], ["Company reputation gain ", Player.company_rep_mult, Player.company_rep_mult * mults.company_rep_mult],
["Faction reputation gain ", Player.faction_rep_mult, Player.faction_rep_mult * mults.faction_rep_mult], ["Faction reputation gain ", Player.faction_rep_mult, Player.faction_rep_mult * mults.faction_rep_mult],
["Salary ", Player.work_money_mult, Player.work_money_mult * mults.work_money_mult], ["Salary ", Player.work_money_mult, Player.work_money_mult * mults.work_money_mult],
]} ]}
/> />
<br /> <br />
<MultiplierTable <MultiplierTable
rows={[ rows={[
["Crime success ", Player.crime_success_mult, Player.crime_success_mult * mults.crime_success_mult], ["Crime success ", Player.crime_success_mult, Player.crime_success_mult * mults.crime_success_mult],
["Crime money ", Player.crime_money_mult, Player.crime_money_mult * mults.crime_money_mult], ["Crime money ", Player.crime_money_mult, Player.crime_money_mult * mults.crime_money_mult],
]} ]}
/> />
<br /> <br />
<BladeburnerMults /> <BladeburnerMults />
</Box>
</> </>
); );
} }

@ -4,15 +4,18 @@ import { OwnedSourceFiles } from "./OwnedSourceFiles";
import List from "@mui/material/List"; import List from "@mui/material/List";
import Typography from "@mui/material/Typography"; import Typography from "@mui/material/Typography";
import Box from "@mui/material/Box";
export function SourceFiles(): React.ReactElement { export function SourceFiles(): React.ReactElement {
return ( return (
<> <>
<Typography variant="h4">Source Files</Typography> <Typography variant="h4">Source Files</Typography>
<List dense> <Box mx={2}>
<SourceFileMinus1 /> <List dense>
<OwnedSourceFiles /> <SourceFileMinus1 />
</List> <OwnedSourceFiles />
</List>
</Box>
</> </>
); );
} }