Показать сообщение отдельно
Старый 07.01.2013, 17:05
samana вне форума Посмотреть профиль Отправить личное сообщение для samana Найти все сообщения от samana
  № 5  
Ответить с цитированием
samana
 
Аватар для samana

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Если вы хотите сделать управление внутри класса Beatle, то это может выглядеть примерно так (простой вариант):
Код AS3:
package  
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.KeyboardEvent;
 
	/**
	 * ...
	 * @author Samana
	 */
	public class Beatle extends Sprite 
	{
		private var keyLeft:Boolean=false;
		private var keyRight:Boolean=false;
 
		public function Beatle() 
		{
			addEventListener(Event.ADDED_TO_STAGE, addedToStage);
		}
 
		private function addedToStage(e:Event):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
 
			addEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
			addEventListener(Event.ENTER_FRAME, enterFrame);
			stage.addEventListener(KeyboardEvent.KEY_DOWN, stage_keyDown);
			stage.addEventListener(KeyboardEvent.KEY_UP, stage_keyUp);
		}
 
		private function enterFrame(e:Event):void 
		{
			if (keyLeft) x -= 5;
			if (keyRight) x +=5;
		}
 
		private function stage_keyUp(e:KeyboardEvent):void 
		{
			if (e.keyCode == 37) keyLeft = false;
			if (e.keyCode == 39) keyRight = false;
		}
 
		private function stage_keyDown(e:KeyboardEvent):void 
		{
			if (e.keyCode == 37) keyLeft = true;
			if (e.keyCode == 39) keyRight = true;
		}
 
		private function removedFromStage(e:Event):void 
		{
			removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
			removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
			removeEventListener(Event.ENTER_FRAME, enterFrame);
			stage.removeEventListener(KeyboardEvent.KEY_DOWN, stage_keyDown);
			stage.removeEventListener(KeyboardEvent.KEY_UP, stage_keyUp);
		}
 
	}
 
}
Тогда в Маин классе остаётся только добавить экземпляр класса Beatle на сцену.