mirror of
https://github.com/openfrontio/OpenFrontIO.git
synced 2026-06-21 11:40:42 +00:00
27 lines
645 B
TypeScript
27 lines
645 B
TypeScript
export function pruneInactiveTrails<TNuke, TTransport>(
|
|
nukeTrails: Map<number, TNuke>,
|
|
transportTrails: Map<number, TTransport>,
|
|
isActive: (unitId: number) => boolean,
|
|
): { removedNukes: number; removedTransport: number } {
|
|
let removedNukes = 0;
|
|
let removedTransport = 0;
|
|
|
|
for (const unitId of nukeTrails.keys()) {
|
|
if (isActive(unitId)) {
|
|
continue;
|
|
}
|
|
nukeTrails.delete(unitId);
|
|
removedNukes++;
|
|
}
|
|
|
|
for (const unitId of transportTrails.keys()) {
|
|
if (isActive(unitId)) {
|
|
continue;
|
|
}
|
|
transportTrails.delete(unitId);
|
|
removedTransport++;
|
|
}
|
|
|
|
return { removedNukes, removedTransport };
|
|
}
|