PDA

Просмотр полной версии : Добавление MovieClip в массив


little_Kenny
25.12.2008, 19:57
Помогите создать массив мувиков.
у меня есть n мувиков, прямоугольники разного размера которые рассполагаются на сответствующих точках. Я их задавала:

for (var i=0; i<n; i++)
{
_root.createEmptyMovieClip("Title_"+i,d++);
_root["Title_"+i].lineStyle(1,0,100);
_root["Title_"+i].moveTo(ax[i]-(tx[i]/2),ay[i]-(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]-(tx[i]/2),ay[i]+(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]+(tx[i]/2),ay[i]+(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]+(tx[i]/2),ay[i]-(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]-(tx[i]/2),ay[i]-(ty[i]/2));
}

Для дальнейшей работы нужно поместить эти мувики в массив. Пробовала все что вычитала на форуме, добавлять с помощью attachMovie и push, но ничего не вышло. Буду благодарна за любые советы.:):rolleyes:

DigitalD
26.12.2008, 04:51
// временные переменные, чтобы пример работал
var n=4;
var d=1;
//

var mcArray=new Array(); // заранее создаем пустой массив
for (var i=0; i<n; i++)
{
var tmpMc=_root.createEmptyMovieClip("Title_"+i,d++);
_root["Title_"+i].lineStyle(1,0,100);
_root["Title_"+i].moveTo(ax[i]-(tx[i]/2),ay[i]-(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]-(tx[i]/2),ay[i]+(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]+(tx[i]/2),ay[i]+(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]+(tx[i]/2),ay[i]-(ty[i]/2));
_root["Title_"+i].lineTo(ax[i]-(tx[i]/2),ay[i]-(ty[i]/2));
mcArray.push(tmpMc); // добавляем в массив ссылку на movieClip
}

// проверка содержимого массива
for (i=0; i<mcArray.length; i++) {
trace(mcArray[i]);
}

iNils
26.12.2008, 11:22
little_Kenny, для оформления своего кода надо использовать теги .

little_Kenny
26.12.2008, 17:56
Спасибо!!! Насчет буду знать:)))))

Mnilionic
26.12.2008, 18:06
var n=4;
var mcArray = new Array(); // заранее создаем пустой массив
for (var i = 0; i < n; i++){
var tmpMc = _root.createEmptyMovieClip("Title_" + i, i);
with( tmpMc ){
lineStyle(1,0,100);
moveTo(ax[i]-(tx[i]/2),ay[i]-(ty[i]/2));
lineTo(ax[i]-(tx[i]/2),ay[i]+(ty[i]/2));
lineTo(ax[i]+(tx[i]/2),ay[i]+(ty[i]/2));
lineTo(ax[i]+(tx[i]/2),ay[i]-(ty[i]/2));
lineTo(ax[i]-(tx[i]/2),ay[i]-(ty[i]/2));
}
mcArray.push( tmpMc ); // добавляем в массив ссылку на movieClip
}