Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   затухание при перемещении (http://www.flasher.ru/forum/showthread.php?t=104205)

DJ_Baton 20.11.2007 17:10

затухание при перемещении
 
И так, распишу подробно, есть в общем мувик относительно которого исчисляются координаты (_root.smallmap), есть мувик внутри него который по этим координатам двигается (_root.smallmap.mappoint).

СКРИПТЫ В РУТЕ:
Код:

onEnterFrame = function () {
        i = 2; //скорость перемещения мувика
};

СКРИПТ В КНОПКЕ:

Код:

on (release) {
        onEnterFrame = function () {
                if (_root.smallmap.mappoint._x<216) {
                        _root.smallmap.mappoint._x = _root.smallmap.mappoint._x+i;
                }
                if (_root.smallmap.mappoint._x>216) {
                        _root.smallmap.mappoint._x = _root.smallmap.mappoint._x-i;
                }
                if (_root.smallmap.mappoint._y<5) {
                        _root.smallmap.mappoint._y = _root.smallmap.mappoint._y+i;
                }
                if (_root.smallmap.mappoint._y>5) {
                        _root.smallmap.mappoint._y = _root.smallmap.mappoint._y-i;
                }
       
        };
}

Как показано на скрипте - кнопка при нажатии запускает скрипт, если _x и _y меньше заданных координат - наращивать, если больше, уменьшать.
Таких кнопок несколько и в каждой свои координаты.

Вопрос такой, какое значение задать i что бы перемещение от данной позиции _root.smallmap.mappoint до заданной координаты происходило например за 2-3 секунды с затуханием, т.е. быстро стартовало и при приближении к заданной координате сбавляло скорость до нуля?

Заранее премного благодарен.

silin 20.11.2007 17:39

затухание с постоянной i никак не выйдет, имхо
инкремент должен быть функцией расстояния (или времени), какой это уже дело второе..
т.е. расстояние известно, количество кадров тоже, надо распределить это расстояние на эти кадры неравномерно..
см. как сделан mx.transitions.Tween, там же и функции замедления/ускорения (mx.transitions.easing)

DJ_Baton 20.11.2007 17:59

ну так вот я к чему, смотри, у меня есть
_root.smallmap.mappoint._x
_root.smallmap.mappoint._y
это и есть начальные координаты, а конечные задаются в самой кнопке
_x=216
_y=5

кто сможет написать скрипт для затухания в моей функии ?

iNils 20.11.2007 18:09

Я смотрю два плюса за отсуствие тегов для кода, DJ_Baton так ничему и не научили. Бан на месяц.


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

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