From d9c5025a35cc712ee380ddd0a6074e76a4e07ced Mon Sep 17 00:00:00 2001 From: Stian Grenborgen Date: Thu, 25 Jul 2024 14:56:34 +0200 Subject: [PATCH] Avoids building the same tile improvement twice when making an AI colony plan. --- .../common/model/production/TileProductionCalculator.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/net/sf/freecol/common/model/production/TileProductionCalculator.java b/src/net/sf/freecol/common/model/production/TileProductionCalculator.java index 690062198a..70957e7889 100644 --- a/src/net/sf/freecol/common/model/production/TileProductionCalculator.java +++ b/src/net/sf/freecol/common/model/production/TileProductionCalculator.java @@ -139,6 +139,9 @@ public MaximumPotentialProduction getMaximumPotentialProduction(GoodsType goodsT .collect(Collectors.toList()); for (TileImprovementType tit : getNormalImprovements(spec, originalTileType)) { + if (!tile.isImprovementTypeAllowed(tit)) { + continue; + } final ProductionInfo newResult = getBasicProductionInfo(tile, turn, new WorkerAssignment(unitType, originalProductionType), colonyCenterTile, List.of(tit)); final int amount = productionOfGoodsType(goodsType, newResult); if (amount > currentMaximumPotentialProduction) {