From ea90ca21b1676f7b4e78204f853ffcac682e8775 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com> Date: Wed, 6 Aug 2025 12:23:57 -0500 Subject: [PATCH] feat: remove shooting range --- .../icons/tankopedia-shooting-range.png | Bin 5282 -> 0 bytes .../HeroSection/components/Options/index.tsx | 31 +----- .../TankSandbox/components/Control.tsx | 103 ++---------------- .../TankSandbox/components/Lighting.tsx | 19 ---- .../components/SceneProps/index.tsx | 48 +------- .../TankSandbox/components/TankModel.tsx | 32 +----- .../components/TransitionSkeleton/index.tsx | 19 +--- .../components/TankSandbox/index.tsx | 8 +- .../website/src/stores/tankopediaEphemeral.ts | 19 ---- .../stores/tankopediaPersistent/constants.ts | 1 - 10 files changed, 18 insertions(+), 262 deletions(-) delete mode 100644 packages/website/public/assets/images/icons/tankopedia-shooting-range.png diff --git a/packages/website/public/assets/images/icons/tankopedia-shooting-range.png b/packages/website/public/assets/images/icons/tankopedia-shooting-range.png deleted file mode 100644 index 0121f01e6c6f8b4ac7f34a0835cf6bd9b65991f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5282 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 diff --git a/packages/website/src/components/Tankopedia/HeroSection/components/Options/index.tsx b/packages/website/src/components/Tankopedia/HeroSection/components/Options/index.tsx index 25f0953e3..961a2cfa5 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/Options/index.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/Options/index.tsx @@ -15,7 +15,6 @@ import { GearIcon, } from '@radix-ui/react-icons'; import { - Box, Button, Checkbox, Dialog, @@ -36,10 +35,7 @@ import { useFullscreenAvailability } from '../../../../../hooks/useFullscreenAva import { useLocale } from '../../../../../hooks/useLocale'; import { App } from '../../../../../stores/app'; import { Duel } from '../../../../../stores/duel'; -import { - ShootingRangeZoom, - TankopediaEphemeral, -} from '../../../../../stores/tankopediaEphemeral'; +import { TankopediaEphemeral } from '../../../../../stores/tankopediaEphemeral'; import { TankopediaPersistent } from '../../../../../stores/tankopediaPersistent'; import { TankopediaDisplay } from '../../../../../stores/tankopediaPersistent/constants'; import type { MaybeSkeletonComponentProps } from '../../../../../types/maybeSkeletonComponentProps'; @@ -97,23 +93,6 @@ export function Options({ thicknessRange, canvas, skeleton }: OptionsProps) { <> {disturbed && } - {display === TankopediaDisplay.ShootingRange && ( - - )} - { draft.disturbed = true; draft.display = Number(value); - draft.shootingRangeZoom = ShootingRangeZoom.Arcade; }); }} > @@ -448,13 +426,6 @@ export function Options({ thicknessRange, canvas, skeleton }: OptionsProps) { - {/* - - - - - - */} {disturbed && ( 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 b0dd50380..fbef51a95 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 @@ -1,7 +1,6 @@ import { I_HAT, J_HAT } from '@blitzkit/core'; import { OrbitControls } from '@react-three/drei'; import { invalidate, useThree } from '@react-three/fiber'; -import { clamp } from 'lodash-es'; import { useEffect, useRef } from 'react'; import { PerspectiveCamera, Vector3 } from 'three'; import { OrbitControls as OrbitControlsClass } from 'three-stdlib'; @@ -11,13 +10,7 @@ import { applyPitchYawLimits } from '../../../../../../core/blitz/applyPitchYawL import { hasEquipment } from '../../../../../../core/blitzkit/hasEquipment'; import { Pose, poseEvent } from '../../../../../../core/blitzkit/pose'; import { Duel } from '../../../../../../stores/duel'; -import { - SHOOTING_RANGE_ZOOM_COEFFICIENTS, - ShootingRangeZoom, - TankopediaEphemeral, -} from '../../../../../../stores/tankopediaEphemeral'; -import { TankopediaDisplay } from '../../../../../../stores/tankopediaPersistent/constants'; -import { aimTarget } from './SceneProps/constants'; +import { TankopediaEphemeral } from '../../../../../../stores/tankopediaEphemeral'; const poseDistances: Record = { [Pose.HullDown]: 15, @@ -254,36 +247,11 @@ export function Controls({ useEffect(() => { let isInitialIteration = true; - function handleKeyDown(event: KeyboardEvent) { - if (display !== TankopediaDisplay.ShootingRange || event.repeat) return; - - if (event.key === 'Shift') { - mutateTankopediaEphemeral((draft) => { - draft.shootingRangeZoom = - draft.shootingRangeZoom === ShootingRangeZoom.Arcade - ? ShootingRangeZoom.Zoom0 - : ShootingRangeZoom.Arcade; - }); - } - } - function handleWheel(event: WheelEvent) { - if (display !== TankopediaDisplay.ShootingRange) return; - event.preventDefault(); - - mutateTankopediaEphemeral((draft) => { - draft.shootingRangeZoom = clamp( - draft.shootingRangeZoom - Math.sign(event.deltaY), - ShootingRangeZoom.Arcade, - ShootingRangeZoom.Zoom2, - ); - }); } function handleScroll(event: Event) { - if (display !== TankopediaDisplay.ShootingRange) return; - event.preventDefault(); } @@ -295,7 +263,6 @@ export function Controls({ poseEvent.on(disturb); canvas.addEventListener('pointerdown', disturb); - window.addEventListener('keydown', handleKeyDown); canvas.addEventListener('wheel', handleWheel); document.body.addEventListener('scroll', handleScroll); @@ -304,80 +271,24 @@ export function Controls({ orbitControls.current.rotateSpeed = 0.25; - if (display === TankopediaDisplay.ShootingRange) { - const { shootingRangeZoom } = tankopediaEphemeralStore.getState(); - - orbitControls.current.enablePan = false; - orbitControls.current.enableZoom = false; - orbitControls.current.rotateSpeed *= - SHOOTING_RANGE_ZOOM_COEFFICIENTS[shootingRangeZoom]; - camera.fov = - ARCADE_MODE_FOV * SHOOTING_RANGE_ZOOM_COEFFICIENTS[shootingRangeZoom]; - - if (shootingRangeZoom === ShootingRangeZoom.Arcade) { - orbitControls.current.target.set(0, gunHeight + 3, 0); - - if (isInitialIteration) { - isInitialIteration = false; - camera.position.set( - 0, - gunHeight + ARCADE_MODE_DISTANCE * Math.sin(ARCADE_MODE_ANGLE), - ARCADE_MODE_DISTANCE * Math.cos(ARCADE_MODE_ANGLE), - ); - } else { - camera.position - .copy(aimTarget) - .sub(orbitControls.current.target) - .normalize() - .multiplyScalar(-ARCADE_MODE_DISTANCE) - .add(orbitControls.current.target); - } - } else { - orbitControls.current.target.copy(shellOrigin); - - camera.position - .copy(aimTarget) - .sub(shellOrigin) - .normalize() - .multiplyScalar(-Number.EPSILON) - .add(shellOrigin); - } - } else { - camera.position.copy(inspectModeInitialPosition); - orbitControls.current.target.set(0, gunHeight / (naked ? 4 : 2), 0); - orbitControls.current.enablePan = true; - orbitControls.current.enableZoom = true; - camera.fov = naked ? 20 : 25; - } + camera.position.copy(inspectModeInitialPosition); + orbitControls.current.target.set(0, gunHeight / (naked ? 4 : 2), 0); + orbitControls.current.enablePan = true; + orbitControls.current.enableZoom = true; + camera.fov = naked ? 20 : 25; camera.updateProjectionMatrix(); } updateCamera(); - const unsubscribeDisplay = tankopediaEphemeralStore.subscribe( - (state) => state.display === TankopediaDisplay.ShootingRange, - () => { - disturb(); - updateCamera(); - }, - ); - - const unsubscribeShootingRangeZoom = tankopediaEphemeralStore.subscribe( - (state) => state.shootingRangeZoom, - updateCamera, - ); - return () => { canvas.removeEventListener('pointerdown', disturb); poseEvent.off(disturb); - unsubscribeDisplay(); - unsubscribeShootingRangeZoom(); - window.removeEventListener('keydown', handleKeyDown); canvas.removeEventListener('wheel', handleWheel); document.body.removeEventListener('scroll', handleScroll); }; - }, [display === TankopediaDisplay.ShootingRange]); + }, []); return ( )} - {display === TankopediaDisplay.ShootingRange && ( - <> - - - {times(LIGHTS_COUNT, (index) => ( - - ))} - - )} ); } diff --git a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/SceneProps/index.tsx b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/SceneProps/index.tsx index bc69ab476..3bb362c82 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/SceneProps/index.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/SceneProps/index.tsx @@ -1,5 +1,4 @@ import { asset, I_HAT, J_HAT } from '@blitzkit/core'; -import { Html } from '@react-three/drei'; import { useFrame, useLoader } from '@react-three/fiber'; import { clamp } from 'lodash-es'; import { useRef } from 'react'; @@ -21,8 +20,6 @@ import { modelTransformEvent } from '../../../../../../../core/blitzkit/modelTra import { tankCharacteristics } from '../../../../../../../core/blitzkit/tankCharacteristics'; import { Duel } from '../../../../../../../stores/duel'; import { TankopediaEphemeral } from '../../../../../../../stores/tankopediaEphemeral'; -import { TankopediaDisplay } from '../../../../../../../stores/tankopediaPersistent/constants'; -import { TargetCircle } from './components/TargetCircle'; import { aimTarget } from './constants'; const [modelDefinitions, equipmentDefinitions, provisionDefinitions] = @@ -121,7 +118,6 @@ export function SceneProps() { useFrame(({ raycaster, camera, clock, gl }) => { if ( - display !== TankopediaDisplay.ShootingRange || !playground.current || !targetCircleWrapper.current || DEBUG_disable || @@ -241,45 +237,9 @@ export function SceneProps() { if (!disturbed) return null; return ( - <> - {display !== TankopediaDisplay.ShootingRange && ( - - - - - )} - - {display === TankopediaDisplay.ShootingRange && ( - <> - - - - - - - - - - - - - - - - - - - - - - - - )} - + + + + ); } 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 f8df92760..696cfd9c1 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 @@ -1,6 +1,6 @@ import { normalizeAngleRad } from '@blitzkit/core'; import { invalidate, useThree, type ThreeEvent } from '@react-three/fiber'; -import { useEffect, useRef } from 'react'; +import { useRef } from 'react'; import { Group, Mesh, MeshStandardMaterial, Vector2 } from 'three'; import { applyPitchYawLimits } from '../../../../../../core/blitz/applyPitchYawLimits'; import { hasEquipment } from '../../../../../../core/blitzkit/hasEquipment'; @@ -10,10 +10,7 @@ import { useModel } from '../../../../../../hooks/useModel'; import { useTankModelDefinition } from '../../../../../../hooks/useTankModelDefinition'; import { useTankTransform } from '../../../../../../hooks/useTankTransform'; import { Duel } from '../../../../../../stores/duel'; -import { - ShootingRangeZoom, - TankopediaEphemeral, -} from '../../../../../../stores/tankopediaEphemeral'; +import { TankopediaEphemeral } from '../../../../../../stores/tankopediaEphemeral'; import { TankopediaDisplay } from '../../../../../../stores/tankopediaPersistent/constants'; import { ModelTankWrapper } from '../../../../../Armor/components/ModelTankWrapper'; @@ -37,18 +34,6 @@ export function TankModel() { const { gltf } = useModel(protagonist.tank.id); const nodes = Object.values(gltf.nodes); - useEffect(() => { - const unsubscribeShootingRangeZoom = tankopediaEphemeralStore.subscribe( - (state) => state.shootingRangeZoom, - (zoom) => { - if (!hullContainer.current) return; - hullContainer.current.visible = zoom === ShootingRangeZoom.Arcade; - }, - ); - - return unsubscribeShootingRangeZoom; - }, []); - useTankTransform(track, turret, turretContainer, gunContainer); return ( @@ -163,12 +148,7 @@ export function TankModel() { function onPointerDown(event: ThreeEvent) { event.stopPropagation(); - if ( - !isTurret || - tankopediaEphemeralStore.getState().display === - TankopediaDisplay.ShootingRange - ) - return; + if (!isTurret) return; position.set(event.clientX, event.clientY); yaw = protagonist.yaw; @@ -277,12 +257,6 @@ export function TankModel() { function onPointerDown(event: ThreeEvent) { event.stopPropagation(); - if ( - tankopediaEphemeralStore.getState().display === - TankopediaDisplay.ShootingRange - ) - return; - mutateTankopediaEphemeral((draft) => { draft.controlsEnabled = false; }); diff --git a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TransitionSkeleton/index.tsx b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TransitionSkeleton/index.tsx index 3416bcd53..66dc54652 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TransitionSkeleton/index.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/components/TransitionSkeleton/index.tsx @@ -1,14 +1,11 @@ -import { useEffect, useRef } from 'react'; +import { useRef } from 'react'; import { Group, ShaderMaterial, UniformsLib, UniformsUtils } from 'three'; import { jsxTree } from '../../../../../../../core/blitzkit/jsxTree'; import { useModel } from '../../../../../../../hooks/useModel'; import { useTankModelDefinition } from '../../../../../../../hooks/useTankModelDefinition'; import { useTankTransform } from '../../../../../../../hooks/useTankTransform'; import { Duel } from '../../../../../../../stores/duel'; -import { - ShootingRangeZoom, - TankopediaEphemeral, -} from '../../../../../../../stores/tankopediaEphemeral'; +import { TankopediaEphemeral } from '../../../../../../../stores/tankopediaEphemeral'; import { ModelTankWrapper } from '../../../../../../Armor/components/ModelTankWrapper'; import fragmentShader from './shaders/fragment.glsl?raw'; import vertexShader from './shaders/vertex.glsl?raw'; @@ -40,18 +37,6 @@ export function TransitionSkeleton() { const nodes = Object.values(gltf.nodes); const revealed = tankopediaEphemeralStore((state) => state.revealed); - useEffect(() => { - const unsubscribeShootingRangeZoom = tankopediaEphemeralStore.subscribe( - (state) => state.shootingRangeZoom, - (zoom) => { - if (!hullContainer.current) return; - hullContainer.current.visible = zoom === ShootingRangeZoom.Arcade; - }, - ); - - return unsubscribeShootingRangeZoom; - }, []); - useTankTransform(track, turret, turretContainer, gunContainer); return ( 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 6ec1684d7..2d22e0d3c 100644 --- a/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/index.tsx +++ b/packages/website/src/components/Tankopedia/HeroSection/components/TankSandbox/index.tsx @@ -207,13 +207,7 @@ export const TankSandbox = forwardRef( = { - [ShootingRangeZoom.Arcade]: 1, - [ShootingRangeZoom.Zoom0]: 1 / 8, - [ShootingRangeZoom.Zoom1]: 1 / 16, - [ShootingRangeZoom.Zoom2]: 1 / 25, -}; - interface TankopediaEphemeral { disturbed: boolean; revealed: boolean; shot?: Shot; - shootingRangeZoom: ShootingRangeZoom; skills: Record; relativeAgainst: TankopediaRelativeAgainst; controlsEnabled: boolean; @@ -133,7 +115,6 @@ export const TankopediaEphemeral = createContextualStore( subscribeWithSelector(() => ({ disturbed: false, revealed: false, - shootingRangeZoom: ShootingRangeZoom.Arcade, relativeAgainst: TankopediaRelativeAgainst.Class, editStatic: false, skills: createDefaultSkills(skillDefinitions), diff --git a/packages/website/src/stores/tankopediaPersistent/constants.ts b/packages/website/src/stores/tankopediaPersistent/constants.ts index 52f03f645..9ec03a40a 100644 --- a/packages/website/src/stores/tankopediaPersistent/constants.ts +++ b/packages/website/src/stores/tankopediaPersistent/constants.ts @@ -38,5 +38,4 @@ export enum TankopediaDisplay { Model, DynamicArmor, StaticArmor, - ShootingRange, }