
イベントでスプライトを操作してみる
Scratchの今日の最初の勉強は、いろいろなイベントを試すことから始めてみる。
イベントというのは、動作を起こさせるきっかけになるもので、ゲームがスタートした時、マウスやキーボードが押された時など、いくつかある。
イベントでは、登場人物・動物のスプライトを動かしたり、吹き出しを表示させたり、声を出させたりすることが出来る。
試しに、ネコをクリックしてネコに「ニャー」と鳴かせたり、キーボードを押して吹き出しで「ハロー!」や「グッドバイ!」と表示させてみた。

<写真1:イベントでネコを鳴かせたり吹き出しを出したりする>
マイクからスプライトを操作する
マウスやキーボードを使わず、パソコンのマイクからの音でもスプライトを操作出来る。
私のノートパソコンの付属のマイクから音を拾うと、ネコが泣きながらジャンプするのを試してみた。
教科書では40以上の音がしたらとしていたが、40ではキーボードのリターンキーをやや強めに押した音でも反応した。50でも反応した。60にしたら反応しなかった。

<写真2:マイクの音でスプライトを操作する>
あと、背景(backdrop)が変わるタイミングでイベントを発生させることも出来る。例えば背景が変わるとネコを消すことも出来る。
背景の変化をイベントに出来るので、場面の展開に使えるから、ますます物語作りに向いていると感じた。例えば紙芝居とか直ぐに作れそうだ。あるいはプレゼンなんかに使えないだろうか?
教科書ではパソコンのカメラから、人の動きを感知してスプライトを操作できるイベントも選べるように説明している。
例えば、カメラの前で手を振って、スプライトを操作することが出来るようだ。
しかし私のScratchではその選択肢は見当たらなかった。残念。その代わりタイマー(timer)を選べるが、使い方は今の時点では分からない。
後で分かったが、Scratchには拡張機能があって、その中の「video sensing」を追加すると、カメラの前の動きが感知できるようになる。初期状態ではインストールされていなかったので見つけられなかったのだ。
繰り返し(ループ)は永久と回数・条件指定
繰り返しのコマンドは、ずっと続ける「foever」と、繰り返す回数を指定する「repeat」、繰り返しの終了条件を指定する「repeat until」がある。
教科書に沿って、ガイコツ(skeleton)がダンスをするような動作をするプログラムを試してみた。

<写真3:繰り返しでガイコツをダンスさせる>
使った繰り返しコマンドは、foreverとrepeatの2つのブロック。その間にコスチュームを変えたり、前後に移動したり、静止したり、吹き出し(think)のコマンドを挟んでいる。
thinkというコマンドは、吹き出しを表示してス、プライトの思っていることを表現するためのコマンドだろう。
繰り返しを終了させる条件を設定して繰り返させるブロックrepeat untilを使って、ガイコツが「お化けだぞー!」と言いながら、左右にフラフラさまようようにプログラムしてみた。
終了条件を、spaceキーを押すまでに設定した。

<写真4:「お化けだぞー!」>
今回はイベントと繰り返しコマンドを試した。これだけでも、いろいろなコマンドと組み合わせて、かなり複雑な動作をさせることが出来ると感じた。
コメント