
Код AS3:
removeChild(_block);
for (k = 0; k < _block.numBricks; k++) {
bricks.push(_block.getChildAt(k));
_brick = new Brick();
addChild(_brick);
_brick.x = bricks[l].x;
_brick.y = bricks[l].y;
Вот что сделала на падение блока - переместила в общий спрайт.
Но!
При попытке удалить элемент из массива выдает ту же ошибку. Если массив не менять, удаляет первый брик как надо, но потом, соответственно, выдает ошибку о не соответствии индексов (в массиве элемент есть, а потомка я удалила).
Добавлено через 13 минут

Код AS3:
function DeleteLine(y:int) : void {
for (var i: int = 0; i<l; i++) {
if (bricks[i].y == y) {
var deleteMovie:Brick = bricks[i];
trace(deleteMovie.y);
deleteMovie.parent.removeChild(deleteMovie);
deleteMovie = null;
bricks[i] = [];
}
}
}
Пробовала такой вариант, l - количество бриков. Ошибки не выдает, но ничего не удаляет.
Добавлено через 2 часа 17 минут
Функция shift у массива работает, но без аргумента

Код AS3:
function DeleteLine(y:int) : void {
for each(var item:Brick in bricks) {
//item.y += 20;
trace(bricks);
if( item.y > y - 1 ) {
var deleteMovie:Brick = bricks.shift();
deleteMovie.parent.removeChild(deleteMovie);
deleteMovie = null;
}
}
}
Такая конструкция удаляет первые брики, потом выдает ошибку. Помогите, пожалуйста, я уже все просмотрела, а решения найти не могу