public class Sprite {
public final int SIZE;
private int x, y;
private int crap;
public int[] pixels;
private SpriteSheet sheet;
public static Sprite grass = new Sprite(32, 0, 0, SpriteSheet.tiles);
public static Sprite grassRock = new Sprite(32, 1, 0, SpriteSheet.tiles);
public static Sprite grassFlower = new Sprite(32, 2, 0, SpriteSheet.tiles);
public static Sprite voidSprite = new Sprite(32, 0xff00ff);
public Sprite(int size, int x, int y, SpriteSheet sheet){
SIZE = size;
pixels = new int[SIZE*SIZE];
this.x = x * size;
this.y = y * size;
this.sheet = sheet;
load();
}
public Sprite(int size, int color){
SIZE = size;
pixels = new int[SIZE * SIZE];
setColor(color);
}
private void setColor(int color) {
for (int i = 0; i < SIZE*SIZE; i ++){
pixels [i] = color;
}
}
private void load() {
for (int y = 0; y < SIZE; y++){
for (int x = 0; x < SIZE; x++){
pixels[x + y * SIZE] = sheet.pixels[(x + this.x)+(y + this.y) * sheet.SIZE];
}
}
}
}