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

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

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

Регистрация: Oct 2005
Адрес: Санкт-Петербург
Сообщений: 125
Отправить сообщение для Sovnarkom с помощью ICQ Отправить сообщение для Sovnarkom с помощью Skype™
The bomb! Как остановить твин?

Есть ооочень длинный мув. (где то 1500 px).
Вот под него код:
Код:
frames.onMouseMove = function() {
	if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
		cent = 280;
		vist_1 = 960;
		vist_2 = 890;
		k_1 = vist_1/cent;
		k_2 = vist_2/cent;
		if (_root._xmouse<100) {
			var firstTween:Tween = new Tween(frames, '_x', None.easeOut, frames._x, 660-(_xmouse-280)*k_2, 7, true);
		}
		else if (_root._xmouse>460) {
			var secondTween:Tween = new Tween(frames, '_x', None.easeOut, frames._x, -280-(_xmouse-280)*k_1, 7, true);
		}
		else{
			//тут надо написать функцию, которая остановит твины
		}
	}
};
Как в данном случае остановить твины? Заранее спасибо.
З. Ы. Инилс, извини.

Старый 07.12.2007, 20:14
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
У вас логика общая неправильная.
При каждом движании мыши и хиттесте, будет запускатся новый твиин, а старые вы не остановили. Они так и будут дальше работать, накапливаясь.
Надо делать примерно следущее:
Код:
var tween:Tween = null;
frames.onMouseMove = function() {
	if (this.hitTest(_root._xmouse, _root._ymouse, true)) {
		cent = 280;
		vist_1 = 960;
		vist_2 = 890;
		k_1 = vist_1/cent;
		k_2 = vist_2/cent;
		tween.stop ();
		if (_root._xmouse<100) {
			tween = new Tween(frames, '_x', None.easeOut, frames._x, 660-(_xmouse-280)*k_2, 7, true);
		}
		else if (_root._xmouse>460) {
			tween = new Tween(frames, '_x', None.easeOut, frames._x, -280-(_xmouse-280)*k_1, 7, true);
		}
	}
};
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

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

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


 


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


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