Показать сообщение отдельно
Старый 25.06.2012, 14:50
Rembrant вне форума Посмотреть профиль Отправить личное сообщение для Rembrant Найти все сообщения от Rembrant
  № 6  
Ответить с цитированием
Rembrant
 
Аватар для Rembrant

блогер
Регистрация: Sep 2010
Сообщений: 82
Записей в блоге: 2
отрисовываю и ставлю таймер:
Код AS3:
	private static var _count:uint = 4;
	private static var _view:DisplayObjectContainer;
	private static var _bitmapData:BitmapData;
	private static var _bitmap:Bitmap;
	private static var _timer:Timer;
 
	public static function doShake(view:DisplayObjectContainer):void
	{
		_view = view;
		_bitmapData = new BitmapData(stageWidth, stageHeight, true, 0xFFFFFF);
		_bitmapData.draw(_view);
		_bitmap = new Bitmap(_bitmapData);
		_view.parent.addChild(_bitmap);
		_view.visible = false;
 
		_timer = new Timer(50, _count);
		_timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true);
		_timer.start();
	}
и двигаю по таймеру:
Код AS1/AS2:
	private static function timerHandler(event:TimerEvent):void
	{
		if (_timer.currentCount == _count)
		{
			_view.parent.removeChild(_bitmap);
			_view.visible = true;
			return;
		}
 
		if (_timer.currentCount % 2 != 0)
			_bitmap.y -= 20;
		else
			_bitmap.y += 20;
	}
вот и всё.