Progressionクラスベース :: WCAN mini AS vol6 Progression ワークショップ in なごや(後半)

後半がはじまりまた、
ここから本番、クラスベース

Progressionのパネルからクラスベースで新規作成

ここまではコンポーネントベースと同じですね

index.flaを開く

  • ドキュメントクラス

  • 起動用のコード

Index.as(DocumentClass)

// Progression インスタンスを作成します。
_prog = new Progression("index", stage, "IndexScene");

Commandは便利

  • 非同期処理ばっちこい
  • 処理割り込みばっちこい


ex): start → (3秒) → complete

new SerialList(0,
    new Trace("start"),
    new Wait(3000),
    new Trace("complete")
).execute;


ex): 1フレームから最後まで

new DoTweenFrame(this, 1, totalFrames);

重要なメソッド

protected override function _onLoad():void {}
protected override function _onInit():void {}
protected override function _onGoto():void {}
protected override function _onCastAdded():void {}
protected override function _onCastRemoved():void {}

子作り(子シーンの作り方)

シーンクラス内でaddChildするだけ。やりやすい

addChild( new GalleryScene( "gallery" ) );
addChild( new ContactScene( "contact" ) );

画像を読み込んでアニメーション

addCommand(
    // 画像を読み込む
    new Func( _loader, _loader.load, [ new URLRequest( _url ) ], 0, _loader, Event.COMPLETE ),
    
    // アニメーションを実行する
    new DoTweener( this, {
        alpha:1,
        time:1
    })
);

移動制限を解除

prog.autoLock = false;

falseすでに動いているコマンドに対して中断処理が走るので危険ちゃー危険

  • ex)Waiteでも中断
new Wait(3000)
//やってるときに中断処理を行うと、3秒経過していなくても中断します
  • ex): アニメーションでも中断、でもアニメーションが途中で、、なので危険
new DoTweener( this, {alpha:1,time:1})