Advertisement
raiyanshadow

Obj.class

Mar 31st, 2019
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.82 KB | None | 0 0
  1. package br.ol.spaceinvaders.core;
  2.  
  3. import java.awt.Graphics2D;
  4. import java.awt.geom.Rectangle2D;
  5. import java.awt.image.BufferedImage;
  6. import java.awt.image.ImageObserver;
  7. import java.io.IOException;
  8. import java.util.logging.Level;
  9. import java.util.logging.Logger;
  10. import javax.imageio.ImageIO;
  11.  
  12. public abstract class Obj<T extends Game> {
  13.     public T game;
  14.     public boolean visible;
  15.     public double x;
  16.     public double y;
  17.     public Rectangle2D collider;
  18.     public BufferedImage frame;
  19.     public BufferedImage[] frames;
  20.  
  21.     public Obj(T game) {
  22.         this.game = game;
  23.     }
  24.  
  25.     public void init() {
  26.     }
  27.  
  28.     public void update() {
  29.     }
  30.  
  31.     public void draw(Graphics2D g) {
  32.         if (this.visible) {
  33.             if (this.frame != null) {
  34.                 g.drawImage(this.frame, (int)this.x, (int)this.y, (ImageObserver)null);
  35.             }
  36.  
  37.             if (this.collider != null) {
  38.                 this.collider.setRect(this.x, this.y, this.collider.getWidth(), this.collider.getHeight());
  39.             }
  40.  
  41.         }
  42.     }
  43.  
  44.     public void updateCollider() {
  45.         if (this.collider != null) {
  46.             this.collider.setRect(this.x, this.y, this.collider.getWidth(), this.collider.getHeight());
  47.         }
  48.  
  49.     }
  50.  
  51.     public void loadFrames(String... res) {
  52.         this.frames = new BufferedImage[res.length];
  53.  
  54.         for(int i = 0; i < this.frames.length; ++i) {
  55.             try {
  56.                 this.frames[i] = ImageIO.read(this.getClass().getResourceAsStream("/res/" + res[i]));
  57.             } catch (IOException var4) {
  58.                 Logger.getLogger(Obj.class.getName()).log(Level.SEVERE, (String)null, var4);
  59.                 System.exit(-1);
  60.             }
  61.         }
  62.  
  63.         this.frame = this.frames[0];
  64.     }
  65.  
  66.     static {
  67.         BitmapFontRenderer11.a();
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement