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

RomLex 23.08.2007 19:45

Радио волны!
 
Привет!
Делаю сейчас радио волны! Конечно можно все нарисовать и проанимировать! Но мне очень хочется посмотреть на код!
Значит так:
Есть мувик волны, в нем шейп-анимация типа маштабируется!
вот код который я вставляю в 1 кадр:
Код:

attachMovie("volna","volnaa",1,{_x:276, _y:16.2});
        volnaa.onEnterFrame = function()
                {
                if (volnaa._alpha>=0)
                {
                        volnaa._alpha -= 1;
                } else {
                        removeMovieClip("volnaa");
                }
                };

это все работает!
Мне надо его зацыклить скажем так:
Код:

function volna() {
        attachMovie("volna","volnaa",2,{_x:276, _y:16.2, _alpha:50});
        volnaa.onEnterFrame = function() {
                if (volnaa._alpha>=0) {
                        ima._alpha -= 1;
                } else {
                        removeMovieClip("volnaa");
                        volna();
                }
        };
}
volna();

но это не то что мне нужно! в этом примере новая волна появляется после удаления предыдущей.

Как сделать чтоб, волны появлялись одна за другой, скажем в секунду по 4 шт.-вооюще не важно сколько!

Прошу помощи!

Kikasso 23.08.2007 20:01

Цитата:

Сообщение от RomLex
в этом примере новая волна появляется после удаления предыдущей.

Само собой, ведь вы их аттачите с одним и тем же именем и на один и тот же уровень.

__ant 23.08.2007 20:08

С помощью setInterval, а аттачить с разными именами и уровнями.

Mr. Fixit 23.08.2007 20:19

используй:
Код:

for(var i=0, i<4; i+=1)
setInterval(createVolna, 1000);

пусть твоя функция создает сразу 4 волны. и Все би ок!

RomLex 23.08.2007 20:32

Так понятно! вот и вопрос!

подскажите ка правильно написать! вернее совместить "i" вместе с этим цыклом!

RomLex 23.08.2007 20:34

Цитата:

Сообщение от Mr. Fixit
используй:
Код:

for(var i=0, i<4; i+=1)
setInterval(createVolna, 1000);

пусть твоя функция создает сразу 4 волны. и Все би ок!

куда именно это вставить? не понимаю :eek:

RomLex 23.08.2007 20:40

и еще почему alhpa делаю всего - 1, а в трейсе мне пишет:
48.828125
47.65625
46.484375
45.3125
44.140625
42.96875
41.796875
40.625

в чем дело?????

Mr. Fixit 23.08.2007 21:06

Цитата:

Сообщение от RomLex
куда именно это вставить? не понимаю :eek:

это не вставляй, а используй.

Цитата:

а в трейсе мне пишет
значит в коде неправильно написано.. что-то.
Или перезагрузи Flash.

RomLex 23.08.2007 21:16

Вложений: 1
Это понятно, что эти вещи и надо узать. Я делаю так:
Код:

function volna1() {
        for (i=1; i<=4; i++) {
                xxx = "ima1"+i;
                trace(xxx);
                attachMovie("aura_all",xxx,i,{_x:276+(10*i), _y:16.2, _alpha:50});
                xxx = this.onEnterFrame=function () {
                        if (xxx._alpha>=0) {
                                xxx._alpha -= 1;
                                trace(xxx._alpha);
                        } else {
                                removeMovieClip(xxx);
                        }
                };

        }
}
setInterval(volna1(),100000);

и сразу отключается onEnterFrame=function () пробывал писать просто xxx.onEnterFrame=function () {
тоже не работает!

ну каже быть, не ужели тежелый вопрос я задаю?

и на счет альфы посылаю голый клип, совсем простой, вот посмотри что пишет он в трейсе?!!!

Mr. Fixit 23.08.2007 21:21

ты пиши или setInterval или onEnterFrame.

Отладчик выводит так потому что ты используешь сразу эти две функции.


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

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