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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 26.12.2008, 18:46
dima_kiv вне форума Посмотреть профиль Найти все сообщения от dima_kiv
  № 1  
Ответить с цитированием
dima_kiv
Banned
[+4 08.10.08]
[+ 4 14.10.08]

Регистрация: Sep 2008
Сообщений: 133
По умолчанию Как програмно сделать движение плавным?

смотрите исходник. надо чтоб блоки перемещались с эффектом замедления. не могу придумать как... спасибо.
Вложения
Тип файла: rar l_r.rar (4.4 Кб, 100 просмотров)

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

Регистрация: Jul 2008
Сообщений: 257
Код AS1/AS2:
right.onRollOver = function() {
	if (clip._x <> -1484) {
		newX=clip._x-742;
		updatePos(newX);
	}
}
left.onRollOver = function() {
	if (clip._x <> 0) {
		newX=clip._x+742;
		updatePos(newX);
	}
}
 
function updatePos(newX){
	  clip.onEnterFrame = function() {
			X=clip._x;
			clip._x = X+(newX-X)*0.8;
			if (clip._x == newX){
				delete clip.onEnterFrame;
			}
     };
}
только подкорректировать надо, там если резко дергаться между кнопками координаты сбиваются

Старый 26.12.2008, 19:36
flash_image вне форума Посмотреть профиль Отправить личное сообщение для flash_image Посетить домашнюю страницу flash_image Найти все сообщения от flash_image
  № 3  
Ответить с цитированием
flash_image

Регистрация: Dec 2001
Адрес: Ялта
Сообщений: 75
Отправить сообщение для flash_image с помощью ICQ
а почему не использовать твин ??

Старый 26.12.2008, 19:41
artem_fs вне форума Посмотреть профиль Отправить личное сообщение для artem_fs Найти все сообщения от artem_fs
  № 4  
Ответить с цитированием
artem_fs

Регистрация: Jul 2008
Сообщений: 257
flash_image, а если у вас 100+ кадров? и надо их менять внешне?

Старый 26.12.2008, 19:55
dima_kiv вне форума Посмотреть профиль Найти все сообщения от dima_kiv
  № 5  
Ответить с цитированием
dima_kiv
Banned
[+4 08.10.08]
[+ 4 14.10.08]

Регистрация: Sep 2008
Сообщений: 133
artem_fs спасибо... только вот условие мое теперь не работает, что если блок первый или последний событие переставало срабатывать...

Старый 26.12.2008, 19:58
artem_fs вне форума Посмотреть профиль Отправить личное сообщение для artem_fs Найти все сообщения от artem_fs
  № 6  
Ответить с цитированием
artem_fs

Регистрация: Jul 2008
Сообщений: 257
я не стал их трогать, думаю сам разберешься) я-бы рекомендовал записывать текущее окно в переменную, и двигаться уже от нее. так-же это поможет указывать координаты правильнее

Старый 26.12.2008, 22:08
dima_kiv вне форума Посмотреть профиль Найти все сообщения от dima_kiv
  № 7  
Ответить с цитированием
dima_kiv
Banned
[+4 08.10.08]
[+ 4 14.10.08]

Регистрация: Sep 2008
Сообщений: 133
artem_fs честно говоря с трудом понял о чем ты...) если долго объяснять может есть какое то стандартное решение данной задачи?

Старый 26.12.2008, 23:41
artem_fs вне форума Посмотреть профиль Отправить личное сообщение для artem_fs Найти все сообщения от artem_fs
  № 8  
Ответить с цитированием
artem_fs

Регистрация: Jul 2008
Сообщений: 257
Код AS1/AS2:
frames = 2; //количество кадров -1
frameOn = 0; //текущий кадр -1
 
right.onRollOver = function() {
	if(frameOn<frames){frameOn++;}
	newX = -742*frameOn;
	updatePos(newX);
}
 
left.onRollOver = function() {
	if(frameOn>0){frameOn--;}
	newX = -742*frameOn;
	updatePos(newX);
}
 
function updatePos(newX){
	clip.onEnterFrame = function() {
		X=clip._x;
		clip._x = X+(newX-X)*0.6;
		if (clip._x == newX){
			delete clip.onEnterFrame;
		}
	};
}
под пиво есть решение.

Старый 29.12.2008, 11:34
dima_kiv вне форума Посмотреть профиль Найти все сообщения от dima_kiv
  № 9  
Ответить с цитированием
dima_kiv
Banned
[+4 08.10.08]
[+ 4 14.10.08]

Регистрация: Sep 2008
Сообщений: 133
artem_fs спасибо большое!

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

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

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


 


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


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