merge: align NPC AI decisions with legacy

This commit is contained in:
2026-07-25 11:24:14 +00:00
19 changed files with 1233 additions and 287 deletions
@@ -403,7 +403,11 @@ export class ActionDefinition<
const defenderNation = defenderCity.nationId > 0 ? (nationMap.get(defenderCity.nationId) ?? null) : null;
const defenderGenerals = generals.filter(
(general) => general.cityId === defenderCity.id && general.nationId === defenderCity.nationId
(general) =>
general.cityId === defenderCity.id &&
general.nationId === defenderCity.nationId &&
general.crew > 0 &&
(unitSet.crewTypes?.some((crewType) => crewType.id === general.crewTypeId) ?? false)
);
const battle = resolveWarBattle({