Myタスクシステムレポート3

昨日の続きです。

「TaskList.as」について2

最後に、タスクリストに登録されている全タスクの処理関数を実行する、
メインとなるループのメソッドである
startOnEnterFrame()
についてです。
このメソッドも例のごとく

TaskList.startOnEnterFrame(stageMc);

というように、ムービークリップを一つ指定してonEnterFrameを定義します。
基本的にはゲーム全体を通して1度だけ定義します。
ソースを見たら分かるとおり、
for文でタスクリストに登録されているタスクの処理関数を実行するメソッドを1つ1つ実行しています。
ゲーム全体で1つのループしか存在しないので、
全体の処理を一時停止することも簡単にできそうです。


おまけとして、一番下のtraceTaskListメソッドですが、
その段階でのタスクリストの状態を出力します。
どんなものが出力されるのか知りたい場合、
タスクの追加、除去メソッドでコメント化されているこのメソッドのコメントをはずして実行してみてください。




かなり大雑把な説明となってしまいましたが、
ひとまずタスクシステムの基本的な構造を書きました。
次回はこのタスクシステムを使ったサンプルを見ていこうと思います。