Progression 4 では、新機能との整合性を取るためなどの理由で、いくつかの API の名称変更や保持するクラスの変更などが行われています。このエントリーでは特にハマりやすいと思われる個所をご紹介します。
- Progression インスタンスにアクセスするためには?
ver 4 では Progression インスタンスへのアクセスは全て manager という名称のメンバに統一されました。 - SceneObject で progression.container とできない?
ver 4 では、仕様上各シーン毎に関連付けられるべき DisplayObjectContainer が変動する可能性があるようになったため、SceneObject クラス自体に container プロパティが追加されました。そのため、単純に container と設定するだけで使用可能です。
より詳しい解説 : 独学ActionScript
- コマンドでのイベント処理方法は?
ver 4 では before() / after() メソッドのような JQuery 的な記述は廃止され、全て initObject 経由のイベントハンドラメソッドで設定する方式に統一されました。 - コマンドのエラー処理の方法は?
ver 4 ではエラーの発生を補足するために特別な catchError イベントハンドラメソッドが用意されています。エラー処理を行った後、その後の処理をそのまま行うのであれば this.executeComplete() を、中断するのであれば this.interrupt() を実行してください。終了処理を何もしない場合には onError イベントハンドラメソッドが実行されます。 - コマンドの中断処理についてのポリシー変更について
ver 3 では中断処理自体に非同期処理が設定可能でしたが、ver 4 ではその仕様を排して即中断処理を完了するように変更しました。この変更によって interrupt() 実行後、次の行ですぐに中断を完了した前提の処理が行えるようになります。 - Func コマンドのイベント待ちの設定方法は?
ver 3 で省略系の Func コマンドを設定した場合、
this.dispatcher = hoge;
this.eventType = Event.COMPLETE;
のように設定していましたが、ver 4 では以下のようにシンプルに変更されました。
this.listen( hoge, Event.COMPLETE ); - mySceneObject.sceneInfo.data がなくなった?
ver 4 では、新しくシーン毎のデータを管理する専門の DataHolder クラスが追加されました。そのため今後は mySceneObject.dataHolder.data とアクセスする必要があります。 - クエリの挙動がおかしい?
ver 3 ではそれぞれのシーン毎に個別の SceneInfo インスタンスを持っていたため、独立したクエリ値を持っていましたが、ver 4 ではシーンツリー全体で SceneInfo インスタンスを共用する方式に変更となったため、変更した内容は全てに波及することになります。
[...] This post was mentioned on Twitter by 独学ActionScript. 独学ActionScript said: RT @nium: blog.progression.jp – [小ネタ] Progression 4 でハマりやすいポイント http://j.mp/2Ssgcr [...]
[...] [小ネタ] Progression 4 でハマりやすいポイント | blog.progression.jp [...]
[...] [小ネタ] Progression 4 でハマりやすいポイント | blog.progression.jp [...]
[...] での変更点でハマりやすいポイントが、下記のページでまとめられています。 [小ネタ] Progression 4 でハマりやすいポイント 他にもいくつかポイントがあるので、これは要チェックです。 [...]