Merge remote branch 'upstream/master'

This commit is contained in:
Mike Primm 2011-06-15 01:40:42 -05:00
commit 0b7bd72231
24 changed files with 173 additions and 49 deletions

View file

@ -189,7 +189,7 @@ public class DefaultTileRenderer implements MapTileRenderer {
}
/* Hand encoding and writing file off to MapManager */
KzedZoomedMapTile zmtile = new KzedZoomedMapTile(tile.getWorld(),
KzedZoomedMapTile zmtile = new KzedZoomedMapTile(tile.getDynmapWorld(),
(KzedMap) tile.getMap(), tile);
File zoomFile = MapManager.mapman.getTileFile(zmtile);
@ -240,6 +240,8 @@ public class DefaultTileRenderer implements MapTileRenderer {
int ty = mtile.py/KzedMap.tileHeight;
if((!fname.exists()) || (crc != hashman.getImageHashCode(mtile.getKey(), null, tx, ty))) {
Debug.debug("saving image " + fname.getPath());
if(!fname.getParentFile().exists())
fname.getParentFile().mkdirs();
try {
ImageIO.write(img.buf_img, "png", fname);
} catch (IOException e) {
@ -264,6 +266,8 @@ public class DefaultTileRenderer implements MapTileRenderer {
crc = hashman.calculateTileHash(img.argb_buf);
if((!dfname.exists()) || (crc != hashman.getImageHashCode(mtile.getKey(), "day", tx, ty))) {
Debug.debug("saving image " + dfname.getPath());
if(!dfname.getParentFile().exists())
dfname.getParentFile().mkdirs();
try {
ImageIO.write(img_day.buf_img, "png", dfname);
} catch (IOException e) {
@ -335,6 +339,8 @@ public class DefaultTileRenderer implements MapTileRenderer {
zIm.setRGB(ox, oy, KzedMap.tileWidth/2, KzedMap.tileHeight/2, zimg.argb_buf, 0, KzedMap.tileWidth/2);
/* save zoom-out tile */
if(!zoomFile.getParentFile().exists())
zoomFile.getParentFile().mkdirs();
try {
ImageIO.write(zIm, "png", zoomFile);

View file

@ -1,5 +1,6 @@
package org.dynmap.kzedmap;
import org.dynmap.DynmapWorld;
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.ArrayList;
@ -10,10 +11,10 @@ import java.util.List;
import java.util.logging.Logger;
import org.bukkit.Location;
import org.bukkit.World;
import org.dynmap.ConfigurationNode;
import org.dynmap.DynmapChunk;
import org.dynmap.Log;
import org.dynmap.MapManager;
import org.dynmap.MapTile;
import org.dynmap.MapType;
import org.dynmap.utils.MapChunkCache;
@ -70,7 +71,7 @@ public class KzedMap extends MapType {
@Override
public MapTile[] getTiles(Location l) {
World world = l.getWorld();
DynmapWorld world = MapManager.mapman.getWorld(l.getWorld().getName());
int x = l.getBlockX();
int y = l.getBlockY();
@ -121,7 +122,7 @@ public class KzedMap extends MapType {
public MapTile[] getAdjecentTiles(MapTile tile) {
if (tile instanceof KzedMapTile) {
KzedMapTile t = (KzedMapTile) tile;
World world = tile.getWorld();
DynmapWorld world = tile.getDynmapWorld();
MapTileRenderer renderer = t.renderer;
return new MapTile[] {
new KzedMapTile(world, this, renderer, t.px - tileWidth, t.py),
@ -132,7 +133,7 @@ public class KzedMap extends MapType {
return new MapTile[0];
}
public void addTile(ArrayList<MapTile> tiles, World world, int px, int py) {
public void addTile(ArrayList<MapTile> tiles, DynmapWorld world, int px, int py) {
for (int i = 0; i < renderers.length; i++) {
tiles.add(new KzedMapTile(world, this, renderers[i], px, py));
}

View file

@ -1,19 +1,20 @@
package org.dynmap.kzedmap;
import org.dynmap.DynmapWorld;
import java.io.File;
import org.bukkit.World;
import org.dynmap.MapTile;
public class KzedMapTile extends MapTile {
public KzedMap map;
public MapTileRenderer renderer;
public int px, py;
private String fname;
private String fname_day;
// Hack.
public File file = null;
public KzedMapTile(World world, KzedMap map, MapTileRenderer renderer, int px, int py) {
public KzedMapTile(DynmapWorld world, KzedMap map, MapTileRenderer renderer, int px, int py) {
super(world, map);
this.map = map;
this.renderer = renderer;
@ -23,12 +24,24 @@ public class KzedMapTile extends MapTile {
@Override
public String getFilename() {
return renderer.getName() + "_" + px + "_" + py + ".png";
if(fname == null) {
if(world.bigworld)
fname = renderer.getName() + "/" + (px >> 12) + '_' + (py >> 12) + '/' + px + "_" + py + ".png";
else
fname = renderer.getName() + "_" + px + "_" + py + ".png";
}
return fname;
}
@Override
public String getDayFilename() {
return renderer.getName() + "_day_" + px + "_" + py + ".png";
if(fname_day == null) {
if(world.bigworld)
fname_day = renderer.getName() + "_day/" + (px >> 12) + '_' + (py >> 12) + '/' + px + "_" + py + ".png";
else
fname_day = renderer.getName() + "_day_" + px + "_" + py + ".png";
}
return fname_day;
}
@Override

View file

@ -1,22 +1,39 @@
package org.dynmap.kzedmap;
import org.bukkit.World;
import org.dynmap.DynmapWorld;
import org.dynmap.MapTile;
public class KzedZoomedMapTile extends MapTile {
private String fname;
private String fname_day;
@Override
public String getFilename() {
return "z" + originalTile.renderer.getName() + "_" + getTileX() + "_" + getTileY() + ".png";
if(fname == null) {
if(world.bigworld)
fname = "z" + originalTile.renderer.getName() + "/" + (getTileX()>>12) + '_' +
(getTileY() >> 12) + '/' + getTileX() + "_" + getTileY() + ".png";
else
fname = "z" + originalTile.renderer.getName() + "_" + getTileX() + "_" + getTileY() + ".png";
}
return fname;
}
@Override
public String getDayFilename() {
return "z" + originalTile.renderer.getName() + "_day_" + getTileX() + "_" + getTileY() + ".png";
if(fname_day == null) {
if(world.bigworld)
fname_day = "z" + originalTile.renderer.getName() + "_day/" + (getTileX()>>12) + '_' +
(getTileY() >> 12) + '/' + getTileX() + "_" + getTileY() + ".png";
else
fname_day = "z" + originalTile.renderer.getName() + "_day_" + getTileX() + "_" + getTileY() + ".png";
}
return fname_day;
}
public KzedMapTile originalTile;
public KzedZoomedMapTile(World world, KzedMap map, KzedMapTile original) {
public KzedZoomedMapTile(DynmapWorld world, KzedMap map, KzedMapTile original) {
super(world, map);
this.originalTile = original;
}