From 9d4e1a66a1ae70453938fe081e4931d09d2f0402 Mon Sep 17 00:00:00 2001 From: Mark Greene Date: Sat, 27 Dec 2025 15:35:16 +1300 Subject: [PATCH] Fix Turret chnage not affecting DPM --- .../components/Modules.tsx | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Modules.tsx b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Modules.tsx index 63a4275fb..c7fc9837f 100644 --- a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Modules.tsx +++ b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Modules.tsx @@ -176,11 +176,17 @@ export function Modules() { (turret) => turret.id === unlock.id )!; - if ( - !draft.protagonist.turret.guns.some( - (gun) => gun.id === draft.protagonist.gun.id - ) - ) { + // Check if current gun exists in new turret + const gunInNewTurret = draft.protagonist.turret.guns.find( + (gun) => gun.id === draft.protagonist.gun.id + ); + + if (gunInNewTurret) { + // Gun exists - get it FROM this turret (this fixes the bug!) + draft.protagonist.gun = gunInNewTurret; + draft.protagonist.shell = gunInNewTurret.shells[0]; + } else { + // Gun doesn't exist - select top gun from new turret draft.protagonist.gun = draft.protagonist.turret.guns.at(-1)!; draft.protagonist.shell = draft.protagonist.gun.shells[0]; } @@ -422,4 +428,4 @@ export function Modules() { ); -} +} \ No newline at end of file