Показать сообщение отдельно
Старый 01.03.2011, 10:43
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 2  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Все достаточно просто: если у вас есть формула расчета положения поля по _y, то можно сделать плавное перемещение по такому принципу:

поле._y += (нужное_положение_по_у - поле._y) / коэффициент_торможения

Где коэффициент_торможения — число от 1 (при 1 не тормозит).

Только такой расчет положения поля (я имею в виду с торможением) должен считаться по таймеру, например, или в onEnterFrame, чтобы торможение работало и после того, как отпустили бегунок.

По вашему коду как-то так должно быть:
Код AS1/AS2:
_root.onEnterFrame = function() {
    var posY = -((pole._height-150)/XodPolzuna*drag._y);
    pole._y += (posY - pole._y) / 3;
};
Что касается неправильного эффекта, который вы описали ("плавный эффект не только у динамического текстового поля, но и всего мувика"), это из-за того, что в функции _root.onEnterFrame строка "this._y -= (this._y-targY)/4" ссылается на _root. Иными словами в этой функции this = _root, а должна быть ссылка на проматываемое поле.
__________________
hauts.ru


Последний раз редактировалось Hauts; 01.03.2011 в 10:48.