tools.ts•1.12 kB
import type { Tank, Gun, Turret, Tracks } from '../data/types.js';
export function getTopTurret(tank: Tank): Turret | undefined {
if (!tank.turrets || tank.turrets.length === 0) return undefined;
return tank.turrets[tank.turrets.length - 1];
}
export function getTopGun(turret: Turret | undefined): Gun | undefined {
if (!turret?.guns || turret.guns.length === 0) return undefined;
return turret.guns[turret.guns.length - 1];
}
export function getTankTopGun(tank: Tank): Gun | undefined {
const topTurret = getTopTurret(tank);
return getTopGun(topTurret);
}
export function getTopTracks(tank: Tank): Tracks | undefined {
if (!tank.tracks || tank.tracks.length === 0) return undefined;
return tank.tracks[tank.tracks.length - 1];
}
export function formatGunSummary(gun: Gun | undefined) {
if (!gun) return null;
return {
name: gun.name,
damage: gun.damage,
penetration: gun.penetration,
dpm: gun.dpm,
reload: gun.reloadTime,
accuracy: gun.accuracy,
aimTime: gun.aimTime,
depression: gun.depression,
gunType: gun.gunType,
clipSize: gun.clipSize,
};
}