diff --git a/src/Components/Counters/ExtraCountersBar.tsx b/src/Components/Counters/ExtraCountersBar.tsx index 5af2187..c3aa695 100644 --- a/src/Components/Counters/ExtraCountersBar.tsx +++ b/src/Components/Counters/ExtraCountersBar.tsx @@ -11,6 +11,8 @@ import { Poison, } from '../../Icons/generated'; import { usePlayers } from '../../Hooks/usePlayers'; +import { useGlobalSettings } from '../../Hooks/useGlobalSettings'; +import { GameFormat } from '../../Types/Settings'; const Container = styled.div<{ $rotation: Rotation }>` width: 100%; @@ -61,6 +63,7 @@ type ExtraCountersBarProps = { const ExtraCountersBar = ({ player }: ExtraCountersBarProps) => { const { updatePlayer } = usePlayers(); + const { initialGameSettings } = useGlobalSettings(); const handleCounterChange = ( updatedCounterTotal: number, @@ -117,6 +120,9 @@ const ExtraCountersBar = ({ player }: ExtraCountersBarProps) => { return null; } + const isTwoHeadedGiant = + initialGameSettings?.gameFormat === GameFormat.TwoHeadedGiant; + return ( diff --git a/src/Components/Views/StartMenu/StartMenu.tsx b/src/Components/Views/StartMenu/StartMenu.tsx index 32feb9f..37a27f4 100644 --- a/src/Components/Views/StartMenu/StartMenu.tsx +++ b/src/Components/Views/StartMenu/StartMenu.tsx @@ -1,4 +1,11 @@ -import { Button, FormControl, FormLabel, Switch } from '@mui/material'; +import { + Button, + FormControl, + FormLabel, + MenuItem, + Select, + Switch, +} from '@mui/material'; import Slider from '@mui/material/Slider'; import { useEffect, useState } from 'react'; import styled from 'styled-components'; @@ -14,7 +21,7 @@ import LayoutOptions from './LayoutOptions'; import { Spacer } from '../../Misc/Spacer'; import { usePlayers } from '../../../Hooks/usePlayers'; import { useGlobalSettings } from '../../../Hooks/useGlobalSettings'; -import { InitialGameSettings } from '../../../Types/Settings'; +import { GameFormat, InitialGameSettings } from '../../../Types/Settings'; import { SettingsModal } from '../../Misc/SettingsModal'; const MainWrapper = styled.div` @@ -118,6 +125,7 @@ const Start = () => { numberOfPlayers: 4, startingLifeTotal: 40, useCommanderDamage: true, + gameFormat: GameFormat.Commander, gridAreas: GridTemplateAreas.FourPlayers, } ); @@ -214,7 +222,11 @@ const Start = () => {

Life Trinket

- Number of Players + + {playerOptions.gameFormat === GameFormat.TwoHeadedGiant + ? 'Number of Teams' + : 'Number of Players'} + { - Commander + Use Commander Damage { - if (value) { - setPlayerOptions({ - ...playerOptions, - useCommanderDamage: value, - numberOfPlayers: 4, - startingLifeTotal: 40, - }); - return; + switch (playerOptions.gameFormat) { + case GameFormat.TwoHeadedGiant: + if (value) { + setPlayerOptions({ + ...playerOptions, + useCommanderDamage: value, + startingLifeTotal: 60, + }); + return; + } + setPlayerOptions({ + ...playerOptions, + useCommanderDamage: value, + startingLifeTotal: 30, + }); + return; + + case GameFormat.Standard: + case GameFormat.Commander: + default: + setPlayerOptions({ + ...playerOptions, + useCommanderDamage: value, + }); + return; } - setPlayerOptions({ - ...playerOptions, - useCommanderDamage: value, - numberOfPlayers: 2, - startingLifeTotal: 20, - }); }} /> @@ -290,6 +310,51 @@ const Start = () => { + Format + + Layout