以前に日記で書いたのですが、tonyuでfor文を記述するさいの注意点を書いておこうと思います。
まず、TonyuのFor文は遅いです。ご注意ください。
で、for文を書くのは通常オブジェクトにしましょう。決して、フレームマネージャーに記述してはいけません。もっとも、onBeforMove()とonAfterMoveなどの毎フレーム実行するメソッド限定の縛りです。
理由は、上記のメソッドでは、メソッドが完結するまでフレームが進まないからです。
サンプルがないと分かりづらいと思いますので、そのうちサンプルをアップする…と思います。たぶん、maybe…汗。
動作の順序は以下のようになっています。
onBeforeMove()完結
↓
各オブジェクトの一フレーム
↓
onAfterMove()完結
↓
最初に戻る
通常オブジェクトに書かれたfor文は、いくら量の多いループでも動作速度を犠牲にしながらも上のループに沿って一フレームずつ動作します。
しかし、onBeforeMove()などのメソッドでは、そのメソッド内の全てのプログラムが終わるまで、他のオブジェクトが動作できないのです。
なわけで、10000回ぐらいのループをしたらドボン☆
毎フレーム、全てのオブジェクトにwait(10000)がかけられるようなものです。こんなんじゃ、まともなゲームは作れません。
ちなみに、for文の実行速度そのものは、通常オブジェクトよりもonBeforeMoveなどのほうが早いように思われます。ただし、計測結果などの根拠はありません。