Показать сообщение отдельно
Старый 28.06.2016, 19:58
Bletraut вне форума Посмотреть профиль Отправить личное сообщение для Bletraut Найти все сообщения от Bletraut
  № 9  
Ответить с цитированием
Bletraut
 
Аватар для Bletraut

Регистрация: Mar 2013
Адрес: Вне пространства.
Сообщений: 567
Отправить сообщение для Bletraut с помощью ICQ Отправить сообщение для Bletraut с помощью Skype™
Цитата:
Сообщение от neonoviiwolf Посмотреть сообщение
да как может быть реализация кривая, если я просто добавляю мувик на сцену и он просто играет

Добавлено через 3 минуты
Код AS3:
package classesGame.addActionUnits.addAction
{
	import classesGame.options.OptionsUnits;
	import classesGame.userEvent.UserEvent;
	import flash.events.Event;
	import nape.phys.Body;
	import singleton.sFloor.SFloor;
 
	public class AddActionCover extends IParentCommon
	{
 
		public function AddActionCover()
		{
		}
 
		private var cover1:cover_mc = new cover_mc();
		private var cover2:cover_mc = new cover_mc();
 
		override public function init(e:Event):void
		{
			super.init(e);
 
			stage.addEventListener(UserEvent.START_FLAG_1, userEvent);
			stage.addEventListener(UserEvent.START_FLAG_3, userEvent);
			stage.addEventListener(UserEvent.PAUSE, userEvent);
			stage.addEventListener(UserEvent.PLAY, userEvent);
			stage.addEventListener(UserEvent.EMERGING_WALL, userEvent);
			stage.addEventListener(UserEvent.SHOT_WALL, userEvent);
 
			this.addChild(cover1);
			this.addChild(cover2);
			this.addEventListener(Event.ENTER_FRAME, driveAway);
		}
 
		private function driveAway(e:Event):void
		{
			if (cover1.totalFrames > cover1.currentFrame)
				stage.dispatchEvent(new UserEvent(UserEvent.CREATE_SEGMENT, true, false));
			else
			{
				stage.dispatchEvent(new UserEvent(UserEvent.CREATE_ALL, true, false));
				this.removeEventListener(Event.ENTER_FRAME, driveAway);
				cover1.visible = cover2.visible = false;
			}
		}
 
		private function userEvent(e:UserEvent):void
		{
			switch (e.type)
			{
			case "startFlag1": 
			case "emergingWall":
				this.removeEventListener(Event.ENTER_FRAME, updateCover);
				startFlag1();
				break;
			case "shotWall":
			case "startFlag3": 
				this.addEventListener(Event.ENTER_FRAME, updateCover);
				break;
			case "pause": 
				this.removeEventListener(Event.ENTER_FRAME, updateCover);
				break;
			case "play": 
				this.addEventListener(Event.ENTER_FRAME, updateCover);
				break;
			}
		}
 
		private function updateCoverOffset(e:Event):void 
		{
			cover1.y = cover2.y = bodyFloor.position.y - 2651.4;
		}
 
		private function startFlag1():void
		{
			cover1.visible = cover2.visible = true;
			cover1.gotoAndStop(1);
			cover2.gotoAndStop(1);
			//!!!
			OptionsUnits.positionWall_1 = cover1.width * 2;
			//
			cover1.y = cover2.y = -cover1.height + stage.stageHeight;
			cover1.x = 0;
			cover2.x = cover1.x + cover1.width;
			this.addEventListener(Event.ENTER_FRAME, updateCoverOffset);
		}
 
		private var bodyFloor:Body = SFloor.getSFloor.getFloor.getBody;
		private var step:uint = 0;
 
		private function updateCover(e:Event):void
		{
			cover1.x -= OptionsUnits.tempGameSpeed ;
			cover2.x -= OptionsUnits.tempGameSpeed;
 
			if (cover1.x < -cover1.width)
				cover1.x = cover2.x + cover2.width;
			if (cover2.x < -cover2.width)
				cover2.x = cover1.x + cover1.width;
 
			if (step < 51)
			{
				++step;
				cover1.gotoAndStop(uint(step / 10 + 1));
				cover2.gotoAndStop(uint(step / 10 + 1));
			}
			else step = 0;
		}
	}
}
Нужно не мувиклип отображать, а bitmap и менять у неё bitmapdata.
__________________
Я заклинаю вас действовать иначе.