Показать сообщение отдельно
Старый 15.01.2010, 22:05
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 9  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Да пожалуйста. Как базовый класс ставьте.
Код AS3:
package  
{
	import flash.display.MovieClip;
	import flash.display.Shape;
	import flash.display.Sprite;
	import flash.events.MouseEvent;
 
	/**
	 * ...
	 * @author FluFme
	 */
	public class NewClass extends MovieClip
	{
		private var shape:Shape;
 
		public function NewClass() 
		{
			super();
			var spr:Sprite = new Sprite(); //для реакции мышки на всю зону покрытия
			spr.graphics.beginFill(0, 0);
			spr.graphics.drawRect(0, 0, 1000, 1000);
			spr.graphics.endFill();
			addChild(spr);
 
			shape = new Shape();
			shape.graphics.lineStyle(3, Math.random() * 0xFFFFFF);
			shape.graphics.moveTo(0, 50);
			shape.graphics.lineTo(0, 0);
			shape.graphics.lineTo( -20, 20);
			shape.graphics.moveTo(0, 0);
			shape.graphics.lineTo(20, 20);
			addChild(shape);
			shape.x = 200;
			shape.y = 200;
 
			stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
		}
 
		private function onMouseMove(e:MouseEvent):void 
		{
			e.updateAfterEvent();
			//+90 потому что стрелку нарисовал смотрящей вверх, а надо было рисовать в другую сторону )
			shape.rotation = Math.atan2(stage.mouseY - shape.y, stage.mouseX - shape.x) * 180 / Math.PI + 90;
		}
 
	}
 
}