Показать сообщение отдельно
Старый 07.08.2006, 07:23
mart.in вне форума Посмотреть профиль Отправить личное сообщение для mart.in Найти все сообщения от mart.in
  № 2  
Ответить с цитированием
mart.in

Регистрация: Jul 2006
Сообщений: 51
to Seraf: конечно возможно!!! я же говорил что в той структуре, что я приводил, внутри onEnterFrame, где происходит перемотка this.gotoAndStop(fr+N), вычисляешь N пропорционально удаленности его от центра. Т.е. если мувик шириной 550 px, то N =(_root._xmouse-275)*k, здесь k - это какой-нить коэффициент. Т.к., если мышка будет в краю сцены, то за один шаг (onEnterFrame) будет мотаться сразу 275 кадров, в данном случае мувика mc, а это слишком много, поэтому k нужно сделать меньше 1. Можно просто поделить, например: N =(_root._xmouse-275)/25, ну и надо округлить все это дело либо оставить только целую часть: N =Math.ceil((_root._xmouse-275)/25), т.к. gotoAndStop мотает только на целые кадры )))
Код:
mc.stop();
MovieClip.prototype.dv_fr = function(){
this.onEnterFrame = function(){
var fr = this._currentframe;
var N =Math.ceil((_root._xmouse-275)/25);// добавилась только эта строка
this.gotoAndStop(fr+N);
}
}
mc.onMouseDown = dv_fr;
mc.onMouseUp = function() {
delete this.onEnterFrame;
}
Блин... в коде который я приводил надо было дописать всего одну строку, а ты не можешь разобраться?!?!?