Форум 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=86515)

PITer 21.10.2006 04:20

вот такой можно способ с помощью тернарного оператора
Код:

_root.onEnterFrame = function() {
        for (i=0; i<10; i++) {
                _root["mc"+i]._alpha = (i == 0 ? (_root["mc"+i]._alpha == 100 ? 100 : _root["mc"+i]._alpha+1) : (_root["mc"+(i-1)]._alpha<=30 ? 0 : (_root["mc"+(i-1)]._alpha != 100 ? _root["mc"+(i-1)]._alpha-30 : _root["mc"+i]._alpha+1)));
        }
        if (_root.mc9._alpha == 100) {
                delete _root.onEnterFrame;
        }
};

решение в 8 строк и 226 столбцов.

iNils 21.10.2006 15:40

Более короткий и понятный вариант.
Код:

//// Массив содержащий ссылки на мувиклипы
//// (можно конечно без массива, но так удобнее манипулировать с последовательностью клипов)
this.arrayMC = [this.mc0, this.mc1, this.mc2, this.mc3];
this.onEnterFrame = function () {
        var len = this.arrayMC.length;
        for (i = 0; i < len; i++) {
                if (++this.arrayMC[i]._alpha < 30) {
                        break;
                }
        }
        if (this.arrayMC[len - 1]._alpha >= 100) {
                delete this.onEnterFrame;
        }
};


Kinsler 23.10.2006 11:56

Всем спасибо.
2 Kikasso
я решил по твоему третьему варианту.


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

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