Дополнен 1 год назад
// Constants
var WIDTH = 50;
var HEIGHT = 20;
var eachLine = HEIGHT;
var quantityX = getWidth()/WIDTH;
var DELAY = 50;
var i = 0;
function start() {
setTimer(drawWall, DELAY);
}
function drawBrick(x, y, color){
var brick = new Rectangle(WIDTH, HEIGHT);
brick.setColor(color);
brick.setPosition(x,y);
add(brick);
}
function drawWall(){
drawBrick(0 + WIDTH*i, getHeight() - HEIGHT, Color.randomRed());
if(i == quantityX-1){
HEIGHT += eachLine;
i = -1;
}
println(i);
i++;
if(getHeight() == HEIGHT - eachLine){
stopTimer(drawWall);
}
}
Каждый кирпич должен быть случайного цвета, но все кирпичи в 1 вертикальной линии почему-то одинаковые.
Как это происходит:
Сначала рисуются кирпичи с нижнего левого угла направо, дальше так же, но уже над этими кирпичами. При этом когда сверху появляется новый кирпич, нижний обретает его цвет. Намечается вопрос: Почему?
Надеюсь кто-то поймет и подскажет что тут происходит.
P.S Вроде бы каждый раз создается новый прямоугольник (кирпич) и единственное, что он имеет общее с прямоугольником под ним - это ширина, высота, X координата. При этом цвет ни к одному из этих параметров не привязан.