diff --git a/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Modules.tsx b/packages/website/src/components/Tankopedia/CharacteristicsSection/components/Modules.tsx index 63a4275fb..219412b84 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 + 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