![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2010
Сообщений: 2
|
Здравствуйте, хочу добиться эффекта, как на сайте http://arminmorbach.com/.
Проблема в следующем: как заставить останавливаться обьекты? Обьекты должены двигаться в противоположную сторону не только, когда над ним курсор.(mouseEvent.MOUSE_MOVE. не подходит) А вот останавливаться, когда остановился курсор (вообще в любой точке сцены). Мне подсказали, что можно завести еще переменную, где хранить старую позицию мыши И в обработчике проверять, если мышь не сместилась относительно этого положения, то не двигаем обьект. если сместилась, то двигаем. Но как это расписать не понимаю. addEventListener(Event.ENTER_FRAME, move_s); addEventListener(Event.ENTER_FRAME, move_sss); addEventListener(Event.ENTER_FRAME, move_ssss); addEventListener(Event.ENTER_FRAME, move_sssss); var skorost:int = 200; var skorost2:int = 70; var skorost3:int = 80; var skorost4:int = 300; function move_s(event:Event):void{ var posX:Number = -mouseX+(stage.stageWidth/2); var posY:Number = -mouseY+(stage.stageHeight/2); mcv.x+=posX/skorost; mcv.y+=posY/skorost; } function move_sss(event:Event):void{ var posX:Number = -mouseX+(stage.stageWidth/2); var posY:Number = -mouseY+(stage.stageHeight/2); mcv2.x+=posX/skorost2; mcv2.y+=posY/skorost2; } function move_ssss(event:Event):void{ var posX:Number = -mouseX+(stage.stageWidth/2); var posY:Number = -mouseY+(stage.stageHeight/2); mcv3.x+=posX/skorost3; mcv3.y+=posY/skorost3; } function move_sssss(event:Event):void{ var posX:Number = -mouseX+(stage.stageWidth/2); var posY:Number = -mouseY+(stage.stageHeight/2); mcv4.x+=posX/skorost4; mcv4.y+=posY/skorost4; } ![]() |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 4
|
Можно повесить mouseEvent.MOUSE_MOVE на stage. И обьекты будут двигаться не только когда над ними курсор.
Последний раз редактировалось magistr__; 09.11.2010 в 17:05. |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 2
|
Действительно теперь все работает, но как сделать так, чтобы они не сразу останавливались. (а то очень резко получается) А то сейчас как-то мерзко они замирают. Как можно добавить плавноq остановки?
|
|
|||||
|
Регистрация: May 2010
Адрес: пространство в положении
Сообщений: 219
|
через EnterFrame, через таймеры, через твины, еще как то = ) выбирайте сами
|
|
|||||
|
Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
|
Вам про MOUSE_MOVE уже вчера неоднократно говорили.
|
|
|||||
|
Цитата:
Вам в программе нужно разделить просчёт координат, в которые должны попасть клипы, и перемещение клипов в эти координаты. Заведите для каждого клипа экземпляр класса Tween и при изменении положении расчитывайте новые координаты и пихайте их в свойства работающих Tween'ов. Главное не создавать экземпляры твинов на лету. Сборщик мусора питается твинами, на которых нету ссылок. |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:00. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|