Форум 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=88705)

baka 29.11.2006 00:35

плавный поворот мувика за курсором мыши
 
Мне нужно сделать чтобы муви клип плавно поворачивался в сторону курсора (ну типа _rotation+speed, _rotation-speed)

Покачто получилось только "приклеить" мувик к курсору:
Код:

onClipEvent (enterFrame) {
        Xdistance = _root._xmouse-_x;
        Ydistance = _root._ymouse-_y;
        radAngle = Math.atan2(Ydistance, Xdistance);
        _rotation = int((radAngle*360/(2*Math.PI))+90);               
}

Пытался сделать плавный поворот - получалось только на четверти круга -_-
Может есть исходники подобной штуки или кто делал что либо подобное - помогите с кодом.

motor4ik 29.11.2006 01:03

http://www.flashblog.ru/?p=204

baka 29.11.2006 03:07

Цитата:

Сообщение от motor4ik

ты прочитай сначала мой пост внимательно
там по ссылке тожесамое что я сделал уже, мгновенный поворот, тожесамое что у меня в коде в первом посте
мне нужно сделать плавный поворот

iNils 29.11.2006 09:42

Код:

this.follow = function () {
        var dx:Number = this._xmouse - this.clip._x;
        var dy:Number = this._ymouse - this.clip._y;
        var angle1:Number = Math.atan2 (dy, dx) * (180 / Math.PI);
        var angle2:Number = this.clip._rotation;
        if (angle2 < 0) {
                angle2 += 360;
        }
        if (angle1 < 0) {
                angle1 += 360;
        }
        var a:Number = angle2 - angle1;
        if (a > 180) {
                a -= 360;
        } else if (a < -180) {
                a += 360;
        }
        a *= this.speed;
        if (Math.abs (a) > 0.01) {
                this.clip._rotation -= a;
        } else {
                this.clip._rotation = angle1;
                delete this.onEnterFrame;
        }
};
this.onMouseMove = function () {
        //// mc - имя клипа который крутится за курсором
        this.clip = mc;
        //// скорость поворота, значения:
        ////        [speed = 0] - вращение без задержки
        ////        [0 < speed < 1] - чем меньше, тем плавнее поворот
        ////        [speed = 1] - вращение без задержки
        this.speed = 0;
        this.onEnterFrame = follow;
};



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

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