diff --git a/build.xml b/build.xml
index 37e7609..dd3ad6c 100644
--- a/build.xml
+++ b/build.xml
@@ -50,6 +50,12 @@
+
+
+
+
+
diff --git a/src/micropolisj/gui/MainWindow.java b/src/micropolisj/gui/MainWindow.java
index 7ad7f42..2d990bf 100644
--- a/src/micropolisj/gui/MainWindow.java
+++ b/src/micropolisj/gui/MainWindow.java
@@ -996,7 +996,7 @@ public class MainWindow extends JFrame
int oldZoom = drawingArea.getTileSize();
int newZoom = zoomOut ? (oldZoom / 2) : (oldZoom * 2);
- if (newZoom < 16) { newZoom = 16; }
+ if (newZoom < 8) { newZoom = 8; }
if (newZoom > 32) { newZoom = 32; }
if (oldZoom != newZoom)
diff --git a/src/micropolisj/gui/TileImages.java b/src/micropolisj/gui/TileImages.java
index 0fe9707..b8630ee 100644
--- a/src/micropolisj/gui/TileImages.java
+++ b/src/micropolisj/gui/TileImages.java
@@ -29,17 +29,22 @@ public class TileImages
this.TILE_WIDTH = size;
this.TILE_HEIGHT = size;
- //if (size != 16) {
- // this.images = loadTileImages("/tiles_"+size+"x"+size+".png", size);
- //}
- //else {
+ if (size != 16) {
+ this.images = loadTileImages("/tiles_"+size+"x"+size+".png", size);
+ }
+ else {
this.images = loadTileImages("/tiles.png", 16);
- //}
+ }
}
+ static Map savedInstances = new HashMap();
+
public static TileImages getInstance(int size)
{
- return new TileImages(size);
+ if (!savedInstances.containsKey(size)) {
+ savedInstances.put(size, new TileImages(size));
+ }
+ return savedInstances.get(size);
}
public Image getTileImage(int cell)