Показать сообщение отдельно
Старый 10.12.2007, 12:34
Волгоградец вне форума Посмотреть профиль Отправить личное сообщение для Волгоградец Найти все сообщения от Волгоградец
  № 1  
Ответить с цитированием
Волгоградец
 
Аватар для Волгоградец

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
По умолчанию Некорректная работа Tween

Привет. Вот код перемещения клипа при клике мышкой на рабочем поле в точку клика. Проблема в следующем: при столкновении с объектом клип иногда ведет себе как должен - т.е. останавливается - а иногда как будто отскакивает - т.е. резко появляется в случайном месте экрана далеко от препятствия.
Код:
_root.onMouseDown = function (){
	c = this._xmouse;
	d = this._ymouse;
	import mx.transitions.Tween;
	var a:Tween = new Tween(ball, "_x", mx.transitions.easing.None.easeNone, ball._x, c, 1, true);
	var b:Tween = new Tween(ball, "_y", mx.transitions.easing.None.easeNone, ball._y, d, 1, true);
	ball.onEnterFrame = function (){
		if (this.hitTest(square)){
			q = this._x;
			w = this._y;
			//trace (this._x);
			//trace (this._y);
			a.stop ();
			b.stop ();
			delete this.onEnterFrame;
			if (this._x <= 300){
				this._x = q - 2;
				this._y = w - 2;
			}
			if (this._x >= 300){
				this._x = q + 2;
				this._y = w + 2;
			}
		}
	}
}
В чем проблема? Или это кривые руки?
P.S.: может кто-то подскажет другой вариант поведения клипа при столкновении.

Вот исходник:
Вложения
Тип файла: rar Tween.rar (5.4 Кб, 48 просмотров)


Последний раз редактировалось Волгоградец; 10.12.2007 в 12:36.