Skip to content

Commit

Permalink
aiStrategicBombs_6718 #15
Browse files Browse the repository at this point in the history
ProCombatMoveAi.java
-determineBestBombingAttackForBomber: sameTargetBombers as Set<>; cleansing
  • Loading branch information
frigoref committed Jun 28, 2022
1 parent 6344dd9 commit be6e069
Showing 1 changed file with 8 additions and 10 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1214,20 +1214,18 @@ private void determineBestBombingAttackForBomber(
int neededDamageUnits = 0;
int sameTargetBombersCount = 0;
final List<Unit> existingAttackingBombers = attackMap.get(t).getBombers();
if (!Properties.getDamageFromBombingDoneToUnitsInsteadOfTerritories(data.getProperties())) {
sameTargetBombersCount = existingAttackingBombers.size();
} else {
final List<Unit> sameTargetBombers = new ArrayList<>();
if (Properties.getDamageFromBombingDoneToUnitsInsteadOfTerritories(data.getProperties())) {
final Set<Unit> sameTargetBombers = new HashSet<>();
for (final Unit target : targetUnits) {
neededDamageUnits += target.getHowMuchMoreDamageCanThisUnitTake(t);
for (final Unit existingBomber : existingAttackingBombers) {
if (!sameTargetBombers.contains(existingBomber)
&& Matches.unitIsLegalBombingTargetBy(existingBomber).test(target)) {
sameTargetBombers.add(existingBomber);
}
}
final Predicate<Unit> canBombTarget =
u -> Matches.unitIsLegalBombingTargetBy(u).test(target);
sameTargetBombers.addAll(
CollectionUtils.getMatches(existingAttackingBombers, canBombTarget));
}
sameTargetBombersCount = sameTargetBombers.size();
} else {
sameTargetBombersCount = existingAttackingBombers.size();
}
// assume each other bomber causes a damage of 3
final int remainingDamagePotential =
Expand Down

0 comments on commit be6e069

Please sign in to comment.