Я видимо слепой. Уже весь форум прошерстил в поисках ответа почему компилятор не принимает задачу, и все равно не вижу ошибок, сижу в шоке.
И через fori, и через итератор пробовал, и метод setDirection проверял, отчаявшись даже готовые куски кода копировал из чужих решений, но и это не помогло. Это очень простая задача, но валидатор не пускает хоть ты хны.
Помогайте братцы.
package com.javarush.task.task24.task2413;
public class Ball extends BaseObject {
private double speed;
private double direction;
private double dx;
private double dy;
private boolean isFrozen;
public double getSpeed() {
return speed;
}
public double getDirection() {
return direction;
}
public double getDx() {
return dx;
}
public double getDy() {
return dy;
}
public void setDirection(double direction){
this.direction = direction;
double angle = Math.toRadians(direction);
dx = Math.cos(angle) * speed;
dy = -Math.sin(angle) * speed;
}
void checkRebound(int minx, int maxx, int miny, int maxy){
}
public Ball(double x,double y,double speed,double direction){
super(x,y,1);
this.speed=speed;
this.direction=direction;
isFrozen=true;
}
public Ball(double x, double y, double radius) {
super(x, y, radius);
}
@Override
public void draw(Canvas canvas) {
canvas.setPoint(getX(),getY(), 'O');
}
public void start(){
isFrozen=false;
}
@Override
public void move() {
if(!isFrozen){
setX(x+dx);
setY(y+dy);
}
}
}