package {
	import jp.progression.casts.*;
	import jp.progression.commands.display.*;
	import jp.progression.commands.lists.*;
	import jp.progression.commands.net.*;
	import jp.progression.commands.tweens.*;
	import jp.progression.commands.*;
	import jp.progression.data.*;
	import jp.progression.events.*;
	import jp.progression.executors.*;
	import jp.progression.scenes.*;
	//
	import flash.display.Sprite;
	import scenes.*;
	import pages.*;
	import ui.*;
	/**
	 * ...
	 * @oshige ...
	 */
	public class IndexScene extends SceneObject {
		private var scenePage:IndexPage;
		private var uiPanel:CastSprite;
		public function IndexScene() {
			// このシーンタイトル
			title = "Hello_Scenes";
			//このシーンの中身
			scenePage = new IndexPage();
			//子シーンを追加する
			var sceneA:SceneA = new SceneA();
			sceneA.name = "sceneA";
			addScene(sceneA);
			var sceneB:SceneB = new SceneB();
			sceneB.name = "sceneB";
			addScene(sceneB);
			//シーンナビゲートパネル
			uiPanel = new UIPanel();
			uiPanel.x = (stage.stageWidth- uiPanel.width)/2;
			uiPanel.y = stage.stageHeight + 50;
		}
		//indexシーンは1度しか読み込みが行われないので最初の1回しか実行されない
		protected override function atSceneLoad():void {
			//共通のuiを追加する
			addCommand(
					   new AddChild(stage, uiPanel),
					   new DoTweener( uiPanel, { y:stage.stageHeight - 60, time:1 } )
			);
		}
		//シーンに入る enterScene
		protected override function atSceneInit():void {
			//シーンにコンテンツを追加する
			addCommand(
					   new AddChild(container, scenePage)
			);
		}
		//シーンを抜ける exitScene
		protected override function atSceneGoto():void {
			//シーンからコンテンツを取り除く
			addCommand(
					    new RemoveChild(container, scenePage)
			);
		}
		//indexシーンからは子シーンへ動くだけで外へ出ないので1度も実行されない。
		protected override function atSceneUnload():void {
			addCommand(
			);
		}
	}
}
