Сделал в цикле, заполнение массива и добавление на стол:

Код AS3:
myMovieClips.push(mc);
addChild(myMovieClips[n]);
Допустим у нас 50 карт.
Все создались - все ок.
Далее я создал кнопку "
УДАЛИТЬ ВСЕ", которая удаляет все карты разом:

Код AS3:
for (var m = 0; m < myMovieClips.length; m++)
{
trace(myMovieClips.length);
myMovieClips[m].parent.removeChild(myMovieClips[m]);
}
Все ок , удаляются нормально!
В каждой карте у меня есть событие на клик, которое производит удаление активной карты.

Код AS3:
mc.addEventListener(MouseEvent.CLICK, qwe333);
function qwe333(event:MouseEvent):void
{
var targetClip:MovieClip = event.target as MovieClip
if (targetClip.parent) targetClip.parent.removeChild(targetClip);
}
Начинаю удалять карты вручную, осталось 40 карт!
Нажимаю на "
УДАЛИТЬ ВСЕ" , которая должна пробежаться по всему массиву(по 50 элементам) и удалить, но она возвращает ошибку
TypeError: Error #1009: Cannot access a property or method of a null object reference.
Что я обращаюсь к уже удаленному объекту.
как я понял, я удалил не ячейки массива, а просто снял со сцены объекты и второй раз их снимать уже нельзя.
Подскажите плиз:
1)как при проходе через массив, не обходить те 10 , элементы которых где я уже применил removeChild?
2) при нажатии на "function qwe333" - как узнать к какому элементу массива относится эта карта?
Просто если бы я это смог узнать , в этой кнопке сразу бы и удалял ячейку через splice
Добавлено через 11 минут
UPD:
все вроде решил вопрос костылем.
через оператор try catch