diff --git a/packages/website/src/components/Compare/CompareTable.tsx b/packages/website/src/components/Compare/CompareTable.tsx index d1b2e0d35..ea1313316 100644 --- a/packages/website/src/components/Compare/CompareTable.tsx +++ b/packages/website/src/components/Compare/CompareTable.tsx @@ -9,8 +9,8 @@ import { } from '@blitzkit/core'; import { checkConsumableProvisionInclusivity } from '@blitzkit/core/src/blitzkit/checkConsumableProvisionInclusivity'; import { ComponentPlaceholderIcon } from '@radix-ui/react-icons'; -import { Button, Flex, Popover, Slider, Table, Text } from '@radix-ui/themes'; -import { debounce, times } from 'lodash-es'; +import { Button, Flex, Popover, Table } from '@radix-ui/themes'; +import { times } from 'lodash-es'; import type { TankCharacteristics } from '../../core/blitzkit/tankCharacteristics'; import { Var } from '../../core/radix/var'; import { CompareEphemeral } from '../../stores/compareEphemeral'; @@ -167,7 +167,6 @@ export function CompareTable({ stats }: CompareTableProps) { engine, track, consumables, - crewMastery, }, index, ) => { @@ -537,23 +536,6 @@ export function CompareTable({ stats }: CompareTableProps) { - - - {Math.round(crewMastery * 100)}% - - { - mutateCompareEphemeral((draft) => { - draft.members[index].crewMastery = value; - }); - }, 500)} - /> - - ); diff --git a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/index.tsx b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/index.tsx index b7f1c3c99..b8f985c50 100644 --- a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/index.tsx +++ b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/index.tsx @@ -41,7 +41,6 @@ export function Characteristics() { const crewSkills = TankopediaEphemeral.use((state) => state.skills); const penetrationDistanceInput = useRef(null); const hasImprovedVentilation = useEquipment(102); - const crewMastery = Duel.use((state) => state.protagonist.crewMastery); const [penetrationDistance, setPenetrationDistance] = useState(250); const setPenetrationDistanceDebounced = debounce((value: number) => { setPenetrationDistance(value); @@ -56,7 +55,7 @@ export function Characteristics() { : total, 0, ) + (hasImprovedVentilation ? 0.08 : 0); - const commanderMastery = crewMastery + provisionCrewBonus; + const commanderMastery = 1 + provisionCrewBonus; const consumables = Duel.use((state) => state.protagonist.consumables); const camouflage = Duel.use((state) => state.protagonist.camouflage); const equipmentMatrix = Duel.use( @@ -78,7 +77,6 @@ export function Characteristics() { tank, camouflage, consumables, - crewMastery, crewSkills, engine, equipmentMatrix, diff --git a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Miscellaneous.tsx b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Miscellaneous.tsx index 0900295c4..90752ced1 100644 --- a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Miscellaneous.tsx +++ b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Miscellaneous.tsx @@ -1,7 +1,5 @@ -import { asset, TankType } from '@blitzkit/core'; -import { Flex, Heading, Slider, TextField } from '@radix-ui/themes'; -import { clamp, debounce } from 'lodash-es'; -import { useEffect, useMemo, useRef, useState } from 'react'; +import { asset } from '@blitzkit/core'; +import { Flex, Heading } from '@radix-ui/themes'; import { Duel } from '../../../../stores/duel'; import { GenericTankComponentButton } from '../../../ModuleButtons/GenericTankComponentButton'; import { ConfigurationChildWrapper } from './ConfigurationChildWrapper'; @@ -12,27 +10,8 @@ export function Miscellaneous() { const cooldownBooster = Duel.use( (state) => state.protagonist.cooldownBooster, ); - const crewMastery = Duel.use((state) => state.protagonist.crewMastery); - const crewInput = useRef(null); - const [crewMasteryDraft, setCrewMasteryDraft] = useState(crewMastery); const { tank } = Duel.use((state) => state.protagonist); - const debouncedApplyDraft = useMemo( - () => - debounce((value) => { - mutateDuel((draft) => { - draft.protagonist.crewMastery = value; - }); - }, 500), - [], - ); - - useEffect(() => { - setCrewMasteryDraft(crewMastery); - if (!crewInput.current) return; - crewInput.current.value = `${Math.round(crewMastery * 100)}`; - }, [crewMastery]); - return ( Miscellaneous @@ -77,53 +56,6 @@ export function Miscellaneous() { }); }} /> - - {tank.type === TankType.RESEARCHABLE && ( - - { - const newValue = Number(crewInput.current!.value) / 100; - - if (isNaN(newValue)) { - crewInput.current!.value = `${Math.round(crewMastery * 100)}`; - return; - } - - mutateDuel((draft) => { - draft.protagonist.crewMastery = clamp(newValue / 100, 0.5, 1); - }); - }} - onKeyUp={(event) => { - if (event.key === 'Enter') { - crewInput.current?.blur(); - } - }} - > - Crew - % - - - { - setCrewMasteryDraft(value / 100); - debouncedApplyDraft(value / 100); - }} - /> - - )} ); diff --git a/packages/website/src/core/blitzkit/tankCharacteristics.ts b/packages/website/src/core/blitzkit/tankCharacteristics.ts index 1edf981bd..4b7d1b772 100644 --- a/packages/website/src/core/blitzkit/tankCharacteristics.ts +++ b/packages/website/src/core/blitzkit/tankCharacteristics.ts @@ -33,7 +33,6 @@ export function tankCharacteristics( shell, consumables, equipmentMatrix, - crewMastery, provisions, engine, crewSkills, @@ -59,7 +58,6 @@ export function tankCharacteristics( stockGun: GunDefinition; consumables: number[]; equipmentMatrix: EquipmentMatrix; - crewMastery: number; provisions: number[]; crewSkills: Record; camouflage: boolean; @@ -139,7 +137,7 @@ export function tankCharacteristics( : total, 0, ) + (hasImprovedVentilation ? 0.08 : 0); - const commanderMastery = crewMastery + provisionCrewBonus; + const commanderMastery = 1 + provisionCrewBonus; const loaderMastery = commanderMastery * (tank.crew.some(({ type }) => type === CrewType.LOADER) ? 1.1 : 1.05); diff --git a/packages/website/src/core/blitzkit/tankToDuelMember.ts b/packages/website/src/core/blitzkit/tankToDuelMember.ts index 1ce37bfcb..3a12cde64 100644 --- a/packages/website/src/core/blitzkit/tankToDuelMember.ts +++ b/packages/website/src/core/blitzkit/tankToDuelMember.ts @@ -29,7 +29,6 @@ export function tankToDuelMember( consumables: [], equipmentMatrix: genericDefaultEquipmentMatrix, cooldownBooster: 0, - crewMastery: 1, provisions: provisionsList .sort( (a, b) => diff --git a/packages/website/src/stores/duel/index.ts b/packages/website/src/stores/duel/index.ts index ae549d6e7..77b6c0126 100644 --- a/packages/website/src/stores/duel/index.ts +++ b/packages/website/src/stores/duel/index.ts @@ -35,7 +35,6 @@ export interface DuelMember { pitch: number; yaw: number; consumables: number[]; - crewMastery: number; provisions: number[]; camouflage: boolean; cooldownBooster: number;