Люди добрые, помогите кто чем может. Третий день честно бьюсь — никак не осилю задачу. Сначала опишу что мне нужно.
Есть 4 внешних простых однотипных мувика длиной по 25(неважно) кадров каждый - tree1.swf...tree4.swf
Мне нужно выбирать случайным образом только один из них, загрузить его на сцену, проиграть до конца и выгрузить. После этого через случайный промежуток времени (в интервале примерно 1—5 сек) операция повторяется — выбираем случайно один мувик, грузим, играем, выгружаем — и так до бесконечности.
При этом есть еще кнопка, при наведении на которую приостанавливается воспроизведение загруженного мува. Убрали курсор — мув играет дальше до конца и т.д. Надеюсь, понятно изложил.
Поиском по форуму нашел кучу похожих примеров, но все они как-то вокруг да около, вобщем прикрутить под свои нужды так и не удалось
Итак, что имеем (код оставил только тот, что более-менее работает, остальное вычистил.)
В каждом из внешних мувов в последнем кадре прописал:

Код:
this.removeMovieClip();
чтобы клип сам выгружался по достижении конца — вроде работает.

Код:
//функция генерации случайных чисел — пример из хелпа
_global.randRange = function(min:Number, max:Number):Number {
var randomNum:Number = Math.floor(Math.random()*(max-min+1))+min;
return randomNum;
};
//собственно, основная функция
showTreez = function () {
//генерим случ. номер от 1 до 4
ti = _global.randRange(1, 4);
//Здесь несущественно — предварительные вычисления всяких координат-размеров
d = _global.randRange(-1, 1);
if (d>=0) {
di = 1;
} else {
di = -1;
}
//временно принудительно грузим только 4-й мув, для простоты
ti = 4;
//грузим собственно мув и он начинает играть
this.createEmptyMovieClip("t_mc", 10);
loadMovie("treez/tree"+ti+".swf", t_mc);
t_mc._x = 360;
t_mc._y = 158.7;
t_mc._xscale = di*100;
};
//--------------Main code-------------------
//здесь для простоты пока взят постоянный интервал, хотя нужен случайный
setInterval(this, "showTreez", 3000);
//ну, и кнопка
bt.onRollOver = function() {
t_mc.stop();
};
bt.onRollOut = function() {
t_mc.play();
};
Собственно, вся фигня начинается сразу — после запуска функция живет своей жизнью, а мувики своей. Это я уже понял. Т.е. функция себе крутится внутри, грузит клипы и усе. В принципе, 2-3 секунд пока хватает, чтобы мувы грузились как бы по одному и проигрывались целиком. Если время в сетИнтервале уменьшить до 0,5-1 секунды, то видно, что клипы не доигрываются, а перегружаются новым экземпляром. И кнопка, естественно, работает не так, как надо — если навести мышь и подержать подольше, то видно что приостанавливается только загруженный на момент наведения мыши экземпляр, но функция продолжает крутиться, и через время перегружает его уже новым.
Также ни к чему не привела попытка подставить в сетИнетрвале что-то вроде

Код:
rndTime = _global.randRange(1, 3);
setInterval(this, "showTreez", rndTime);
Еще во внешних мувах прописал на всяк случай

Код:
в первом кадре _global.flag=false;
в последнем _global.flag = true;
но отловить его у меня тоже не получилось

Вобщем, совсем уже крыша едет. Подскажите, пожалуйста, что сделать, чтобы "со всей этой фигней взлететь?"

На всяк случай вот исходник с одним внешним мувом.
randomtreez.ZIP
зы Обещаю, если все получится как надо - выложить тут ссылу на сайт, где эта красота будет крутиться
