public class Bullet {
// Поля класса (используем тип double для более точного расчёта)
private double x;
private double y;
private double size;
private double speed;
private double angle;
private double dx;
private double dy;
// Конструктор
public Bullet(double x, double y, double targetX, double targetY, double size) {
this.x = x;
this.y = y;
this.size = size;
this.speed = 15; // можно при необходимости изменить скорость
// Расчёт угла направления от центра пули к целевой точке
this.angle = Math.atan2(targetY - (this.y + this.size / 2),
targetX - (this.x + this.size / 2));
// Расчёт смещений по осям x и y для движения
this.dx = Math.cos(this.angle) * this.speed;
this.dy = Math.sin(this.angle) * this.speed;
}
// Метод для перемещения пули
public void move() {
this.x += this.dx;
this.y += this.dy;
}
// Геттеры для получения координат пули (если нужно использовать извне)
public double getX() {
return x;
}
public double getY() {
return y;
}
public double getSize() {
return size;
}
// Можно добавить метод для отрисовки пули, например, если используете библиотеки для графики
// public void draw(Graphics g) {
// g.fillOval((int)x, (int)y, (int)size, (int)size);
// }
}