Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Массив клипов по траектории (http://www.flasher.ru/forum/showthread.php?t=113453)

DrugON 29.06.2008 16:01

Массив клипов по траектории
 
Вложений: 1
у меня есть путь
Код:

a = new Path(50, 150);
b = new Path(5, 0);
c = new Path(0, -5);
this.onEnterFrame = function():Void  {
        a.plus(b);
        if (a.x >= 150) {
                b.reset(0,0);
                b.plus(c);
                if (a.y <= 10) {
                        delete this.onEnterFrame;
                }
        }
        this._x = a.x;
        this._y = a.y;
};

по которому должен двигаться массив клипов. Подскажите, как выстроить клипы внутри массива в одну линию сначала по оси абсцисс, а при повороте траектории по оси ординат.
Пробовал вот так сделать
Код:

var box_array:Array = new Array();

makeBox();
function makeBox():Void {
        var depth:Number;
        var box_mc:MovieClip;
        var x:Number = 0;
        var y:Number = 0;
        for (var i:Number = 0; i < 20; i++) {
                depth = this.getNextHighestDepth();
                box_mc = this.attachMovie(i + "-box", "box" + depth, depth, {_x:x, _y:y});
                box_array.push(box_mc);
                if ((i + 1) % 2 != 0) {
                        x += box_mc._width + 0;
                } else {
                        y += box_mc._height + 0;
                }
        }
}

, но тогда у меня весь массив двигается как блок. А мне надо чтобы первый элемент массива выполнял движения пустого клипа, второй элемент выполнял действия первого и т.д.

DrugON 05.07.2008 12:54

я всетаки надеюсь на помощь...
сейчас клипы вроде как двигаются по одному пути, но находятся друг под другом. Как сделать временый интервал? чтобы сначала двигался один клип, следом другой и т.д.
Код:

var box_array:Array = new Array();
makeBox();
function makeBox():Void {
        var x:Number = 0;
        var y:Number = 0;
        var mc = this._parent.createEmptyMovieClip(this._name, this.getNextHighestDepth());
        for (var i:Number = 0; i < 20; i++) {
                var c:MovieClip = this.mc.createEmptyMovieClip(i, i);
                var b:MovieClip = c.attachMovie("box", "box" + i, i);
                box_array.push(mc);
        }
}
for (var i:Number = 0; i < 20; i++) {
        this.mc[i].attachMovie(i + "-box","box" + i, i);
        this.mc[i].index = i;
}

Подскажите, мне битэ.


Часовой пояс GMT +4, время: 09:33.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.