![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2004
Сообщений: 2
|
Есть MovieClip. Нужно сделать так что бы при нажатии на нем мышой, было так: тянем мышу вверх - он крутится по часовой стрелке, тянем вниз - против. (при нажатой мыше, отпускаем кнопку на мыше (в любом месте) и все повороты заканчиваются)...
|
|
|||||
|
Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
|
silin - не знаю, как у тебя, а я набросал такой прототипчик:
MovieClip.prototype.test = function() { n = 1; this.onMouseMove = function() { y2 = _root._ymouse; }; this.onRollOver = function() { this.onMouseDown = function() { this.onEnterFrame = function() { n *= -1; if (n>0) { y1 = _root._ymouse; } if ((y2-y1)>0) { this._rotation += 30; } if ((y2-y1)<0) { this._rotation += -30; } if ((y2-y1) == 0) { this._rotation += 0; } }; this.onDragOut = function() { delete this.onEnterFrame; delete this.onMouseDown; }; }; this.onMouseUp = function() { delete this.onEnterFrame; delete this.onMouseDown; }; }; }; mc.test();//mc - крутящ.мувик. |
|
|||||
|
2Штрек: ты, как обычно, прав - тока проще надо быть
MovieClip.prototype.crut_vert=function(){ this.onPress = function() { pressed = 1; }; this.onRelease = this.onReleaseOutside =function() { dir =pressed = 0; }; this.onMouseMove = function() { if (pressed) { dir = (y-_ymouse); } y = _ymouse; }; this.onEnterFrame = function() { this._rotation += dir; }; } mc.crut_vert(); |
|
|||||
|
Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
|
Проще не всегда правильно!
У тебя при остановке мыши крутёж продолжается, что не есть строгое решение задачки. Если прикинуть - зачем задачка, то я так понимаю - повращать мышом предмет, закреплённый в одной точке. ![]() |
|
|||||
|
Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
|
Ещё досмотрел - у тебя при onDragOut -
крутёж продолжается. ![]() |
|
|||||
|
Регистрация: Dec 2002
Адрес: Сочи
Сообщений: 2,819
|
Цитата:
![]() |
|
|||||
|
разрешите доложить: все замеченные недоделки устранены
MovieClip.prototype.crut_vert=function(){ this.onPress = function() { y=_ymouse; this.onEnterFrame = function() { dir = (y-_ymouse); y = _ymouse; this._rotation += dir/10;//по вкусу } }; this.onDragOut=this.onRelease = this.onReleaseOutside =function() { delete this.onEnterFrame;}; } mc.crut_vert(); |
![]() |
Часовой пояс GMT +4, время: 12:08. |
|
|
« Предыдущая тема | Следующая тема » |
|
|