From 1ed19168f676ef91669310b3e981bc8973bd92a1 Mon Sep 17 00:00:00 2001 From: Staszek Welsh Date: Thu, 2 Jun 2022 17:47:31 +0100 Subject: [PATCH] Use nicer arrows and alignment in office UI --- src/Corporation/ui/IndustryOffice.tsx | 327 +++++++++++++------------- 1 file changed, 167 insertions(+), 160 deletions(-) diff --git a/src/Corporation/ui/IndustryOffice.tsx b/src/Corporation/ui/IndustryOffice.tsx index a2b79736d..ae29985bb 100644 --- a/src/Corporation/ui/IndustryOffice.tsx +++ b/src/Corporation/ui/IndustryOffice.tsx @@ -19,6 +19,7 @@ import Typography from "@mui/material/Typography"; import Button from "@mui/material/Button"; import IconButton from "@mui/material/IconButton"; import Paper from "@mui/material/Paper"; +import KeyboardArrowRightIcon from "@mui/icons-material/KeyboardArrowRight"; import ArrowDropUpIcon from "@mui/icons-material/ArrowDropUp"; import ArrowDropDownIcon from "@mui/icons-material/ArrowDropDown"; import Tooltip from "@mui/material/Tooltip"; @@ -180,6 +181,16 @@ interface IAutoAssignProps { rerender: () => void; } +function EmployeeCount(props: { num: number, next: number }): React.ReactElement { + return ( + + {props.num === props.next ? null : props.num} + {props.num === props.next ? null : } + {props.next} + + ); +} + function AutoAssignJob(props: IAutoAssignProps): React.ReactElement { const corp = useCorporation(); const division = useDivision(); @@ -205,17 +216,20 @@ function AutoAssignJob(props: IAutoAssignProps): React.ReactElement { return ( - + - - {props.job} ({(currJob == nextJob ? currJob : `${currJob} -> ${nextJob}`)}) - + {props.job} + + + + + @@ -254,167 +268,160 @@ function AutoManagement(props: IProps): React.ReactElement { const nextUna = props.office.employeeNextJobs[EmployeePositions.Unassigned]; return ( - <> - - - - - Unassigned Employees: - - - {(currUna == nextUna ? currUna : `${currUna} -> ${nextUna}`)} - - - - - Avg Employee Morale: - - - {numeralWrapper.format(avgMorale, "0.000")} - - - - - Avg Employee Happiness: - - - {numeralWrapper.format(avgHappiness, "0.000")} - - - - - Avg Employee Energy: - - - {numeralWrapper.format(avgEnergy, "0.000")} - - - - - Total Employee Salary: - - - - - - - - {vechain && ( - <> - - - - The base amount of material this office can produce. Does not include production multipliers - from upgrades and materials. This value is based off the productivity of your Operations, - Engineering, and Management employees - - } - > - Material Production: - - - - - {numeralWrapper.format(division.getOfficeProductivity(props.office), "0.000")} - - - - - - - The base amount of any given Product this office can produce. Does not include production - multipliers from upgrades and materials. This value is based off the productivity of your - Operations, Engineering, and Management employees - - } - > - Product Production: - - - - - {numeralWrapper.format( - division.getOfficeProductivity(props.office, { - forProduct: true, - }), - "0.000", - )} - - - - - - The effect this office's 'Business' employees has on boosting sales} - > - Business Multiplier: - - - - x{numeralWrapper.format(division.getBusinessFactor(props.office), "0.000")} - - - - )} - -
+ + + + + Unassigned Employees: + + + + + + + + Avg Employee Morale: + + + {numeralWrapper.format(avgMorale, "0.000")} + + + + + Avg Employee Happiness: + + + {numeralWrapper.format(avgHappiness, "0.000")} + + + + + Avg Employee Energy: + + + {numeralWrapper.format(avgEnergy, "0.000")} + + + + + Total Employee Salary: + + + + + + + + {vechain && ( + <> + + + + The base amount of material this office can produce. Does not include production multipliers + from upgrades and materials. This value is based off the productivity of your Operations, + Engineering, and Management employees + + } + > + Material Production: + + + + + {numeralWrapper.format(division.getOfficeProductivity(props.office), "0.000")} + + + + + + + The base amount of any given Product this office can produce. Does not include production + multipliers from upgrades and materials. This value is based off the productivity of your + Operations, Engineering, and Management employees + + } + > + Product Production: + + + + + {numeralWrapper.format( + division.getOfficeProductivity(props.office, { + forProduct: true, + }), + "0.000", + )} + + + + + + The effect this office's 'Business' employees has on boosting sales} + > + Business Multiplier: + + + + x{numeralWrapper.format(division.getBusinessFactor(props.office), "0.000")} + + + + )} + -
- - + - + - + - + - - - - -
- + + + ); }