mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-24 20:19:49 +02:00
feat: hide module actions on no upgrades
This commit is contained in:
1 parent
7727e64931
commit
65e239a22b
1 file changed
+45
-31
@@ -7,42 +7,56 @@ 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>
|
||||||
<Button
|
{hasUpgrades && (
|
||||||
variant="ghost"
|
<>
|
||||||
color="red"
|
<Button
|
||||||
onClick={() => {
|
variant="ghost"
|
||||||
mutateDuel((draft) => {
|
color="red"
|
||||||
draft.protagonist!.turret = draft.protagonist!.tank.turrets[0];
|
onClick={() => {
|
||||||
draft.protagonist!.gun = draft.protagonist!.turret.guns[0];
|
mutateDuel((draft) => {
|
||||||
draft.protagonist!.shell = draft.protagonist!.gun.shells[0];
|
draft.protagonist!.turret =
|
||||||
draft.protagonist!.engine = draft.protagonist!.tank.engines[0];
|
draft.protagonist!.tank.turrets[0];
|
||||||
draft.protagonist!.track = draft.protagonist!.tank.tracks[0];
|
draft.protagonist!.gun = draft.protagonist!.turret.guns[0];
|
||||||
});
|
draft.protagonist!.shell = draft.protagonist!.gun.shells[0];
|
||||||
}}
|
draft.protagonist!.engine =
|
||||||
>
|
draft.protagonist!.tank.engines[0];
|
||||||
Stock
|
draft.protagonist!.track = draft.protagonist!.tank.tracks[0];
|
||||||
</Button>
|
});
|
||||||
<Button
|
}}
|
||||||
variant="ghost"
|
>
|
||||||
onClick={() => {
|
Stock
|
||||||
mutateDuel((draft) => {
|
</Button>
|
||||||
draft.protagonist!.turret =
|
<Button
|
||||||
draft.protagonist!.tank.turrets.at(-1)!;
|
variant="ghost"
|
||||||
draft.protagonist!.gun = draft.protagonist!.turret.guns.at(-1)!;
|
onClick={() => {
|
||||||
draft.protagonist!.shell = draft.protagonist!.gun.shells.at(-1)!;
|
mutateDuel((draft) => {
|
||||||
draft.protagonist!.engine =
|
draft.protagonist!.turret =
|
||||||
draft.protagonist!.tank.engines.at(-1)!;
|
draft.protagonist!.tank.turrets.at(-1)!;
|
||||||
draft.protagonist!.track = draft.protagonist!.tank.tracks.at(-1)!;
|
draft.protagonist!.gun =
|
||||||
});
|
draft.protagonist!.turret.guns.at(-1)!;
|
||||||
}}
|
draft.protagonist!.shell =
|
||||||
>
|
draft.protagonist!.gun.shells.at(-1)!;
|
||||||
Upgrade
|
draft.protagonist!.engine =
|
||||||
</Button>
|
draft.protagonist!.tank.engines.at(-1)!;
|
||||||
|
draft.protagonist!.track =
|
||||||
|
draft.protagonist!.tank.tracks.at(-1)!;
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
Upgrade
|
||||||
|
</Button>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
</Flex>
|
</Flex>
|
||||||
|
|
||||||
<Flex gap="2" wrap="wrap">
|
<Flex gap="2" wrap="wrap">
|
||||||
|
|||||||
Reference in new issue
Block a user