PDA

Просмотр полной версии : Последовательно проиграть сначала один мувик, потом другой.


taifa
16.03.2007, 14:20
Добрый день. У меня во флешке в библиотеке есть два муви-клипа (возможно и больше). Как последовательно проиграть сначала один клип, а потом другой и т.д?
Спасибо.

iNils
16.03.2007, 14:21
Основываясь на этом
http://www.flasher.ru/forum/showthread.php?t=93226
Только надо не загружать, а аттачить и убрать проверку на загрузку.

taifa
16.03.2007, 18:21
Если я вас правильно поняла, то должно получиться примерно вот это:

var array:Array = ["c2", "c1"];
_root.createEmptyMovieClip("mc", _root.getNextHighestDepth());
var bt = _root["mc"];
mc._x=234;
mc._y=30;
var i:Number = 0;
var flag:Boolean = true;
var m:MovieClip=mc.attachMovie(array[i], array[i],0);his.onEnterFrame = function () {
if (flag) {
var m:MovieClip=mc.attachMovie(array[i], array[i],0);
flag = false;
} else {
if (m._currentframe == m._totalframes) {
flag = true;
i++;
if (i == array.length) {
i = 0;
}
}
}
};
Только у меня при работе этого когда почему-то проигрывается только первый мувик из массива((

iNils
16.03.2007, 18:31
в his.onEnterFrame потеряли первую букву t

taifa
16.03.2007, 18:45
Действительно. Вечная моя невнимательность. Спасибо. Однако проблеммы на этом не исчерпываются - если раньше мы вообще не выпадали на код "....if (m._currentframe == m._totalframes)...", то теперь это происходит при каждом событии onEnterFrame - в итоге флешка просто беспорядочно мелькает (по одному кадру на каждый мувик).

iNils
16.03.2007, 18:55
А все потому, что внутри onEntarFrame вы написали
var m:MovieClip=...
а надо
m=...

taifa
16.03.2007, 18:56
большое спасибо. Заработало по-человечески)