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

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

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

Регистрация: Oct 2003
Адрес: СПб
Сообщений: 200
Отправить сообщение для peresmeshnik с помощью ICQ
По умолчанию Movie clip, который тормозя следует за курсором

Т.е. необзодимо сделать такой клип, который бы бегал за курсором по более сглаженной траектории.
В случае с этим кодом:
Код:
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
	
    test._x = _xmouse;
    test._y = _ymouse;
    updateAfterEvent();
};
Mouse.addListener(mouseListener);
Объект следует непрерывно за курсором, а нужно чтобы он как бы использовал класс Tween, что-ли...
Подскажите пожалуйста, как это сделать!!!!

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

Регистрация: Apr 2007
Сообщений: 1,369
Ну, если по Вашему то так:
Код:
var k:Number = 0.1;
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
    test._x = test._x+(_xmouse-test._x)/k;
    test._y = test._y+(_ymouse-test._y)/k;
    updateAfterEvent();
};
Mouse.addListener(mouseListener);

Старый 03.12.2007, 17:56
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 3  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Molecula, что будет, если я остановлю мышь?

Старый 03.12.2007, 18:02
Molecula вне форума Посмотреть профиль Отправить личное сообщение для Molecula Найти все сообщения от Molecula
  № 4  
Ответить с цитированием
Molecula
 
Аватар для Molecula

Регистрация: Apr 2007
Сообщений: 1,369
А может так и задумывалось, я ж написал, мол, "если по Вашему".
Кстати, ошибся, не делить, а умножить надо ставить.
Ну, а вообще, конечно же обычно так пишут:

Код:
var k:Number = 0.1;
test.onEnterFrame= follow;
function follow()
{
	this._x+=(_xmouse-this._x)*k;
	this._y+=(_ymouse-this._y)*k;
}


Последний раз редактировалось Molecula; 03.12.2007 в 18:15.
Старый 03.12.2007, 18:09
CrazyFlasher вне форума Посмотреть профиль Отправить личное сообщение для CrazyFlasher Найти все сообщения от CrazyFlasher
  № 5  
Ответить с цитированием
CrazyFlasher
 
Аватар для CrazyFlasher

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
Код:
var vx:Number;
var vy:Number;
var d:Number;
var speed:Number = 5;
var target:MovieClip = _root;

mc.onEnterFrame = function(){
	vx = target._xmouse - mc._x;
	vy = target._ymouse - mc._y;
	d = Math.sqrt(vx*vx + vy*vy);
	
	smooth();
	if(Math.abs(mc._x - target._xmouse) > 5 || Math.abs(mc._y - target._ymouse) > 5){
		mc._x += vx / d * speed;
		mc._y += vy / d * speed;
	}
}

function smooth(){
	var newD:Number = Math.sqrt((mc._x - target._xmouse)*(mc._x - target._xmouse) + (mc._y - target._ymouse)*(mc._y - target._ymouse));
	speed = newD / 10;
}
накидал по-быстрому вроде работает
__________________
Flash Developer
Папа TDP4 Team Battle

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
http://www.flasher.ru/forum/showpost...96&postcount=4
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 04.12.2007, 01:49
peresmeshnik вне форума Посмотреть профиль Отправить личное сообщение для peresmeshnik Найти все сообщения от peresmeshnik
  № 7  
Ответить с цитированием
peresmeshnik
 
Аватар для peresmeshnik

Регистрация: Oct 2003
Адрес: СПб
Сообщений: 200
Отправить сообщение для peresmeshnik с помощью ICQ
Всем огромное спасибо!!! Как раз то, что было нужно.
Код:
		this._x = this._parent._xmouse;
Только не понял - для чего был нужен "_parent"? Я его удалил, все равно работает.

Старый 04.12.2007, 03:56
peresmeshnik вне форума Посмотреть профиль Отправить личное сообщение для peresmeshnik Найти все сообщения от peresmeshnik
  № 8  
Ответить с цитированием
peresmeshnik
 
Аватар для peresmeshnik

Регистрация: Oct 2003
Адрес: СПб
Сообщений: 200
Отправить сообщение для peresmeshnik с помощью ICQ
Если это возможно, то еще один вопрос как раз по теме:
Нужно сделать то же самое, но только для увеличения/уменьшения муви клипа, т.е. проблему можн рассмотреть след образом - есть меню, при движении курсора над элементами они должны соответственно увеличиваться(при приближении) и уменьшаться (при отдалении курсора).
Я понимаю, что это несложно, но мне никак не адаптировать этот код под меню...

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

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

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


 


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


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