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

блогер
Регистрация: Nov 2007
Адрес: Киев
Сообщений: 557
Записей в блоге: 2
Хм. Интересная фигня. У меня еще такое вылезло — если заключить ваш код в onMouseDown:
Код:
onMouseDown=function(){
mc.onEnterFrame = function () {
//	this._rotation = 45;   // *1
	for (var i=0; i<400; i++) {   // *2
		this._x += 1; this._y += 1;
		if (this.hitTest(_root.cross._x, _root.cross._y, true)) {
			delete this.onEnterFrame;
			break;
		}
	}   // *3
}
}
тоже не работает. А без onMouseDown работает.

Вообще, работая с хитТестом лучше менять координаты, которыми тестишь, а не координаты мувика. Я для себя правилом сделал.
Типа так:
Код:
	mc.onEnterFrame = function() {
		this._rotation = 45;  // *1
		var testx = _root.cross._x;
		var testy = _root.cross._y;
		var sx = testx;
		var sy = testy;
		for (var i = 0; i<400; i++) {			// *2
			testx -= 1;
			testy -= 1;
			if (this.hitTest(testx, testy, true)) {
							delete this.onEnterFrame;
				break;
			}
		}		// *3
		this._x += sx-testx;
		this._y += sy-testy;
		trace(this._x);
	};
Хотя если помучить, можно и эту схему заставить криво работать. Хотя бы если заключить это все в onMouseDown.