Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2014
281
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.43 KB | None | 0 0
  1. package shooter.entities;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Graphics2D;
  5. import java.awt.geom.AffineTransform;
  6.  
  7. import shooter.gfx.ObjectSpriteManager;
  8. import shooter.input.MouseInputHandler;
  9. import shooter.main.Game;
  10.  
  11. public class Gegner extends GameObject{
  12.  
  13.     private AffineTransform backup, trans;
  14.    
  15.     public Gegner(double x, double y, double health, ObjectSpriteManager om, MouseInputHandler mi, Game game) {
  16.         super(x, y, health, om, mi, game);
  17.         this.health = health;
  18.     }
  19.    
  20.     public void tick() {
  21.         x += velX;
  22.         y += velY;
  23.         col.setFrame(x, y, ObjectSpriteManager.SIZE, ObjectSpriteManager.SIZE);
  24.         rotation();
  25.     }
  26.    
  27.     private void rotation() {
  28.         double deltaX = x - game.getHandler().getPlayer().getX();
  29.         double deltaY = y - game.getHandler().getPlayer().getY();
  30.         rotation = Math.toDegrees(Math.atan2(deltaY, deltaX)); 
  31.     }
  32.    
  33.     public void render(Graphics2D g2d) {
  34.         backup = g2d.getTransform();
  35.         trans = new AffineTransform();
  36.         // Apply rotation
  37.         trans.rotate(Math.toRadians(rotation + 270), x + ObjectSpriteManager.SIZE / 2, y + ObjectSpriteManager.SIZE / 2);
  38.  
  39.         g2d.transform(trans);
  40.         g2d.drawImage(om.player, (int) x, (int) y, ObjectSpriteManager.SIZE, ObjectSpriteManager.SIZE, null);
  41.         // Restore previous transform
  42.         g2d.setTransform(backup);
  43.        
  44.         // show collision boxes
  45.         g2d.setColor(Color.RED);
  46.         g2d.draw(col);
  47.         g2d.draw(col.getBounds2D());
  48.         g2d.setColor(Color.WHITE);
  49.     }
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement