Вход

Просмотр полной версии : как проверить сделал ли клип полный поворот?


Chuck607
24.11.2009, 21:28
Доброго времени суток! у меня такой вопрос, как проверить сделал ли клип полный поворот на 360 градусов?

spooner
24.11.2009, 21:34
Ну вы его через _rotation поворачиваете? Через него и проверяйте, повернулся ли он на 360.

Chuck607
24.11.2009, 21:38
Да но в trace(clip._rotation); нет 360 градусов

Zik.
24.11.2009, 21:45
var realRotation:Number = 0;
myClip.onEnterFrame = function():Void {
this._rotation++
realRotation++
if (realRotation >= 360) {
//полный поворот был совершен
realRotation = 0
}
}
Думаю, под себя сделать сможете

Chuck607
25.11.2009, 13:27
Не получается, дело в том что мой клип поворачивается мышой:
var rotate:Number = Math.atan2(_ymouse-my_clip._y, _xmouse-my_clip._x)+Math.PI/2;
my_clip._rotation = (180/Math.PI)*rotate;
Как можно проверить сделал ли клип полный поворот на 360 ?

Zik.
25.11.2009, 14:00
может попробовать так

if (lastRotation > my_clip._rotation) {
if (lastRotation - my_clip._rotation > 0) {
realRotation += lastRotation - my_clip._rotation;
}
}
if (lastRotation < my_clip._rotation) {
if (my_clip._rotation - lastRotation > 0) {
realRotation += my_clip._rotation - lastRotation;
}
}

То есть, если данный_угол - прошлый_угол больше нуля, то тогда мы продвигаемся вперед и можно плюсовать realRotation

Chuck607
25.11.2009, 14:22
Хм.. будем пробовать! спасибо !!

Работает !!!! ;)

Zik.
25.11.2009, 14:29
Не забудьте также сделать, что если меньше нуля, то реальный угол оотнимается

if (lastRotation > my_clip._rotation) {
if (lastRotation - my_clip._rotation > 0) {
realRotation += lastRotation - my_clip._rotation;
} else {
realRotation -= lastRotation - my_clip._rotation;
}
}
if (lastRotation < my_clip._rotation) {
if (my_clip._rotation - lastRotation > 0) {
realRotation += my_clip._rotation - lastRotation;
} else {
realRotation -= my_clip._rotation - lastRotation;
}