![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2005
Сообщений: 207
|
Ситуевина такая:
хочу сделать индексацию муви клипов в руте. Сделал. Подготовил тестовую сцену, где клипы начинаются с 303, 928 и т.д. (через 625 кадров каждый). Прохожу по тамлайну до конца, но код находит только первое начало (303 кадр), а все остальное НЕТ. Сцена - это Graphics->Loops продолжительностью 625 кадров со вложенным муви клипом. Код индексации такой:
var totalMC = 0; // Счетчик мови клипов
var MovieClips = new Array(); // Двумерный массив для сохранения значений
//[0] - начальный кадр
//[1] - продолжительность
//[2] - имя
//Сама функция
InitMovieClips = function ()
{
//Прогоняю по всем кадрам
for (i = 1; i <= _parent._totalframes; i++)
{
_parent.gotoAndStop(i);
// Проверяю все муви клипы в кадре
for (fname in _parent)
{
mc = eval("_parent." + fname);
//Если муви клип и имя не равно заданному (нужно) и продолжительность свыше 1 кадра
if (typeof(mc) == "movieclip" && fname != _name && mc._totalframes > 1)
{
// Ищу в массиве данный клип
findMC = false;
for (j = 0; j < totalMC; j++)
{
if (MovieClips[j][2] == fname)
{
MovieClips[j][1]++;
findMC = true;
}
}
// Если не нашел то делаю запись
if (!findMC)
{
MovieClips[totalMC] = new Array();
MovieClips[totalMC][0] = i;
MovieClips[totalMC][1] = 1;
MovieClips[totalMC][2] = fname;
totalMC++;
}
}
}
}
}
- индексация происходит в момент загзузки - имена клипам не присваиваются вручную Внимание вопрос: что за глюк??? Если клипы еще не загрузились, то почему он (флеш) находит первый клип??? А если загрузились, то почему не находит остальные??? Заранее спасибо. |
![]() |
Часовой пояс GMT +4, время: 23:48. |
|
|
« Предыдущая тема | Следующая тема » |
|
|