Показать сообщение отдельно
Старый 12.01.2010, 18:52
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 6  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код AS1/AS2:
var posX;
var posY;
var step = 3
this.onMouseDown = function() {
	posX = this._xmouse;
	posY = this._ymouse;
};
this.onEnterFrame = function () {
	var dx = posX-player._x;
	var dy = posY-player._y;
	var angle = Math.atan2(dy, dx);
	var dist = Math.sqrt(dx*dx+dy*dy);
	if (dist>step) {
		tgtX = player._x+step*Math.cos(angle);
		tgtY = player._y+step*Math.sin(angle);
		var timeDx = tgtX-player._x;
		var timeDy = tgtY-player._y;
		direction = Math.atan2(timeDy, timeDx);
		var dAngle = dAngleDegree(direction*180/Math.PI, player._rotation);
		player._rotation += dAngle*.2;
		player._x = tgtX;
		player._y = tgtY;
	}
};
function dAngleRadian(a1, a2) {
	var da = a1-a2;
	if (da>Math.PI) {
		da = -Math.PI*2+da;
	} else if (da<-Math.PI) {
		da = Math.PI*2+da;
	}
	return da;
}
function dAngleDegree(a1, a2) {
	var da = a1-a2;
	if (da>180) {
		da = -360+da;
	} else if (da<-180) {
		da = 360+da;
	}
	return da;
}
function degree(a) {
	return a/Math.PI*180;
}
function radian(a) {
	return a/180*Math.PI;
}
— это в кадр вставляйте. На сцене должен быть клип с instance name "player".

Или вам нужно еще проще?
__________________
hauts.ru