From b82e9057573dbc37c76926acdbaa976eb33acb6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com> Date: Fri, 29 Aug 2025 13:42:44 -0500 Subject: [PATCH] fix: dead code --- docs/changelogs/1.27.18.md | 1 + packages/i18n/strings/en.json | 3 +- .../PrimaryArmorSceneComponent/index.tsx | 20 +++++------- .../SpacedArmorSubExternal/index.tsx | 10 +++--- .../components/SpacedArmorSubSpaced/index.tsx | 10 +++--- .../SpacedArmorSceneComponent/index.tsx | 18 +++++------ .../Armor/components/StaticArmor.tsx | 18 +++++------ .../src/components/Compare/Controls.tsx | 18 ++--------- .../src/components/Compare/TankControl.tsx | 9 +----- .../src/components/GuessBackground/index.tsx | 3 +- .../Characteristics/components/Firepower.tsx | 31 +------------------ .../components/InfoWithDelta.tsx | 7 +---- .../components/Characteristics/index.tsx | 1 - .../Options/components/QuickInputs/index.tsx | 1 - .../TankSandbox/components/Control.tsx | 6 ++-- .../TankSandbox/components/TankModel.tsx | 13 ++++---- .../components/TankSandbox/index.tsx | 2 +- .../src/core/blitzkit/tankToCompareMember.ts | 9 ++---- .../src/core/blitzkit/tankToDuelMember.ts | 2 -- .../website/src/hooks/useTankTransform.ts | 2 -- .../src/pages/[...locale]/compare/_index.tsx | 6 +--- .../website/src/pages/[...locale]/index.astro | 1 - packages/website/src/stores/duel/index.ts | 2 +- 23 files changed, 56 insertions(+), 137 deletions(-) diff --git a/docs/changelogs/1.27.18.md b/docs/changelogs/1.27.18.md index 38d22ea40..509984110 100644 --- a/docs/changelogs/1.27.18.md +++ b/docs/changelogs/1.27.18.md @@ -8,3 +8,4 @@ ## Fixes - The loading bar for the Tankopedia sandbox now shows up again +- Removed a lot of dead code, improving performance diff --git a/packages/i18n/strings/en.json b/packages/i18n/strings/en.json index cc76295ef..6f34c3613 100644 --- a/packages/i18n/strings/en.json +++ b/packages/i18n/strings/en.json @@ -864,7 +864,8 @@ "mixer": { "name": "Mixer", "button": "Mix and match", - "description": "Mix tank modules" + "description": "Mix tank modules", + "seo_description": "Mix and match hulls, turrets, and guns of tanks in World of Tanks Blitz" }, "guess": { diff --git a/packages/website/src/components/Armor/components/PrimaryArmorSceneComponent/index.tsx b/packages/website/src/components/Armor/components/PrimaryArmorSceneComponent/index.tsx index 07f82e5ad..19529103e 100644 --- a/packages/website/src/components/Armor/components/PrimaryArmorSceneComponent/index.tsx +++ b/packages/website/src/components/Armor/components/PrimaryArmorSceneComponent/index.tsx @@ -80,7 +80,7 @@ export function PrimaryArmorSceneComponent({ }); useEffect(() => { - async function handleShellChange() { + function handleShellChange() { const duel = duelStore.getState(); const tankopediaEphemeral = tankopediaEphemeralStore.getState(); const shell = tankopediaEphemeral.customShell ?? duel.antagonist.shell; @@ -97,14 +97,8 @@ export function PrimaryArmorSceneComponent({ material.uniforms.damage.value = shell.armor_damage; material.uniforms.explosionRadius.value = shell.explosion_radius; - await handleProtagonistEquipmentChange( - duel.protagonist.equipmentMatrix, - true, - ); - await handleAntagonistEquipmentChange( - duel.antagonist.equipmentMatrix, - true, - ); + handleProtagonistEquipmentChange(duel.protagonist.equipmentMatrix, true); + handleAntagonistEquipmentChange(duel.antagonist.equipmentMatrix, true); invalidate(); } @@ -121,12 +115,12 @@ export function PrimaryArmorSceneComponent({ function handleWireframeChange(wireframe: boolean) { material.wireframe = wireframe; } - async function handleProtagonistEquipmentChange( + function handleProtagonistEquipmentChange( equipment: EquipmentMatrix, noInvalidate = false, ) { const duel = duelStore.getState(); - const hasEnhancedArmor = await hasEquipment( + const hasEnhancedArmor = hasEquipment( 110, duel.protagonist.tank.equipment_preset, equipment, @@ -137,7 +131,7 @@ export function PrimaryArmorSceneComponent({ if (!noInvalidate) invalidate(); } - async function handleAntagonistEquipmentChange( + function handleAntagonistEquipmentChange( equipment: EquipmentMatrix, noInvalidate = false, ) { @@ -145,7 +139,7 @@ export function PrimaryArmorSceneComponent({ const tankopediaEphemeral = tankopediaEphemeralStore.getState(); const shell = tankopediaEphemeral.customShell ?? duel.antagonist.shell; const penetration = shell.penetration.near; - const hasCalibratedShells = await hasEquipment( + const hasCalibratedShells = hasEquipment( 103, duel.antagonist.tank.equipment_preset, equipment, diff --git a/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubExternal/index.tsx b/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubExternal/index.tsx index 8dfc08995..cff0c41d9 100644 --- a/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubExternal/index.tsx +++ b/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubExternal/index.tsx @@ -54,11 +54,9 @@ export function SpacedArmorSubExternal({ const shell = tankopediaEphemeral.customShell ?? duel.antagonist.shell; material.uniforms.penetration.value = shell.penetration.near; } - async function handleProtagonistEquipmentChange( - equipment: EquipmentMatrix, - ) { + function handleProtagonistEquipmentChange(equipment: EquipmentMatrix) { const duel = duelStore.getState(); - const hasEnhancedArmor = await hasEquipment( + const hasEnhancedArmor = hasEquipment( 110, duel.protagonist.tank.equipment_preset, equipment, @@ -67,12 +65,12 @@ export function SpacedArmorSubExternal({ ? thickness * 1.03 : thickness; } - async function handleAntagonistEquipmentChange(equipment: EquipmentMatrix) { + function handleAntagonistEquipmentChange(equipment: EquipmentMatrix) { const duel = duelStore.getState(); const tankopediaEphemeral = tankopediaEphemeralStore.getState(); const shell = tankopediaEphemeral.customShell ?? duel.antagonist.shell; const penetration = shell.penetration.near; - const hasCalibratedShells = await hasEquipment( + const hasCalibratedShells = hasEquipment( 103, duel.antagonist.tank.equipment_preset, equipment, diff --git a/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubSpaced/index.tsx b/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubSpaced/index.tsx index f9032e2c0..a6a1dda9f 100644 --- a/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubSpaced/index.tsx +++ b/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/components/SpacedArmorSubSpaced/index.tsx @@ -64,11 +64,9 @@ export function SpacedArmorSubSpaced({ shell.normalization ?? 0, ); } - async function handleProtagonistEquipmentChange( - equipment: EquipmentMatrix, - ) { + function handleProtagonistEquipmentChange(equipment: EquipmentMatrix) { const duel = duelStore.getState(); - const hasEnhancedArmor = await hasEquipment( + const hasEnhancedArmor = hasEquipment( 110, duel.protagonist.tank.equipment_preset, equipment, @@ -77,12 +75,12 @@ export function SpacedArmorSubSpaced({ ? thickness * 1.03 : thickness; } - async function handleAntagonistEquipmentChange(equipment: EquipmentMatrix) { + function handleAntagonistEquipmentChange(equipment: EquipmentMatrix) { const duel = duelStore.getState(); const tankopediaEphemeral = tankopediaEphemeralStore.getState(); const shell = tankopediaEphemeral.customShell ?? duel.antagonist.shell; const penetration = shell.penetration.near; - const hasCalibratedShells = await hasEquipment( + const hasCalibratedShells = hasEquipment( 103, duel.antagonist.tank.equipment_preset, equipment, diff --git a/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/index.tsx b/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/index.tsx index 6a55905f6..da9a781e2 100644 --- a/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/index.tsx +++ b/packages/website/src/components/Armor/components/SpacedArmorSceneComponent/index.tsx @@ -81,7 +81,7 @@ export function SpacedArmorSceneComponent({ const camera = useThree((state) => state.camera); const shoot = useCallback( - async ( + ( point: Vector3, intersections: Intersection[], allowRicochet: boolean, @@ -103,12 +103,12 @@ export function SpacedArmorSceneComponent({ }, }; - const hasCalibratedShells = await hasEquipment( + const hasCalibratedShells = hasEquipment( 103, antagonist.tank.equipment_preset, antagonist.equipmentMatrix, ); - const hasEnhancedArmor = await hasEquipment( + const hasEnhancedArmor = hasEquipment( 110, protagonist.tank.equipment_preset, protagonist.equipmentMatrix, @@ -340,7 +340,7 @@ export function SpacedArmorSceneComponent({ props.scene.children, true, ); - const outShot = await shoot( + const outShot = shoot( lastLayer.point, ricochetIntersections, false, @@ -386,13 +386,11 @@ export function SpacedArmorSceneComponent({ thickness, } satisfies ArmorUserData } - onClick={async (event) => { + onClick={(event) => { event.stopPropagation(); - const shot = (await shoot( - event.point, - event.intersections, - true, - ))!; + + const shot = shoot(event.point, event.intersections, true)!; + tankopediaEphemeralStore.setState({ shot }); }} /> diff --git a/packages/website/src/components/Armor/components/StaticArmor.tsx b/packages/website/src/components/Armor/components/StaticArmor.tsx index 9bde24391..f0459c715 100644 --- a/packages/website/src/components/Armor/components/StaticArmor.tsx +++ b/packages/website/src/components/Armor/components/StaticArmor.tsx @@ -165,14 +165,14 @@ export const StaticArmor = memo(({ thicknessRange }) => { window.addEventListener('pointermove', handlePointerMove); window.addEventListener('pointerup', handlePointerUp); } - async function handlePointerMove(event: PointerEvent) { + function handlePointerMove(event: PointerEvent) { const duel = duelStore.getState(); - const hasImprovedVerticalStabilizer = await hasEquipment( + const hasImprovedVerticalStabilizer = hasEquipment( 122, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, ); - const hasDownImprovedVerticalStabilizer = await hasEquipment( + const hasDownImprovedVerticalStabilizer = hasEquipment( 124, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, @@ -259,14 +259,14 @@ export const StaticArmor = memo(({ thicknessRange }) => { window.addEventListener('pointermove', handlePointerMove); window.addEventListener('pointerup', handlePointerUp); } - async function handlePointerMove(event: PointerEvent) { + function handlePointerMove(event: PointerEvent) { const duel = duelStore.getState(); - const hasImprovedVerticalStabilizer = await hasEquipment( + const hasImprovedVerticalStabilizer = hasEquipment( 122, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, ); - const hasDownImprovedVerticalStabilizer = await hasEquipment( + const hasDownImprovedVerticalStabilizer = hasEquipment( 124, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, @@ -340,14 +340,14 @@ export const StaticArmor = memo(({ thicknessRange }) => { window.addEventListener('pointermove', handlePointerMove); window.addEventListener('pointerup', handlePointerUp); } - async function handlePointerMove(event: PointerEvent) { + function handlePointerMove(event: PointerEvent) { const duel = duelStore.getState(); - const hasImprovedVerticalStabilizer = await hasEquipment( + const hasImprovedVerticalStabilizer = hasEquipment( 122, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, ); - const hasDownImprovedVerticalStabilizer = await hasEquipment( + const hasDownImprovedVerticalStabilizer = hasEquipment( 124, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, diff --git a/packages/website/src/components/Compare/Controls.tsx b/packages/website/src/components/Compare/Controls.tsx index d0b1f4089..47e83be04 100644 --- a/packages/website/src/components/Compare/Controls.tsx +++ b/packages/website/src/components/Compare/Controls.tsx @@ -1,6 +1,5 @@ import { PlusIcon, TrashIcon } from '@radix-ui/react-icons'; import { Button, Dialog, Flex, SegmentedControl } from '@radix-ui/themes'; -import { awaitableModelDefinitions } from '../../core/awaitables/modelDefinitions'; import { awaitableProvisionDefinitions } from '../../core/awaitables/provisionDefinitions'; import { tankToCompareMember } from '../../core/blitzkit/tankToCompareMember'; import { useLocale } from '../../hooks/useLocale'; @@ -16,10 +15,7 @@ interface ControlsProps { onAddTankDialogOpenChange: (open: boolean) => void; } -const [provisionDefinitions, modelDefinitions] = await Promise.all([ - awaitableProvisionDefinitions, - awaitableModelDefinitions, -]); +const provisionDefinitions = await awaitableProvisionDefinitions; export function Controls({ addTankDialogOpen, @@ -60,11 +56,9 @@ export function Controls({ { - const model = modelDefinitions.models[tank.id]; - mutateCompareEphemeral((draft) => { draft.members.push( - tankToCompareMember(tank, model, provisionDefinitions), + tankToCompareMember(tank, provisionDefinitions), ); draft.sorting = undefined; }); @@ -74,13 +68,7 @@ export function Controls({ mutateCompareEphemeral((draft) => { draft.members.push( ...tanks.map((tank) => { - const model = modelDefinitions.models[tank.id]; - - return tankToCompareMember( - tank, - model, - provisionDefinitions, - ); + return tankToCompareMember(tank, provisionDefinitions); }), ); draft.sorting = undefined; diff --git a/packages/website/src/components/Compare/TankControl.tsx b/packages/website/src/components/Compare/TankControl.tsx index b24d534e1..2a4b80d4f 100644 --- a/packages/website/src/components/Compare/TankControl.tsx +++ b/packages/website/src/components/Compare/TankControl.tsx @@ -1,7 +1,6 @@ import { ExternalLinkIcon, LoopIcon, TrashIcon } from '@radix-ui/react-icons'; import { Dialog, Flex, IconButton } from '@radix-ui/themes'; import { useState } from 'react'; -import { awaitableModelDefinitions } from '../../core/awaitables/modelDefinitions'; import { awaitableProvisionDefinitions } from '../../core/awaitables/provisionDefinitions'; import { tankToCompareMember } from '../../core/blitzkit/tankToCompareMember'; import { useLocale } from '../../hooks/useLocale'; @@ -14,10 +13,7 @@ interface TankControlProps { slug: string; } -const [provisionDefinitions, modelDefinitions] = await Promise.all([ - awaitableProvisionDefinitions, - awaitableModelDefinitions, -]); +const provisionDefinitions = await awaitableProvisionDefinitions; export function TankControl({ index, slug }: TankControlProps) { const { locale } = useLocale(); @@ -61,12 +57,9 @@ export function TankControl({ index, slug }: TankControlProps) { { - const model = modelDefinitions.models[tank.id]; - mutateCompareEphemeral((draft) => { draft.members[index] = tankToCompareMember( tank, - model, provisionDefinitions, ); draft.sorting = undefined; diff --git a/packages/website/src/components/GuessBackground/index.tsx b/packages/website/src/components/GuessBackground/index.tsx index cfda8a652..443a98690 100644 --- a/packages/website/src/components/GuessBackground/index.tsx +++ b/packages/website/src/components/GuessBackground/index.tsx @@ -22,8 +22,7 @@ export function GuessBackground() { useEffect(() => { mutateDuel((state) => { - const model = modelDefinitions.models[tank.id]; - state.protagonist = tankToDuelMember(tank, model, provisionDefinitions); + state.protagonist = tankToDuelMember(tank, provisionDefinitions); }); mutateTankopediaEphemeral((state) => { state.model = modelDefinitions.models[tank.id]; diff --git a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/Firepower.tsx b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/Firepower.tsx index b97cc1f00..870db568d 100644 --- a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/Firepower.tsx +++ b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/Firepower.tsx @@ -1,14 +1,6 @@ -import { - asset, - coefficient, - isExplosive, - resolvePenetrationCoefficient, -} from '@blitzkit/core'; +import { asset, isExplosive } from '@blitzkit/core'; import { literals } from '@blitzkit/i18n'; import { Flex, Heading, IconButton, Tooltip } from '@radix-ui/themes'; -import { debounce } from 'lodash-es'; -import { useEffect, useRef, useState } from 'react'; -import { useEquipment } from '../../../../../../hooks/useEquipment'; import { useLocale } from '../../../../../../hooks/useLocale'; import { useTankModelDefinition } from '../../../../../../hooks/useTankModelDefinition'; import { Duel } from '../../../../../../stores/duel'; @@ -28,34 +20,13 @@ export function Firepower({ }: StatsAcceptorProps & MaybeSkeletonComponentProps) { const mutateDuel = Duel.useMutation(); const { strings, unwrap } = useLocale(); - const [penetrationDistance, setPenetrationDistance] = useState(250); - const setPenetrationDistanceDebounced = debounce((value: number) => { - setPenetrationDistance(value); - }, 500); const turret = Duel.use((state) => state.protagonist.turret); const gun = Duel.use((state) => state.protagonist.gun); const shell = Duel.use((state) => state.protagonist.shell); - const penetrationDistanceInput = useRef(null); - const hasSupercharger = useEquipment(107); - const hasCalibratedShells = useEquipment(103); - const penetrationCoefficient = coefficient([ - hasCalibratedShells, - resolvePenetrationCoefficient(true, shell.type) - 1, - ]); - const penetrationLossOverDistanceCoefficient = coefficient([ - hasSupercharger, - -0.6, - ]); const tankModelDefinition = useTankModelDefinition(); const turretModelDefinition = tankModelDefinition.turrets[turret.id]; const gunModelDefinition = turretModelDefinition.guns[gun.id]; - useEffect(() => { - if (penetrationDistanceInput.current) { - penetrationDistanceInput.current.value = `${penetrationDistance}`; - } - }, [penetrationDistance]); - return ( diff --git a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/InfoWithDelta.tsx b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/InfoWithDelta.tsx index 3f774dabf..4302a9f95 100644 --- a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/InfoWithDelta.tsx +++ b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/components/InfoWithDelta.tsx @@ -80,12 +80,7 @@ export const InfoWithDelta = memo( relativeAgainst === TankopediaRelativeAgainst.All, ) .map((tank) => { - const thisTankModel = modelDefinitions.models[tank.id]; - const member = tankToDuelMember( - tank, - thisTankModel, - provisionDefinitions, - ); + const member = tankToDuelMember(tank, provisionDefinitions); if (member.gun.shells[shellIndex] === undefined) { return undefined; 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 2c59e4ec5..13a05d7d0 100644 --- a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/index.tsx +++ b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Characteristics/index.tsx @@ -21,7 +21,6 @@ const [equipmentDefinitions, provisionDefinitions] = await Promise.all([ ]); export function Characteristics({ skeleton }: MaybeSkeletonComponentProps) { - const mutateDuel = Duel.useMutation(); const crewSkills = TankopediaEphemeral.use((state) => state.skills); const provisions = Duel.use((state) => state.protagonist.provisions); const consumables = Duel.use((state) => state.protagonist.consumables); diff --git a/packages/website/src/components/Tankopedia/HeroSection/components/Options/components/QuickInputs/index.tsx b/packages/website/src/components/Tankopedia/HeroSection/components/Options/components/QuickInputs/index.tsx index 65a8029c2..624c6e809 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/Options/components/QuickInputs/index.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/Options/components/QuickInputs/index.tsx @@ -14,7 +14,6 @@ import { Duel } from '../../../../../../../stores/duel'; import './index.css'; export function QuickInputs() { - const mutateDuel = Duel.useMutation(); const protagonist = Duel.use((state) => state.protagonist); const yawInput = useRef(null); const pitchInput = useRef(null); diff --git a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/Control.tsx b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/Control.tsx index dd313a1fe..3eb5d4d65 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/Control.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/Control.tsx @@ -109,14 +109,14 @@ export function Controls({ }, ); - async function handlePoseEvent(event: Pose) { + function handlePoseEvent(event: Pose) { const duel = duelStore.getState(); - const hasImprovedVerticalStabilizer = await hasEquipment( + const hasImprovedVerticalStabilizer = hasEquipment( 122, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, ); - const hasDownImprovedVerticalStabilizer = await hasEquipment( + const hasDownImprovedVerticalStabilizer = hasEquipment( 124, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, diff --git a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TankModel.tsx b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TankModel.tsx index 724112693..44dc929f5 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TankModel.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TankModel.tsx @@ -14,7 +14,6 @@ import { TankopediaDisplay } from '../../../../../../stores/tankopediaPersistent import { ModelTankWrapper } from '../../../../../Armor/components/ModelTankWrapper'; export function TankModel() { - const mutateDuel = Duel.useMutation(); const duelStore = Duel.useStore(); const protagonist = Duel.use((draft) => draft.protagonist); const tankopediaEphemeralStore = TankopediaEphemeral.useStore(); @@ -141,14 +140,14 @@ export function TankModel() { window.addEventListener('pointermove', handlePointerMove); window.addEventListener('pointerup', handlePointerUp); } - async function handlePointerMove(event: PointerEvent) { + function handlePointerMove(event: PointerEvent) { const duel = duelStore.getState(); - const hasImprovedVerticalStabilizer = await hasEquipment( + const hasImprovedVerticalStabilizer = hasEquipment( 122, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, ); - const hasDownImprovedVerticalStabilizer = await hasEquipment( + const hasDownImprovedVerticalStabilizer = hasEquipment( 124, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, @@ -229,14 +228,14 @@ export function TankModel() { window.addEventListener('pointermove', handlePointerMove); window.addEventListener('pointerup', handlePointerUp); } - async function handlePointerMove(event: PointerEvent) { + function handlePointerMove(event: PointerEvent) { const duel = duelStore.getState(); - const hasImprovedVerticalStabilizer = await hasEquipment( + const hasImprovedVerticalStabilizer = hasEquipment( 122, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, ); - const hasDownImprovedVerticalStabilizer = await hasEquipment( + const hasDownImprovedVerticalStabilizer = hasEquipment( 124, duel.protagonist.tank.equipment_preset, duel.protagonist.equipmentMatrix, diff --git a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/index.tsx b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/index.tsx index 00a9754ed..087c640b0 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/index.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/index.tsx @@ -231,7 +231,7 @@ export const TankSandbox = forwardRef( {display === TankopediaDisplay.StaticArmor && ( )} - + diff --git a/packages/website/src/core/blitzkit/tankToCompareMember.ts b/packages/website/src/core/blitzkit/tankToCompareMember.ts index 1e997b261..2930293d3 100644 --- a/packages/website/src/core/blitzkit/tankToCompareMember.ts +++ b/packages/website/src/core/blitzkit/tankToCompareMember.ts @@ -1,19 +1,14 @@ -import type { - ModelDefinition, - ProvisionDefinitions, - TankDefinition, -} from '@blitzkit/core'; +import type { ProvisionDefinitions, TankDefinition } from '@blitzkit/core'; import { uniqueId } from 'lodash-es'; import type { CompareMember } from '../../stores/compareEphemeral'; import { tankToDuelMember } from './tankToDuelMember'; export function tankToCompareMember( tank: TankDefinition, - model: ModelDefinition, provisionDefinitions: ProvisionDefinitions, ) { return { - ...tankToDuelMember(tank, model, provisionDefinitions), + ...tankToDuelMember(tank, provisionDefinitions), key: uniqueId(), } satisfies CompareMember; } diff --git a/packages/website/src/core/blitzkit/tankToDuelMember.ts b/packages/website/src/core/blitzkit/tankToDuelMember.ts index 1e6a8f5dc..ac03d1257 100644 --- a/packages/website/src/core/blitzkit/tankToDuelMember.ts +++ b/packages/website/src/core/blitzkit/tankToDuelMember.ts @@ -1,6 +1,5 @@ import { createDefaultProvisions, - ModelDefinition, type ProvisionDefinitions, type TankDefinition, } from '@blitzkit/core'; @@ -9,7 +8,6 @@ import { genericDefaultEquipmentMatrix } from '../../stores/duel/constants'; export function tankToDuelMember( tank: TankDefinition, - model: ModelDefinition, provisionDefinitions: ProvisionDefinitions, ) { const turret = tank.turrets.at(-1)!; diff --git a/packages/website/src/hooks/useTankTransform.ts b/packages/website/src/hooks/useTankTransform.ts index 677cf409c..5063ff18b 100644 --- a/packages/website/src/hooks/useTankTransform.ts +++ b/packages/website/src/hooks/useTankTransform.ts @@ -15,7 +15,6 @@ import { modelTransformEvent, type ModelTransformEventData, } from '../core/blitzkit/modelTransform'; -import { Duel } from '../stores/duel'; import { useTankModelDefinition } from './useTankModelDefinition'; export function useTankTransform( @@ -25,7 +24,6 @@ export function useTankTransform( gunContainer: RefObject, ) { const tankModelDefinition = useTankModelDefinition(); - const duelStore = Duel.useStore(); useEffect(() => { const trackModelDefinition = tankModelDefinition.tracks[track.id]; diff --git a/packages/website/src/pages/[...locale]/compare/_index.tsx b/packages/website/src/pages/[...locale]/compare/_index.tsx index be223f84a..d4564a70e 100644 --- a/packages/website/src/pages/[...locale]/compare/_index.tsx +++ b/packages/website/src/pages/[...locale]/compare/_index.tsx @@ -114,11 +114,7 @@ function Content() { if (tank === undefined) return; - const model = modelDefinitions.models[tank.id]; - - draft.members.push( - tankToCompareMember(tank, model, provisionDefinitions), - ); + draft.members.push(tankToCompareMember(tank, provisionDefinitions)); }); }); }, []); diff --git a/packages/website/src/pages/[...locale]/index.astro b/packages/website/src/pages/[...locale]/index.astro index 77a552c0c..833ec1687 100644 --- a/packages/website/src/pages/[...locale]/index.astro +++ b/packages/website/src/pages/[...locale]/index.astro @@ -25,7 +25,6 @@ import { getStrings } from '../../core/i18n/getStrings'; import BaseLayout from '../../layouts/BaseLayout.astro'; const PUBLIC_ASSET_BRANCH = assertSecret(import.meta.env.PUBLIC_BRANCH); -const MODE = assertSecret(import.meta.env.MODE); const locale = Astro.params.locale ?? DEFAULT_LOCALE; const strings = getStrings(Astro.params.locale); diff --git a/packages/website/src/stores/duel/index.ts b/packages/website/src/stores/duel/index.ts index 18774ac89..35d131b34 100644 --- a/packages/website/src/stores/duel/index.ts +++ b/packages/website/src/stores/duel/index.ts @@ -55,7 +55,7 @@ export const Duel = createContextualStore( model: ModelDefinition; provisionDefinitions: ProvisionDefinitions; }) => { - const protagonist = tankToDuelMember(tank, model, provisionDefinitions); + const protagonist = tankToDuelMember(tank, provisionDefinitions); return create()( subscribeWithSelector(() => ({