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

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

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

Регистрация: Nov 2007
Сообщений: 165
По умолчанию Лупа которая плавно догоняет курсор...

Вот чего пытаюсь добиться
тоесть когда выводиш курсор за пределы флеша, а потом наводиш опять на рабочую область лупа плавно подлетает к курсору.)
есть код на мувиклипе(лупе)

Код:
onClipEvent (mouseMove) {
     xm = _root._xmouse;
     ym = _root._ymouse;
     _x = xm;
     _y = ym;
     mc._x = -xm;
     mc._y = -ym;
     updateAfterEvent();
}

onClipEvent (enterFrame) {
  //Движение по оси X
  mx = _root._xmouse;
  if (mx<_x) {
    dx = _x-mx;
  } else {
    dx = mx-_x;
  }
  moveSpeedx = dx/3;
  if (mx<_x) {
    _x = _x-moveSpeedx;
  } else {
    _x = _x+moveSpeedx;
  }

  //Движение по оси Y
  my = _root._ymouse;
  if (my<_y) {
    dy = _y-my;
  } else {
    dy = my-_y;
  }
  moveSpeedy = dy/3;
  if (my<_y) {
    _y = _y-moveSpeedy;
  } else {
    _y = _y+moveSpeedy;
  }
}
но при

Код:
 _x = xm;
 _y = ym;
лупа прыгает на курсор,

когда убираю эттот код
Код:
 _x = xm;
 _y = ym;
при вождении курсора маскируемая картинка начинает дергаться...никак немогу с этими дерганиями спраавиться...

в АS не силен, код склепал с разных исходников

вот мой исходник...
Вложения
Тип файла: rar Lupa.rar (111.8 Кб, 137 просмотров)

Старый 17.08.2008, 12:11
zveryuka вне форума Посмотреть профиль Отправить личное сообщение для zveryuka Найти все сообщения от zveryuka
  № 2  
Ответить с цитированием
zveryuka
 
Аватар для zveryuka

Регистрация: Nov 2007
Сообщений: 165
нашел я решение проблемы и оказалось очень просто...

берем movieclip с лупой (назовем его для удобства "masker" и на нем пишеться код

Код:
onClipEvent(enterFrame)
{
    dx = _root._xmouse - _x;
    _x = _x + dx / 3;
    dy = _root._ymouse - _y;
    _y = _y + dy / 3;
}
этот же movieclip делаем маской картинки которую мы хотим показывать(конвертим предварительно наш рисунок в graphic).
при этих действиях будет на экране плавать только линза.

Чтобы лупа была у нас во всей красе берем с библиотеки тот же movieclip с нарисованной лупой вставляем в новый layer, (назовем его "loupe") выравниваем по координатам на равне с movieclip "masker" и прописываем на нем тот же код

Код:
onClipEvent(enterFrame)
{
    dx = _root._xmouse - _x;
    _x = _x + dx / 3;
    dy = _root._ymouse - _y;
    _y = _y + dy / 3;
}
Теперь на главной сцене в фрейме на котором размещены все наши данные пишем код
Код:
stop();
Mouse.hide();
push ctr+enter

исходник прилагается....
Вложения
Тип файла: rar Lupa1.rar (106.6 Кб, 189 просмотров)

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

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

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


 


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


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