標準コマンドサンプル

スクラッチ3.0とクムクムロボットで状態の切り替えとLEDのコントロール

 

作るプログラム

スクラッチ3.0の画面操作でクムクムロボットうをコントロールするプログラムです。
スタートフラグをクリックしプログラムをスタートします。
画面上の赤い円をクリックするたびに、白枠⇔塗りつぶしとを切り替え、同時にクムクムロボットの胸のLEDをコントロールします。

スプライトを用意します

枠だけの円と赤く塗りつぶされた円の画像をお絵かきツールなどで作ります。
この例では、200ピクセル×200ピクセルの大きさで、ペイントブラシなどであらかじめ作成しました。
スクラッチ3.0に用意されているお絵かきツールで作成しても構いません。
注意することは、塗りつぶしのない枠だけの円の場合、中を白色などで塗りつぶしておきます。
もし円の中を透明(透過)で作ってしまうと、スクラッチ3.0でクリックできる部分が、枠の線の部分だけになってしまいます。

 

2つの絵をスプライトに読み込みます

まずは枠の絵をスプライトに読み込みます。

スプライト部分で猫マークのアイコンにマウスを乗せ、表示されるメニューアイコンの一番上「スプライトをアップロード」を選択します。

作った枠の絵を読み込むとスプライトに登録されます。

次にこのスプライトのコスチュームに塗りつぶしの円を追加登録します。

画面左上のコスチュームタブを選択し、コスチューム画面を表示します。

画面下の猫マークのアイコンにマウスを乗せ、表示されるメニューからコスチュームをアップロードを選択します。

作成した塗りつぶしアイコンを選択すると、このスプライトに新しく塗りつぶしの円が登録されます。

プログラムの作り方

このスクラッチ3.0でのプログラムは、この円のスプライトがクリックされるたびに、クリックされた回数を数えます。
そのため、数を数えるための変数をひとつ用意します。
そして、1ずつ変化するその回数を2で割った余りを(0か1か)使い、塗りつぶしか枠かを判断して表示を切り替えます。

※注意:すべての数字の部分は必ず半角数字(漢字OFFで入力した数字)にしてください。
※注意:スクラッチ上では全角数字と半角数字の区別がつきにくいので注意をしてください。
※注意:全角数字では正しくプログラムは動きません。

用意されている変数の名前をかえて回数にします

状態を決定する変数を新しく作成して用意します

動き部分の処理をするブロックを新たに作ります

プログラム解説

スプライトがクリックされたときのプログラム

コード→イベントにある 「このスプライトが押されたとき」ブロックの下に、その時の処理を作ります。
このスプライトがクリックされた回数を1ずつ変え(1ずつアップする)、その回数を表示し、その回数によって処理する動きプログラムを動かします。

スタートフラグがクリックされたときの処理

コード→イベントにある「フラグがクリックされたとき」ブロックの下に、その時の処理を作ります。
スタートフラグがクリックされたら、クリック回数を初期状態=0にし、その回数によって処理する動きプログラムを動かします。

動きの処理

このプログラムの一番大事な部分です。
円とLEDの状態を、枠か塗りつぶしにするかを決めるために、回数を2で割った余り(答えは0か1)を状態という変数に代入します。
特に変数に代入せっずそのまま判断してもいいのですが、わかりやすくするために一度変数に置いています。
その1か0が代入されている状態によって動きを作っています。

もし0であれば、枠を表示し地齋のLEDを消しています。
そうでなければ(1)であれば、塗りつぶしにして実際のLEDを光らせています。

コメント

タイトルとURLをコピーしました