feat: hide module actions on no upgrades

This commit is contained in:
TrèsAbhi committed 2024-03-31 22:16:29 -05:00
1 parent 7727e64931
commit 65e239a22b
1 file changed
+19 -5
@@ -7,20 +7,29 @@ import { ConfigurationChildWrapper } from './ConfigurationChildWrapper';
export function Modules() { export function Modules() {
const protagonist = useDuel((state) => state.protagonist!); const protagonist = useDuel((state) => state.protagonist!);
const hasUpgrades =
protagonist.tank.turrets.length > 1 ||
protagonist.tank.turrets[0].guns.length > 1 ||
protagonist.tank.engines.length > 1 ||
protagonist.tank.tracks.length > 1;
return ( return (
<ConfigurationChildWrapper> <ConfigurationChildWrapper>
<Flex gap="4" align="center"> <Flex gap="4" align="center">
<Heading size="4">Modules</Heading> <Heading size="4">Modules</Heading>
{hasUpgrades && (
<>
<Button <Button
variant="ghost" variant="ghost"
color="red" color="red"
onClick={() => { onClick={() => {
mutateDuel((draft) => { mutateDuel((draft) => {
draft.protagonist!.turret = draft.protagonist!.tank.turrets[0]; draft.protagonist!.turret =
draft.protagonist!.tank.turrets[0];
draft.protagonist!.gun = draft.protagonist!.turret.guns[0]; draft.protagonist!.gun = draft.protagonist!.turret.guns[0];
draft.protagonist!.shell = draft.protagonist!.gun.shells[0]; draft.protagonist!.shell = draft.protagonist!.gun.shells[0];
draft.protagonist!.engine = draft.protagonist!.tank.engines[0]; draft.protagonist!.engine =
draft.protagonist!.tank.engines[0];
draft.protagonist!.track = draft.protagonist!.tank.tracks[0]; draft.protagonist!.track = draft.protagonist!.tank.tracks[0];
}); });
}} }}
@@ -33,16 +42,21 @@ export function Modules() {
mutateDuel((draft) => { mutateDuel((draft) => {
draft.protagonist!.turret = draft.protagonist!.turret =
draft.protagonist!.tank.turrets.at(-1)!; draft.protagonist!.tank.turrets.at(-1)!;
draft.protagonist!.gun = draft.protagonist!.turret.guns.at(-1)!; draft.protagonist!.gun =
draft.protagonist!.shell = draft.protagonist!.gun.shells.at(-1)!; draft.protagonist!.turret.guns.at(-1)!;
draft.protagonist!.shell =
draft.protagonist!.gun.shells.at(-1)!;
draft.protagonist!.engine = draft.protagonist!.engine =
draft.protagonist!.tank.engines.at(-1)!; draft.protagonist!.tank.engines.at(-1)!;
draft.protagonist!.track = draft.protagonist!.tank.tracks.at(-1)!; draft.protagonist!.track =
draft.protagonist!.tank.tracks.at(-1)!;
}); });
}} }}
> >
Upgrade Upgrade
</Button> </Button>
</>
)}
</Flex> </Flex>
<Flex gap="2" wrap="wrap"> <Flex gap="2" wrap="wrap">