diff --git a/src/micropolisj/build_tool/Animation.java b/src/micropolisj/build_tool/Animation.java index b3dafa4..86bafef 100644 --- a/src/micropolisj/build_tool/Animation.java +++ b/src/micropolisj/build_tool/Animation.java @@ -1,5 +1,6 @@ package micropolisj.build_tool; +import micropolisj.graphics.TileImage; import java.awt.Graphics2D; import java.io.*; import java.util.*; diff --git a/src/micropolisj/build_tool/MakeTiles.java b/src/micropolisj/build_tool/MakeTiles.java index d6c5588..85d7078 100644 --- a/src/micropolisj/build_tool/MakeTiles.java +++ b/src/micropolisj/build_tool/MakeTiles.java @@ -1,6 +1,7 @@ package micropolisj.build_tool; import micropolisj.engine.TileSpec; +import micropolisj.graphics.TileImage; import java.awt.*; import java.awt.image.BufferedImage; import java.io.*; @@ -11,7 +12,7 @@ import javax.swing.ImageIcon; import javax.xml.stream.*; import static micropolisj.engine.TileSpec.generateTileNames; -import static micropolisj.build_tool.TileImage.*; +import static micropolisj.graphics.TileImage.*; import static micropolisj.XML_Helper.*; public class MakeTiles @@ -78,8 +79,7 @@ public class MakeTiles TileImageSprite prepareTile(Dimension size) { - TileImageSprite s = new TileImageSprite(); - s.source = this; + TileImageSprite s = new TileImageSprite(this); s.offsetY = this.nextOffsetY + size.height - TILE_SIZE; this.nextOffsetY += size.height; this.maxWidth = Math.max(maxWidth, size.width); @@ -326,8 +326,7 @@ public class MakeTiles TileImage img = loadAnimation(parts[0]); if (parts.length >= 2) { - TileImageSprite sprite = new TileImageSprite(); - sprite.source = img; + TileImageSprite sprite = new TileImageSprite(img); String offsetInfo = parts[1]; parts = offsetInfo.split(","); @@ -531,8 +530,7 @@ public class MakeTiles if (tmp != null) { String [] coords = tmp.split(","); if (coords.length == 2) { - TileImageSprite sprite = new TileImageSprite(); - sprite.source = img; + TileImageSprite sprite = new TileImageSprite(img); sprite.offsetX = Integer.parseInt(coords[0]); sprite.offsetY = Integer.parseInt(coords[1]); img = sprite; diff --git a/src/micropolisj/build_tool/TileImage.java b/src/micropolisj/graphics/TileImage.java similarity index 79% rename from src/micropolisj/build_tool/TileImage.java rename to src/micropolisj/graphics/TileImage.java index 4831c10..d437bab 100644 --- a/src/micropolisj/build_tool/TileImage.java +++ b/src/micropolisj/graphics/TileImage.java @@ -1,4 +1,4 @@ -package micropolisj.build_tool; +package micropolisj.graphics; import java.awt.*; import java.awt.image.BufferedImage; @@ -20,10 +20,10 @@ public abstract class TileImage public abstract int getFrameEndTime(int frameTime); - static class TileImageLayer extends TileImage + public static class TileImageLayer extends TileImage { - TileImageLayer below; - TileImage above; + public TileImageLayer below; + public TileImage above; @Override public void drawWithTimeTo(Graphics2D gr, int time, int destX, int destY, int srcX, int srcY) @@ -56,11 +56,16 @@ public abstract class TileImage } } - static class TileImageSprite extends TileImage + public static class TileImageSprite extends TileImage { - TileImage source; - int offsetX; - int offsetY; + public final TileImage source; + public int offsetX; + public int offsetY; + + public TileImageSprite(TileImage source) + { + this.source = source; + } @Override public void drawWithTimeTo(Graphics2D gr, int time, int destX, int destY, int srcX, int srcY) @@ -74,13 +79,14 @@ public abstract class TileImage } } - static class SourceImage extends TileImage + public static class SourceImage extends TileImage { - Image image; - int basisSize; - int targetSize; + public final Image image; + public final int basisSize; + public final int targetSize; - SourceImage(Image image, int basisSize, int targetSize) { + public SourceImage(Image image, int basisSize, int targetSize) + { this.image = image; this.basisSize = basisSize; this.targetSize = targetSize;