asteroids-2d-game/src/Sprites/Astroid.java
2015-12-21 19:54:44 +02:00

39 lines
1.1 KiB
Java

package Sprites;
import javax.swing.*;
import java.awt.*;
import java.util.Random;
/**
* Created by sagi on 12/18/15.
*/
public class Astroid extends Sprite {
private double selfAngle, rotationSpeed;
private Random r;
public Astroid(int x, int y, int w, int h, int acc, String imgName, double angle, int size) {
super(x, y, w, h, acc, imgName, angle, size);
selfAngle = 0;
r= new Random();
rotationSpeed = ((r.nextDouble()*10) % 3) + 0.01;
}
@Override
public void update() {
locX += acceleration * Math.cos(Math.toRadians(angle));
locY -= acceleration * (-1 * Math.sin(Math.toRadians(angle)));
outOfScreeFix();
selfAngle+=rotationSpeed;
}
@Override
public void drawSprite(Graphics g, JPanel p) {
Graphics2D g2d = (Graphics2D)g;
g2d.rotate(Math.toRadians(selfAngle), locX + (bImage.getWidth()/2), locY + (bImage.getHeight()/2));
g2d.drawImage(bImage, (int)locX, (int)locY, p);
g2d.rotate(-1 * Math.toRadians(selfAngle), locX + (bImage.getWidth()/2), locY + (bImage.getHeight()/2));
}
}