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

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

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

Регистрация: Dec 2005
Сообщений: 52
По умолчанию Раскачивание маятника

Здравствуйте! Есть 4 карточки на веревках, мувиклипа, принаведении они с задержкой следуют за мышкой, центры их привязаны к началам веревок (как картина на стене), при отводе мышки с любой карточки, карточка должна маятником вернуться в начальное положение, так же и призадержки мыши в мувиклипе, если мышь не двигается, он должен маятником вернуться в начальное положение, все работает, кроме эффекта маятника. Подскажите пожалуйста.

Код:
for (var i:Number = 0; i<4; i++) {
	this["card"+i].onRollOver = function() {
		this.x = _root._xmouse;
		this.over = true;
	};
	this["card"+i].onRollOut = function() {
		this.over = false;
	};
	this["card"+i].angle = 0;
	this["card"+i].onEnterFrame = function() {
		if (this.hit.hitTest(_root._xmouse, _root._ymouse)) {//this.over==true){
			if (this.x != _root._xmouse) {
				var tmpa = (this.x-_root._xmouse)/20;
				if (tmpa+this.angle>this.angle+0.5) {
					this.angle = this.angle+1;
				} else if (tmpa+this.angle<this.angle-0.5) {
					this.angle = this.angle-1;
				} else {
					this.angle += tmpa;
				}
				this._rotation = this.angle;
			} else {
				if (this.angle != 0) {
					if (this.angle>0) {
						this.angle -= Math.abs(this.angle/15);
						this.over = false;
						trace(this.angle);
					} else if (this.angle<0) {
						this.angle += Math.abs(this.angle/15);
						this.over = false;
					}
					//this._rotation=this.angle;   
				}
			}
			//this.x=_root._xmouse;
		} else {
			if (this._rotation != 0) {
				if (this.angle != 0) {
					if (this.angle>0) {
						this.angle -= Math.abs(this.angle/15);
					} else if (this.angle<0) {
						this.angle += Math.abs(this.angle/15);
					}
				}
			}
		}
		this._rotation = this.angle;
		this.x = _root._xmouse;
	};
}
Я так понял что код затухания колебаний надо вставлять сюда

Код:
if (this.angle != 0) {
					if (this.angle>0) {
						this.angle -= Math.abs(this.angle/15);
						this.over = false;
						trace(this.angle);
					} else if (this.angle<0) {
						this.angle += Math.abs(this.angle/15);
						this.over = false;
					}
					//this._rotation=this.angle;   
				}
			}
			//this.x=_root._xmouse;
		} else {
			if (this._rotation != 0) {
				if (this.angle != 0) {
					if (this.angle>0) {
						this.angle -= Math.abs(this.angle/15);
					} else if (this.angle<0) {
						this.angle += Math.abs(this.angle/15);
					}
				}
исходник main.rar


Последний раз редактировалось Salut; 01.10.2008 в 20:13.
Создать новую тему   Часовой пояс GMT +4, время: 20:22.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
маятник
Опции темы
Опции просмотра

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

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


 


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


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