From cf71b38259f2bf9f35fc0bc4611b76d4247a02b8 Mon Sep 17 00:00:00 2001 From: Mike Primm Date: Wed, 1 Jun 2011 19:08:53 -0500 Subject: [PATCH] Fix tile coord calculation for tile hash on kzed render - too sparse because not divided by tile dimensions (inconsistent with flat :<) --- .../java/org/dynmap/kzedmap/DefaultTileRenderer.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java b/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java index eb62f8ba..89d9a7fa 100644 --- a/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java +++ b/src/main/java/org/dynmap/kzedmap/DefaultTileRenderer.java @@ -231,7 +231,9 @@ public class DefaultTileRenderer implements MapTileRenderer { TileHashManager hashman = MapManager.mapman.hashman; long crc = hashman.calculateTileHash(img.argb_buf); boolean updated_fname = false; - if((!fname.exists()) || (crc != hashman.getImageHashCode(mtile.getKey(), null, mtile.px, mtile.py))) { + int tx = mtile.px/KzedMap.tileWidth; + int ty = mtile.py/KzedMap.tileHeight; + if((!fname.exists()) || (crc != hashman.getImageHashCode(mtile.getKey(), null, tx, ty))) { Debug.debug("saving image " + fname.getPath()); try { ImageIO.write(img.buf_img, "png", fname); @@ -241,7 +243,7 @@ public class DefaultTileRenderer implements MapTileRenderer { Debug.error("Failed to save image (NullPointerException): " + fname.getPath(), e); } MapManager.mapman.pushUpdate(mtile.getWorld(), new Client.Tile(mtile.getFilename())); - hashman.updateHashCode(mtile.getKey(), null, mtile.px, mtile.py, crc); + hashman.updateHashCode(mtile.getKey(), null, tx, ty, crc); updated_fname = true; } KzedMap.freeBufferedImage(img); @@ -253,7 +255,7 @@ public class DefaultTileRenderer implements MapTileRenderer { File dfname = new File(fname.getParent(), mtile.getDayFilename()); if(img_day != null) { crc = hashman.calculateTileHash(img.argb_buf); - if((!dfname.exists()) || (crc != hashman.getImageHashCode(mtile.getKey(), "day", mtile.px, mtile.py))) { + if((!dfname.exists()) || (crc != hashman.getImageHashCode(mtile.getKey(), "day", tx, ty))) { Debug.debug("saving image " + dfname.getPath()); try { ImageIO.write(img_day.buf_img, "png", dfname); @@ -263,7 +265,7 @@ public class DefaultTileRenderer implements MapTileRenderer { Debug.error("Failed to save image (NullPointerException): " + dfname.getPath(), e); } MapManager.mapman.pushUpdate(mtile.getWorld(), new Client.Tile(mtile.getDayFilename())); - hashman.updateHashCode(mtile.getKey(), "day", mtile.px, mtile.py, crc); + hashman.updateHashCode(mtile.getKey(), "day", tx, ty, crc); updated_dfname = true; } KzedMap.freeBufferedImage(img_day);