« そろそろwindows7 | Home | 目指せ!王子様 »

Oct 192009

Query周りとか

日曜はワイフとマイソンが遊びに出かけたので、これまでの処理を再度見直してみる。
これまでウニャウニャにしてた部分は
SceneEvent.SCENE_QUERY
のイベントに絡んだコマンド処理の部分。

Query変化時のProgressionのステータスとしては
1)progression.running==true
2)progression.running==false (既にそのシーンにいる)
の2パターンが存在

1)の場合はloadイベント後にSceneEvent.SCENE_QUERYが発動するのでSceneObjectにaddCommandしてやれば特に気にすることは無い。
問題は2)の場合、SceneObjectのコマンドで制御できないので、独自にSerialListで管理するわけになるのだけど、その際の_onGoto時との連動部分。

簡単に言うと、常にコマンドは別で用意したSerialListで管理して、それをProgressionの状態によって、SceneObjectに追加するか、executeさせるかを切り分け。_onGoto時には、そのSerialListをinterruptしてリセットという処理をSceneObjectのコマンドに追加。

ってな感じでシンプルに制御できた。

これまでSceneObjectのコマンドと、SceneEventに絡まないCommandを別管理してややこしいことになっていたのだけど、この辺がかなりスリムになってスクリプト的に見通しもよくなったし、動作も軽快になった。

やっぱ日々の業務に追われない時間の中での作業時間って必要だ。

#Progression4でその辺どうなってるのか、知らないけど・・・(ゴメンナサイ

Leave a comment

Search and Archives