diff --git a/megamek/src/megamek/utilities/BoardsTagger.java b/megamek/src/megamek/utilities/BoardsTagger.java index 457b37c696a..9c7acb2ff81 100644 --- a/megamek/src/megamek/utilities/BoardsTagger.java +++ b/megamek/src/megamek/utilities/BoardsTagger.java @@ -92,7 +92,8 @@ public enum Tags { TAG_ARMOREDBUILDING("ArmoredBuilding"), TAG_IMPASSABLE("Impassable"), TAG_ELEVATOR("Elevator"), - TAG_MULTIPLETHEME("MultipleTheme"); + TAG_MULTIPLETHEME("MultipleTheme"), + TAG_UNDERWATERBRIDGE("UnderWaterBridge"); private String tagName; private static final Map internalTagMap; @@ -233,6 +234,7 @@ private static void tagBoard(File boardFile) { int impassable = 0; int elevator = 0; int multipleTheme = 0; + int underWaterBridge = 0; for (int x = 0; x < board.getWidth(); x++) { for (int y = 0; y < board.getHeight(); y++) { @@ -291,6 +293,11 @@ private static void tagBoard(File boardFile) { } impassable += hex.containsTerrain(IMPASSABLE) ? 1 : 0; elevator += hex.containsTerrain(ELEVATOR) ? 1 : 0; + if (hex.containsTerrain(WATER) + && hex.containsTerrain(BRIDGE) + && (hex.terrainLevel(BRIDGE_ELEV) < hex.terrainLevel(WATER))) { + underWaterBridge++; + } } } @@ -359,6 +366,7 @@ private static void tagBoard(File boardFile) { multipleTheme += snowTheme > 0 ? 1 : 0; multipleTheme += volcanic > 0 ? 1 : 0; matchingTags.put(Tags.TAG_MULTIPLETHEME, multipleTheme > 1); + matchingTags.put(Tags.TAG_UNDERWATERBRIDGE, underWaterBridge > 0); // Remove (see below) any auto tags that might be present so that auto tags that // no longer apply