【Scratch入門】タイマーの基本と使い方のポイント


※ 当ページには【広告/PR】を含む場合があります。
2020/06/04
2022/07/27
【Scratch入門】はじめてのScratchアプリ作成〜スプライトを自由に歩かせてみよう
【Scratch入門】リストの使い方〜ストップウォッチの記録を読み出す



今回はScratchで
「タイマー」 の基本的な使い方をステップを踏んで解説します。
Scratchでのタイマーとは、一つのプログラムに一つ与えられる時計のような機能を指しています。
もう少し難しく表現すると、
Scratchアプリの使う「システム変数」の一つ と言えます。
決まった時間に決まった動きをすることは、プログラムにとって非常に重要なことです。
プログラムが一つの教室だとすると、部屋の壁に掛かっている時計をみると、いま何時なのか教室の中にいる人全員が時間を共有できることができます。
そうじゃないと、チャイムが鳴っても授業の始まりなのか休み時間の終わりなのか、はたまた誤報なのか、皆さん時間が分からなくて困ってしまいます。
タイマーを使いこなすと、ゲームなどのようなより複雑なプログラムを作成することができるようになりますので、しっかりとここで理解を深めましょう。



合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選
合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchをしっかり学ぶためのオススメ書籍まとめ

タイマーの基本



冒頭でも述べたように、
1つのプログラムに与えられるタイマーは1つ です。
基本的には、このタイマーを
経過時間を読み出す ことと、 リセットする ことの2通りしかできません。
タイマー機能のブロックは
調べる エリアから取り出すことが出来ます。

合同会社タコスキングダム|蛸壺の技術ブログ


読み込んだタイマー時間は、
変数 に入れて利用する場合が多いので、ここでは 猫の時間 という変数を作成して、簡単なプログラムを作成してみます。
まず新しいプロジェクトを作成した状態で、猫のスプライトが1つだけあるところから初めます。

猫の時間 という変数は、左のブロックリストで [変数]エリア --> [変数を作る]ボタン --> [新しい変数名:]猫の時間 --> [このスプライトのみ]を選択 --> [OK] の手順で作成します。

合同会社タコスキングダム|蛸壺の技術ブログ


変数が作られると、
変数 エリアに変更がすぐに反映されます。 また変数の左のチェックボックスをチェックすると、

合同会社タコスキングダム|蛸壺の技術ブログ


のように、プログラムの画面に
[スプライト名:変数名] その時の値 が表示されるようになります。 変数の確認のときなどにチェックを付けると良いでしょう。
材料は整いましたので、以下のようにブロックを組み合わせます。

合同会社タコスキングダム|蛸壺の技術ブログ


このプログラムを
🚩 ボタンを押して起動させてみると、以下のようなプログラムになります。



なお、プログラムを止める場合には赤の
ボタンを押すと停まります。
プログラムをスタートすると同時にタイマーがリセットされ、そのタイマー時間を読み取って猫が時間を表示してくれるようになりました。


合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選

10秒数えるプログラム



先程のタイマーを読み出すだけだったプログラムを少し改造して、10秒ずつ猫が数えてくれるプログラムを作ります。

合同会社タコスキングダム|蛸壺の技術ブログ


このプログラムを動かすと以下のようになります。



先程のプログラムからの変更点は、条件分岐ブロック
もし〇〇なら△△、でなければ□□ を利用して、タイマーが10秒過ぎたときの処理を △△ の部分に、10秒過ぎない場合には □□ の文に処理を書いています。

合同会社タコスキングダム|蛸壺の技術ブログ


こうすると、タイマーが10秒になると、猫が
10秒! と言ってくれるようなプログラムになります。


合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選

複数のスプライトをタイマーで連動させる



さらにもう少しプログラムを発展させてみます。
猫のスプライトとは別にもう一つスプライトを追加します。
右下の画面の
スプライトを選ぶ からオンラインで好きなスプライトを選んでプロジェクトに追加します。 なんでも良いのですが、ここでは風船のスプライトを追加しておきます。

合同会社タコスキングダム|蛸壺の技術ブログ


この風船のスプライトに、
前回解説したランダムに画面を動くプログラム を追加します。


合同会社タコスキングダム|蛸壺の技術ブログ
【Scratch入門】はじめてのScratchアプリ作成〜スプライトを自由に歩かせてみよう

Scratchで画面内を自由に動き回るスプライトを作成します。

合同会社タコスキングダム|蛸壺の技術ブログ


このブロックプログラムによって、画面内を風船がランダムに飛ぶような動きを与えます。
次に、先程の猫のスプライトで
猫の時間 という変数を作成しましたが、同じように風船のスプライトにも 風船の時間 という名前で変数を作ります。 変数の作り方は上の内容と同じですので手順の解説は省きます。
先程の風船をランダムに飛ばすプログラムブロックの近くの別の場所に、新たに以下のプログラムブロックを追加します。

合同会社タコスキングダム|蛸壺の技術ブログ


このブロックで
風船の時間 から読み込まれた値で、8秒間だけ風船が画面にあらわれ、2秒間だけ消えたりさせています。



このプログラムのポイントとしては、猫のスプライト側でタイマーを操作することで、風船の出現したり消えたりするタイミングを決定していることにあります。
今回の例はまだまだ単純なプログラムですが、タイマーを応用することで複数なゲームなどを作成できるようになります。


合同会社タコスキングダム|蛸壺の技術ブログ【Pschool厳選】Scratchをしっかり学ぶためのオススメ書籍まとめ

まとめ



今回は、Scratchのタイマーを使ったプログラムの作成方法の基礎を解説しました。
タイマーはプログラムの各処理の同期をとるのに欠かせない重要なプログラミング手段の一つですので、しっかりとマスターしたいものです。