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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.12.2012, 15:54
IrInKa вне форума Посмотреть профиль Отправить личное сообщение для IrInKa Найти все сообщения от IrInKa
  № 1  
Ответить с цитированием
IrInKa

Регистрация: Dec 2012
Сообщений: 3
По умолчанию Как удалить анимацию?

Подскажите пожалуйста как удалить анимацию и продолжить выполнение клипа.
У меня следующая проблема: Есть струя воды, которая выливается из брансбойта, она должна течь на протяжении 25 кадров, а затем исчезнуть совсем, при этом ролик продолжается дальше.
Мне удалось остановить струю воды, но она так в замершем состоянии и остается в кадре.
В первом кадре следующий код:
Код AS1/AS2:
// Переменная, хранящая текущее время
var t:Number = 0;
// В прототипе конструктора MovieClip определяем метод обработчика событий. Этот метод будет унаследован всеми экземплярами клипов
MovieClip.prototype.onEnterFrame = function() {
	// В струе воды должны участвовать только клипы, представляющие капли, т.е. клипы, имя которых будет начинаться с букв "mc"
	if (this._name.substr(0, 2) == "mc") {
		// Горизонтальное смещение
				this._x = Math.round(Math.random() * 314);
		// Вертикальное положение
				this._y = 32;
		// Приращение времени
		t += 0.1;
		// При выходе капли за пределы рабочей области
		if (this._y > 60 || this._x > 468 || this._x < 0) {
			// Вновь помещаем каплю вправо
			this._y = 32;
			// Позиционируем каплю по горизонтали
			this._x = 314;
			}
	}
};
// Создаем капли и размещаем их в случайных координатах по вертикали и по горизонтали
for (var i = 0; i < 100; i++) {
	this.attachMovie("mc", "mc" + i, i, {
					 _x:Math.round(Math.random() * 468),
					 _y:Math.round(Math.random() * 60)
					 						});
	// Задаем каплям случайные размеры
	this["mc" + i]._xscale = this["mc" + i]._yscale = Math.round(Math.random() * 20 + 20);
	// Для каждой капли определяем скорость ее истекания, исходя из ее размера и добавляя элемент случайности
	this["mc" + i].speed = this["mc" + i]._xscale / (Math.random()*5 + 10);
	// Для каждой капли сохраняем ее начальную горизонтальную координату
	this["mc" + i].initX = this["mc" + i]._x;
		// Для каждой капли устанавливаем степень прозрачности, исходя из е размера
	this["mc" + i]._alpha = this["mc" + i]._xscale;
	}
В 25 кадре следующий код

Код AS1/AS2:
delete MovieClip.prototype.onEnterFrame;

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

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

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


 


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


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