今回はWEB用スクラッチ3.0のタイマー機能を使い、ストップウォッチ機能と3Dロボットの動きを連動させてみようと思います。スクラッチのタイマー機能である指定の秒数になるとプログラム全体をストップさせる処理にしています。
スクラッチの起動と3Dロボットの準備
3Dロボット(クムクム)はクムクムのホームページかココをクリックして起動します。
次に画面左下の拡張機能を追加をクリックし3Dロボットクムクムをロードします。
しばらくUnityの読み込みを行いその後画面にロボットが表示されます。
スクラッチにはタイマーを使うブロックがありますので、これを利用してスプライトに時間を表示させましょう。
タイマーブロックを使ってプログラミングを行う
プログラムの動き
スタートフラグをクリックするとクムクム3Dロボットがタイマーの秒数をストップウォッチのように数え10秒まで数えると「おわり」と言ってタイマーとすべてのプログラムを止めます。
もうスタートフラグをクリックすると秒数がリセットされて0から秒数のカウントが開始されます。
秒数を1秒ごとにしゃべらせるために
例えば、簡単にずっとで単純に秒数をしゃべらせてしまう下記のようなプログラムを作った場合、プログラムは「ずっと」ブロックを高速に回転させてしまい、なんどもなんども同じ秒数をしゃべらせてしまうことになります。
これはプログラムでいう「ビジーループ」の状態になってしまい、どんどん処理がたまっていってしまうことにもなりますので、ここでは秒数が変化したら…つまり、前の秒数と今の秒数が変化したときだけしゃべるという処理にして、ここでは1秒単位でしゃべるように処理をしています。
今日のプログラミングのポイント
今日のプログラミングでは、変化を取得するために前の状態と今の状態を変数で記憶し、更新をしていく処理を使いました。
また、スクラッチでは、メッセージによって一定の間隔で動作を行うように作ってみました。
※20230418スクラッチタイマー 止める104/304 (1) スクラッチタイマー40/810 (7)
コメント