PDA

Просмотр полной версии : Удаление мувика после проигрывания


ryudzaki
26.08.2009, 11:11
Доброго времени.

В данном коде проигрывается клип, потом другой, третий и т.д. Вобщем они наслаиваются друг на друга и получается "жесть".
Я не могу "догнать", как удалить первый клип перед проигрыванием второго.

onEnterFrame = function() {
var $num = Math.ceil(Math.random()*5+1);
var clip = _root.attachMovie("clip"+$num, "newName",_root.getNextHighestDepth());
clip._x = (Stage.width/2);
clip._y = (Stage.height/2);
delete clip.onEnterFrame;
}
setInterval(clip, 1*1000);

lexa2000lexa
26.08.2009, 11:21
как вариант можно вот так
var clip = _root.attachMovie("clip"+$num, "newName",100);

alexcon314
26.08.2009, 11:29
removeMovieClip();
Можно так же аттачить на конкретную глубину, а не на динамически определяемую через _root.getNextHighestDepth(). Скажем,
var clip = _root.attachMovie("clip"+$num, "newName",1000);
Тогда предыдущий приаттаченный клип автоматически удалится с глубины 1000 и будет заменен следующим. 1000 - это для примера, можно любую другую глубину юзать.
ЗЫ а вот это что?
setInterval(clip, 1*1000);
И где у вас ентерфрейм, в руте или на клипе, что аттачится?

ryudzaki
26.08.2009, 11:32
setInterval(clip, 1*1000);
Это чтобы через опред. интервал запускался клип. Но я не могу его граммотно применить.:(

Добавлено через 7 минут
И где у вас ентерфрейм, в руте или на клипе, что аттачится?
Я пробник делаю в руте, но по сути задумки в клипе будет

alexcon314
26.08.2009, 11:51
Попробуйте так:
function attachRandomClip() {
var num = Math.ceil(Math.random() * 5 + 1);
var clip = _root.attachMovie("clip" + num, "newName", 1000, {_x:Stage.width / 2, _y:Stage.height / 2});
}
var intvID = setInterval(attachRandomClip, 1000);
Этот код в руте разместите.

ryudzaki
26.08.2009, 12:09
спасибо огромное, все работает как часы. Очень благодарен!!!
alexcon314, lexa2000lexa зачет вам :)!

Добавлено через 11 минут
Только одна проблема. Анимация внутри clip1, clip2 ... не проигрывается

alexcon314
26.08.2009, 12:54
На таймлайне клипов, которые аттачатся, есть stop()?.

ryudzaki
26.08.2009, 13:10
Все! Разобрался, спасибо огромное.