Показать сообщение отдельно
Старый 19.08.2012, 15:23
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 24  
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Код AS3:
package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.KeyboardEvent;
	import flash.ui.Keyboard;
 
	public class Main extends Sprite 
	{
		private var _auto:Sprite;
		private var _keyW:Boolean = false;
		private var _keyS:Boolean = false;
		private var _keyA:Boolean = false;
		private var _keyD:Boolean = false;
		private var _speed:Number = 2;
 
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			//// рисуем "машинку"
			_auto = new Sprite();
			_auto.graphics.beginFill(0x666666);
			_auto.graphics.drawRoundRectComplex(0, 0, 50, 100, 10, 10, 0, 0);
			this.addChild(_auto);
			_auto.x = 250;
			_auto.y = 250;
			//// слушатели клавиатуры
			this.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
			this.stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
			//// слушатель ентерфрейм
			this.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
		}
 
		private function enterFrameHandler(event:Event):void 
		{
			if (_keyA) _auto.x -= _speed;
			if (_keyD) _auto.x += _speed;
			if (_keyW) _auto.y -= _speed;
			if (_keyS) _auto.y += _speed;
		}
 
		private function keyUpHandler(event:KeyboardEvent):void 
		{
			switch(event.keyCode)
			{
				case Keyboard.W : _keyW = false;
				break;
				case Keyboard.S : _keyS = false;
				break;
				case Keyboard.A : _keyA = false;
				break;
				case Keyboard.D : _keyD = false;
				break;
			}
		}
 
		private function keyDownHandler(event:KeyboardEvent):void 
		{
			switch(event.keyCode)
			{
				case Keyboard.W : _keyW = true;
				break;
				case Keyboard.S : _keyS = true;
				break;
				case Keyboard.A : _keyA = true;
				break;
				case Keyboard.D : _keyD = true;
				break;
			}
		}
	}
}
__________________
Reality.getBounds(this);