スライダーで横に動かす |
スライダーでカメを横に動かしてみよう。 |
カメをそうじゅうする方法を考えるとき、発展的に複数のカメが動き回る作品に利用できる方法で考えていきましょう。
複数のカメが動くというのは、並列処理です。カメをクリックオンして動かすようにプログラムを考えていくと、並列処理になります。 |
イベント処理は、コンピュータに負担のかかる処理なので、イベント処理で別のプロセスを呼ぶような使い方をすると処理が追いつかなくなりフリーズすることがあります。この問題を簡単に避けるために、カメをクリックオンで起動するプログラムにして、イベントをそのカメの中にあるイベントだけで行います。 |
|
|
スライダーで横に動かす
スライダーで横に動かす.mwx |
を左クリックすると、かめ1がクリックオンされてカメの中のプログラムが並列処理で動きます。
の位置が動かないようにしたいときはで固定します。
|
|
カメで並列処理
|
を右クリックして、設定を開くと「横の位置は ハンドル」と書かれた命令が無限に実行されるようになっています。
|
|
|
衝突イベント
|
かめ1を右クリックして設定を開き、「前へ 0」を書き加えます。これでかめ2にぶつかったとき衝突イベントが発生します。
を左クリックして、衝突イベントの中身を書きます。
しょうとつ命令に 方向 ぶつかったかめ 角度は 向き たのむ ぶつかったかめ「クリックオン」 と書きます。
しょうとつ命令に書けるのは、同じプロセスの中への命令です。他のカメや手順の命令を書くとフリーズします。
そこで、他のカメに命令したいときは、命令を書かずにクリックオンとして新しい別のプロセスにします。
|
|
衝突されたのプロセス
|
かめ2を右クリックして設定を開き、衝突イベントでクリックオンされる命令を書きます。
ここで、ぶつかったときの角度を使って、はねかえさせられるような動きにします。
|
|