diff --git a/src/micropolisj/engine/MapScanner.java b/src/micropolisj/engine/MapScanner.java index b126795..5ff4da0 100644 --- a/src/micropolisj/engine/MapScanner.java +++ b/src/micropolisj/engine/MapScanner.java @@ -503,8 +503,7 @@ class MapScanner { for (int x = xpos-1; x <= xpos+1; x++) { - char c = (char)(city.map[y][x] & LOMASK); - if (c >= FLOOD && c < ROADBASE) { + if (isIndestructible2(city.getTile(x,y))) { // radioactive, on fire, or flooded return false; } diff --git a/src/micropolisj/engine/TileConstants.java b/src/micropolisj/engine/TileConstants.java index 25ce7f2..19d34c0 100644 --- a/src/micropolisj/engine/TileConstants.java +++ b/src/micropolisj/engine/TileConstants.java @@ -336,12 +336,20 @@ public class TileConstants return (tmp >= FIREBASE && tmp < ROADBASE); } + /** Used in repairZone(). */ public static boolean isIndestructible(int tile) { int tmp = tile & LOMASK; return tmp >= RUBBLE && tmp < ROADBASE; } + /** Used in zonePlop(). */ + public static boolean isIndestructible2(int tile) + { + int tmp = tile & LOMASK; + return tmp >= FLOOD && tmp < ROADBASE; + } + public static boolean isRadioactive(int tile) { int tmp = tile & LOMASK;