Ну я даже не знаю... в общем, не проходит требование пройтись по циклу и вызвать move. Была, конечно, мысль, что где-то старая ошибка вскрылась - так весь мой код уже давно заменен на шаблонный. Чего мне так ошибки то искать) Методы getAll и moveAll даже созданы были. просто добавил по 3 строчки) Сначала стримы не пропустило, ладно, убрал.. но ничего не изменилось)
package com.javarush.task.task25.task2515;
/**
* Класс для НЛО
*/
public class Ufo extends BaseObject {
//картинка для отрисовки
private static int[][] matrix = {
{0, 0, 0, 0, 0},
{0, 0, 1, 0, 0},
{1, 1, 1, 1, 1},
{0, 1, 1, 1, 0},
{0, 0, 0, 0, 0},
};
public Ufo(double x, double y) {
super(x, y, 3);
}
/**
* Метод рисует свой объект на "канвасе".
*/
@Override
public void draw(Canvas canvas) {
canvas.drawMatrix(x - radius + 1, y - radius + 1, matrix, 'U');
}
/**
* Двигаем себя на один ход в случайном направлении.
*/
@Override
public void move() {
double dx = Math.random() * 2 - 1;
double dy = Math.random() * 2 - 1;
x += dx;
y += dy;
checkBorders(radius, Space.game.getWidth() - radius + 1, radius - 1, Space.game.getHeight() / 2 - 1);
int random10 = (int) (Math.random() * 10);
if (random10 == 0)
fire();
}
/**
* Стреляем.
* Сбрасываем(создаем) одну бомбу прямо под собой.
*/
public void fire() {
Space.game.getBombs().add(new Bomb(x, y + 3));
}
}