Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main;
- import java.awt.image.BufferedImage;
- import java.io.IOException;
- import javax.imageio.ImageIO;
- public class Sprite {
- public final int SIZE;
- private int x, y;
- public int[] pixels;
- private int width, height;
- private SpriteSheet sheet;
- //World Tiles:
- public static Sprite grass = new Sprite (16, 0, 0, SpriteSheet.tiles);
- public static Sprite rock = new Sprite (16, 1, 0, SpriteSheet.tiles);
- public static Sprite flower = new Sprite (16, 2, 0, SpriteSheet.tiles);
- public static Sprite woodFloor = new Sprite (16, 3, 0, SpriteSheet.tiles);
- public static Sprite water = new Sprite (16, 4, 0, SpriteSheet.tiles);
- public static Sprite rockWall = new Sprite (16, 5, 0, SpriteSheet.tiles);
- public static Sprite voidSprite = new Sprite (16, 0xffffff);
- public static Sprite rockPath = new Sprite (16, 9, 0, SpriteSheet.tiles);
- //Projectiles:
- public static Sprite fireBall = new Sprite (16, 0, 1, SpriteSheet.tiles);
- //Player:
- public static Sprite player_down = new Sprite(32, 0, 1, SpriteSheet.tiles);
- public static Sprite player_right = new Sprite(32, 1, 1, SpriteSheet.tiles);
- public static Sprite player_up = new Sprite(32, 2, 1, SpriteSheet.tiles);
- public static Sprite player_left = new Sprite(32, 3, 1, SpriteSheet.tiles);
- public static Sprite player_down_1 = new Sprite(32, 0, 2, SpriteSheet.tiles);
- public static Sprite player_down_2 = new Sprite(32, 0, 3, SpriteSheet.tiles);
- public static Sprite player_right_1 = new Sprite(32, 1, 2, SpriteSheet.tiles);
- public static Sprite player_right_2 = new Sprite(32, 1, 3, SpriteSheet.tiles);
- public static Sprite player_right_3 = new Sprite(32, 1, 4, SpriteSheet.tiles);
- public static Sprite player_up_1 = new Sprite(32, 2, 2, SpriteSheet.tiles);
- public static Sprite player_up_2 = new Sprite(32, 2, 3, SpriteSheet.tiles);
- public static Sprite player_left_1 = new Sprite(32, 3, 2, SpriteSheet.tiles);
- public static Sprite player_left_2 = new Sprite(32, 3, 3, SpriteSheet.tiles);
- //Particles
- public static Sprite particle_normal = new Sprite(3, 0xffffff);
- public Sprite(int size, int x, int y, SpriteSheet sheet) {
- SIZE = size;
- this.width = size;
- this.height = size;
- pixels = new int [SIZE * SIZE];
- this.x = x * size;
- this.y = y * size;
- this.sheet = sheet;
- load();
- }
- public Sprite(int width, int height, int colour) {
- SIZE = -1;
- this.width = width;
- this.height = height;
- pixels = new int[width * height];
- setColour(colour);
- }
- public Sprite(int size, int colour) {
- SIZE = size;
- pixels = new int[SIZE * SIZE];
- setColour(colour);
- }
- private void setColour(int colour) {
- for (int i = 0; i < width * height; i++) {
- pixels[i] = colour;
- }
- }
- public int getWidth() {
- return width;
- }
- public int getHeight() {
- return height;
- }
- 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];
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement