Advertisement
Guest User

Sprite.java

a guest
Sep 8th, 2013
38
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.00 KB | None | 0 0
  1. package main;
  2.  
  3. import java.awt.image.BufferedImage;
  4. import java.io.IOException;
  5.  
  6. import javax.imageio.ImageIO;
  7.  
  8. public class Sprite {
  9.  
  10. public final int SIZE;
  11. private int x, y;
  12. public int[] pixels;
  13. private int width, height;
  14. private SpriteSheet sheet;
  15.  
  16. //World Tiles:
  17. public static Sprite grass = new Sprite (16, 0, 0, SpriteSheet.tiles);
  18. public static Sprite rock = new Sprite (16, 1, 0, SpriteSheet.tiles);
  19. public static Sprite flower = new Sprite (16, 2, 0, SpriteSheet.tiles);
  20. public static Sprite woodFloor = new Sprite (16, 3, 0, SpriteSheet.tiles);
  21. public static Sprite water = new Sprite (16, 4, 0, SpriteSheet.tiles);
  22. public static Sprite rockWall = new Sprite (16, 5, 0, SpriteSheet.tiles);
  23. public static Sprite voidSprite = new Sprite (16, 0xffffff);
  24. public static Sprite rockPath = new Sprite (16, 9, 0, SpriteSheet.tiles);
  25.  
  26. //Projectiles:
  27. public static Sprite fireBall = new Sprite (16, 0, 1, SpriteSheet.tiles);
  28.  
  29. //Player:
  30. public static Sprite player_down = new Sprite(32, 0, 1, SpriteSheet.tiles);
  31. public static Sprite player_right = new Sprite(32, 1, 1, SpriteSheet.tiles);
  32. public static Sprite player_up = new Sprite(32, 2, 1, SpriteSheet.tiles);
  33. public static Sprite player_left = new Sprite(32, 3, 1, SpriteSheet.tiles);
  34. public static Sprite player_down_1 = new Sprite(32, 0, 2, SpriteSheet.tiles);
  35. public static Sprite player_down_2 = new Sprite(32, 0, 3, SpriteSheet.tiles);
  36. public static Sprite player_right_1 = new Sprite(32, 1, 2, SpriteSheet.tiles);
  37. public static Sprite player_right_2 = new Sprite(32, 1, 3, SpriteSheet.tiles);
  38. public static Sprite player_right_3 = new Sprite(32, 1, 4, SpriteSheet.tiles);
  39. public static Sprite player_up_1 = new Sprite(32, 2, 2, SpriteSheet.tiles);
  40. public static Sprite player_up_2 = new Sprite(32, 2, 3, SpriteSheet.tiles);
  41. public static Sprite player_left_1 = new Sprite(32, 3, 2, SpriteSheet.tiles);
  42. public static Sprite player_left_2 = new Sprite(32, 3, 3, SpriteSheet.tiles);
  43.  
  44. //Particles
  45. public static Sprite particle_normal = new Sprite(3, 0xffffff);
  46.  
  47. public Sprite(int size, int x, int y, SpriteSheet sheet) {
  48. SIZE = size;
  49. this.width = size;
  50. this.height = size;
  51. pixels = new int [SIZE * SIZE];
  52. this.x = x * size;
  53. this.y = y * size;
  54. this.sheet = sheet;
  55. load();
  56.  
  57. }
  58.  
  59. public Sprite(int width, int height, int colour) {
  60. SIZE = -1;
  61. this.width = width;
  62. this.height = height;
  63. pixels = new int[width * height];
  64. setColour(colour);
  65. }
  66.  
  67. public Sprite(int size, int colour) {
  68. SIZE = size;
  69. pixels = new int[SIZE * SIZE];
  70. setColour(colour);
  71. }
  72.  
  73. private void setColour(int colour) {
  74. for (int i = 0; i < width * height; i++) {
  75. pixels[i] = colour;
  76. }
  77. }
  78.  
  79. public int getWidth() {
  80. return width;
  81. }
  82.  
  83. public int getHeight() {
  84. return height;
  85. }
  86.  
  87. private void load() {
  88. for (int y = 0; y < SIZE; y++) {
  89. for (int x = 0; x < SIZE; x++) {
  90. pixels[x + y * SIZE] = sheet.pixels[(x + this.x) + (y + this.y) * sheet.SIZE];
  91.  
  92. }
  93. }
  94. }
  95. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement