Показать сообщение отдельно
Старый 27.07.2007, 02:23
Kikasso вне форума Посмотреть профиль Отправить личное сообщение для Kikasso Найти все сообщения от Kikasso
  № 11  
Ответить с цитированием
Kikasso
 
Аватар для Kikasso

Регистрация: Oct 2006
Адрес: spb.ru
Сообщений: 3,221
_rotation - это геттер/сеттер, оно не може быть больше 180 и меньше -180
Код:
_rotation = 181;
trace( _rotation ); // -179
Так что добавьте мувику свойство, отвечающее за поворот, и управляйте через него.
Код:
// черточка и табло
mc = createEmptyMovieClip('mc', 1);
mc.lineStyle( 5, 0xFF0000 );
mc.lineTo( 0, 100 );
mc._x = Stage.width/2;
mc._y = Stage.height/2;
var xpoz = Stage.width;
a_txt = createTextField( 'a_txt', 2, xpoz - 20, 10, 10, 10 );
a_txt.autoSize = 'right';
r_txt = createTextField( 'r_txt', 3, xpoz - 20, 30, 10, 10 );
r_txt.autoSize = 'right';

////////////////////////////////////////////////
// задаем геттер
function getAngle(){
	return this.__angle ||  this._rotation;	
}
function setAngle(val){
	this.__angle = val;
	this._rotation = val;
}
mc.addProperty( "angle",  getAngle, setAngle );
/////////////////////////////////////////////////

// смотрим как работает
w = 10;
stopped = true;

function rotateMC(){
	mc.angle += w;
	if(mc.angle > 720 || mc.angle < -720 ) w *= -1;
	a_txt.text = mc.angle;
	r_txt.text = mc._rotation;
}
function onMouseDown(){
	onEnterFrame = stopped ? rotateMC : null;
	stopped = !stopped;
}
onMouseDown();


Последний раз редактировалось Kikasso; 27.07.2007 в 02:28.