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

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

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

Регистрация: Aug 2003
Сообщений: 25
По умолчанию Движение объекта за курсором с запаздыванием.

Как сделать движение объекта за курсором мыши с запаздыванием используя setInterval?

Т.е. я сделал это самое запаздывание через onEnterFrame
Код:
this.onEnterFrame=function()
{
xx=_root._xmouse;
yy=_root._ymouse;

if (this._x > xx) {this._x-=(this._x-xx)/4;} else {this._x+=(xx - this._x)/4;};
if (this._y > yy) {this._y-=(this._y-yy)/4;} else {this._y+=(yy - this._y)/4;};
}
Все работает и меня вполне устраивает.

Потом хотел сделать тоже самое через setInterval вот таким образом:
Код:
interval = function(xx, yy) {
	if ((ball._x==xx)&&(ball._y==yy))
	{
		clearInterval(id);
	}
	else
	{
	if (ball._x > xx) {ball._x-=(ball._x-xx)/4;} else {ball._x+=(xx - ball._x)/4;};
	if (ball._y > yy) {ball._y-=(ball._y-yy)/4;} else {ball._y+=(yy - ball._y)/4;};
	updateAfterEvent();
	}
}

this.onMouseMove=function()
{
id = setInterval (interval, 80, _root._xmouse, _root._ymouse);
}
Но приведенный код работает неправильно.
Вместо плавного красивого запаздывания на экране какое-то хаотичное мелькание.
Подскажите, в чем ошибка?

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

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

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


 


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


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