こちらは、スクラッチの「調べる」ブロックの中にある「タイマー」ブロックの使い方を、詳しく徹底解説しています!
「タイマー」ブロック
「タイマー」ブロックは、Scratchが内部で管理しているタイマー値を返します。
値のブロック
スクラッチのブロックには、役割に応じたブロック形状の決まりがあります。
ブロックの形状については、「Scratchのブロックの種類と役割について」をご確認ください。
「タイマー」ブロックは、値ブロック(Reporter Block)に該当し、楕円形の形状をしています。
こちらには、数値や文字列といった、何らかの値を維持するブロックで、プログラミングの世界では「変数」と呼ばれるものです。
「タイマー」ブロックの中の値を確認したい場合は、「タイマー」ブロックをクリックしましょう。
クリックすると、「タイマー」ブロックの中の値を確認できます。
「タイマー」ブロックの使い方
それでは、「タイマー」ブロックの使い方を見ていきましょう。
こちらは、3秒の時間当てゲームです。
「緑の旗が押されたとき」ブロックを使って、緑の旗がクリックされたときに、3秒の時間当てゲームを開始しています。
まず、「〇と〇秒言う」ブロックと「〇と言う」ブロックを使って、ゲームの説明と開始の合図を出しています。
「スタート!」がゲーム開始の合図で、3秒経ったらスペースキーを押してタイムをチェックします。
ゲーム開始時に「タイマーをリセット」ブロックで、タイマーを0にリセットしています。
そして、「◇まで待つ」ブロックで、スペースキーが押されるまで待ちます。
さらにスペースキーが押されたタイミングで、「タイマー」ブロックの値を「〇を四捨五入」ブロックで四捨五入し、変数「秒」に格納しています。
最後に、「もし◇なら▢でなければ」ブロックで、変数「秒」に格納された値が「3」だったら「やったね!」と言い、それ以外だったら「残念!」と言います。
実際に、緑の旗をクリックして、3秒の時間当てゲームをやってみます。
最初は、説明があり、「スタート!」でゲーム開始です。
変数「秒」が3だった場合は、「やったね!」と言います。
変数「秒」が3以外だった場合は、「残念」と言います。
こちらのゲームのクリア条件は変数「秒」が3の場合のみ。
「〇を四捨五入」ブロックで、変数「タイマー」の値を四捨五入しているため、「2.5~3.4999」の範囲がクリアということです。
もう少し条件を厳しくするには、どうすればいいでしょうか?
例えば、「2.9~3.0」の範囲がクリアとか。
どうプログラミングすれば実現可能か、考えてみてください。
調べるブロック一覧
「調べる」ブロックには、4個のハットブロックと5個の真偽ブロックと11個の値ブロックの計20個のブロックが用意されています。
ブロックの色は、水色で統一されています。
調べるブロック | 動作 |
---|---|
〇に触れた 指定した対象物に触れたらtrueを、そうでないときにfalseを返す |
|
〇色に触れた 指定した色に触れたらtrueを、そうでないときにfalseを返す |
|
〇色が〇色に触れた 実行するスプライトの指定色が、もう一方の指定職に触れたらtrueを、そうでないときにfalseを返す |
|
〇までの距離 実行するスプライトから指定した対象物までの距離の値を返す |
|
〇と聞いて待つ 指定したテキストを表示させ、画面下の入力ボックスの入力が完了するまで待つ |
|
答え 「〇と聞いて待つ」ブロックの入力した値を返す |
|
〇キーが押された 指定したキーが押されたらtrueを、そうでないときにfalseを返す |
|
マウスが押された マウスキーが押されたらtrueを、そうでないときにfalseを返す |
|
マウスのx座標 マウスのx座標の値を返す |
|
マウスのy座標 マウスのy座標の値を返す |
|
ドラッグ▢ようにする ドラッグモードを設定する |
|
音量 音量の値を返す |
|
タイマー Scratchが内部で管理しているタイマー値を返す |
|
タイマーをリセット タイマーの値を「0.0」に戻す(タイマーをリセット) |
|
〇の▢(ステージの背景#) 指定のスプライトやステージの指定の値を返す |
|
現在の▢(ローカルタイム) 現在(ローカルタイム)の指定した「年」「月」「日」「曜日」「分」「秒」を返す |
|
2000年からの日数 UTCの2000年1月1日午前0時0分0秒からの経過日数を返す |
|
ユーザー名 作品を閲覧しているユーザー名を返す |