Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.03.2006, 18:26
petrochenko1981 вне форума Посмотреть профиль Отправить личное сообщение для petrochenko1981 Найти все сообщения от petrochenko1981
  № 1  
Ответить с цитированием
petrochenko1981
[+1.10 14.03.2006]
[+ 1.11 18.04.2006]

Регистрация: Oct 2005
Сообщений: 106
По умолчанию Как запустить эту функцию для нескольких мувиков

У меня есть на глвном поле три клипа и есть функция, которая меняет у них alpha по синусойде. Как сделать так, чтобы эту функцию можно было бы применять для всех клипов. Почемуто она применяется только для одного мувика, а для других не канает. Помогите плиииииииз.

mc_3._alpha = 100;
var speed = 30;

function test(out:Boolean) {
param = mc_3._alpha;
checks=0;
var interval = setInterval(function () {
if (out)
{
if ((mc_3._alpha < 100)&&(checks<>1)){
param++;
} else {
param--;
}
if (param>=100) {
checks=1;
}
if (param<=0) {
checks=0;
}

n=(param/100)*(Math.PI/2);
param1=Math.sin(n)*100;
mc_3._alpha = param1;
}
}, speed);
}
Вот так вот её запускаю.
test(true);

Если прописать всё тоже самое для второго мувика, то почемуто работает только на первом мувике. На второй она забивает.

Старый 23.03.2006, 19:06
Andromed вне форума Посмотреть профиль Отправить личное сообщение для Andromed Найти все сообщения от Andromed
  № 2  
Ответить с цитированием
Andromed

Регистрация: Aug 2005
Сообщений: 83
используй prototype, и ты не правильно используешь метод setInterval, кто ее за тебя останавливать будет, я особо не разбирался как у тебя считается прозрачность, используй как основу
Код:
mc1.speed = 1;
mc2.speed = 2;
mc3.speed = 3;
MovieClip.prototype.test = function() {
	this.interval = setInterval(function (mc:MovieClip) {
		mc._alpha -= mc.speed;
		if (mc._alpha<=0) {
			clearInterval(mc.interval);
		}
	}, this.speed, this);
};
mc1.test();
mc2.test();
mc3.test();

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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