PDA

Просмотр полной версии : как убрать объекты со сцены


mupsus_nika
26.11.2013, 10:32
Подскажет кто-то как убрать объекты. вызванные из библиотеки. со сцены при перемещении основной анимации на фрейм "гейм оувер"? То есть переходим на новый фрейм с надписью "конец игры", функции вызова объектов очищаются, они перестают появляться, но уже вызванные объекты остаются на сцене. Думала поставить на фпейм с "г.о." ивент c removeChild но что-то не выходит, скорее всего не так пишу, ибо trace
тоже не работает
stop();

btn_a.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAt1);

function fl_ClickToGoToAndStopAt1(event:MouseEvent):void
{
gotoAndStop(1);

}

stage.addEventListener(Event.REMOVED_FROM_STAGE, removes);

function removes(event:Event):void
{
trace("Привет, миир");
removeChild((Object(root).StarPOS));
removeChild((Object(root).StarNEG));
removeChild((Object(root).Star));
}

также пыталась сделать это через сам объект
addEventListener(Event.REMOVED_FROM_STAGE, removem);

function removem(event:Event):void
{
if (Object(parent).currentFrame== "overgame")
{
Object(parent).removeChild(this);
}
}

samana
26.11.2013, 18:22
А где находится первый код? На сцене (в кадре), или в кадре какого-то мувика?

mupsus_nika
27.11.2013, 01:31
первый код находится на сцене в кадре с геймоувером

samana
27.11.2013, 20:37
Вы подписали сцену(stage), на событие удаления из дисплейЛиста, а это я думаю вряд ли случится когда нибудь. По этому метод removes и не срабатывает.

mupsus_nika
28.11.2013, 15:53
a 4to mne konkretno ispravit? izvenite, nemnogo zamu4alas uzhe:)

samana
28.11.2013, 16:28
По идее, просто написать в том кадре
(root as MovieClip).removeChild(StarPOS);
(root as MovieClip).removeChild(StarNEG);
(root as MovieClip).removeChild(Star);