プログラミング入門

プログラミング初心者のためのScratch(スクラッチ)入門-動き編(1)

プログラミング初心者の子供に何を教えたらいいの?とお悩みの保護者のためのScratch(スクラッチ)の入門講座。Scratchで猫の動かし方はわかったけど・・・次にどんなことをしたらいいの?という疑問にお答えするシリーズです。
今回は「動き」の基礎編をお届けします。
 
対象は小学校高学年のお子さん向けになっています。小学校低学年のお子さんは、保護者がまず作り、お子さんがプログラムを改造するという方法がおすすめです。
 

1. Scratchのゲームで使える動きをマスターしよう

Scratchでねこを動かす「ねこ歩き」は初歩中の初歩。もっと難しいことを求めているお子さんには物足りないようです。ただ動かすんじゃなくて、ゲームっぽい動きにはちょっとしたテクニックがあります。今回はそんなScratchのゲームで使える動きを解説していきます。
 

1-1. 方向キーで操作する方法

Scratchではパソコンの↑↓←→(方向)キーでスプライト(キャラクター)を操作する方法はとっても簡単。次のようなプログラムを動かしたいスプライトに対して作ります。

「〇〇キーが押された時」と「x座標(y座標)を●ずつ変える」を組み合わせます。
縦方向がy座標、横方向がx座標になります。
 

1-2. 方向キーで操作する方法

先ほど紹介した方向キーで操作するゲームを作ってみましょう。

▼方向キーでキャラクターを操作するゲームのサンプルです。
https://scratch.mit.edu/projects/209839359/

左右キーでサルを動かして、落ちてくるバナナをゲット!5回バナナを落とすと・・・ゲームオーバーです。

こんな風に落ちものゲームで方向キー操作を使うといいですね。
なお、バナナはクローンを使っています。クローンについてはこちらの記事も参考にしてみてください。
 

やってみよう
ちょっとゲームを難しくしてあります。
さるのプログラム「x座標を○ずつ変える」の数字を大きくして、ゲームを簡単にしてみよう。

 

 

1-3. マウスの動きに合わせてスプライトを動かす

Scratchではマウスを動かし、マウスのポインター(矢印)の動きに合わせてスプライトを操作することもできますよ。
まず、動かしたいスプライトに対してこんなプログラムを作ります。

緑の旗を押して、ステージ上で動かすと・・・マウスの動きに合わせてスプライトが動きました!

 
でもこのままだと、スプライトの向きが同じ方向を向いたままです。
そこで、先ほどのプログラムに1個ブロックを足してみます。

「マウスのポインターへ向ける」ブロックを足すと、スプライトの向きがあちこち変わるようになりました。
 
「あれ?向きが変わらないよ」という人はスプライトの「回転の種類」の設定を確認してみてください。

上の図のように「丸い矢印」に設定してみてくださいね。
両矢印(←→)や点(・)の設定になっていると、回転の向きが固定されているので向きが変わりません。
 

1-4. マウスの動きを使ったゲーム

マウスの動きを使ったレーシングゲームです。

▼レーシングゲーム
https://scratch.mit.edu/projects/210108133/
ゴール(ピンク色の線)を目指して走らせてみてください。

 

 
コースが自動で動くので、コースに合わせて赤い車をマウスで動かします。
 
さらに、青い車は自動でコースに沿って走るようになってます。
(うまく動いていませんが・・・。)
これは、ライントレースを意識して作りました。

ライントレースとは、線に沿って(トレースして)動かすという方法です。
 

・コースを作成して、拡大し自動で動くようにしました。
・青い車は次のようにプログラミングしています。
  灰色のコースの上にいるとき→そのままの方向で進む
  緑色に触れたら→右に回転して少し進む
  黄色に触れたら→左に回転して少し進む

 
 →ライントレース、なかなか思い通りに動かすのは難しいですね。
 

やってみよう
障害物が出現するようにしてみよう。
障害物にあたったら、クラッシュするようにしてみよう。

 

Scratchの「動き」基礎編のまとめ

Scratchのスプライトを動かすには次のような操作方法があります。
 
 ・方向キーなどパソコンのキーを押したタイミングで動かす
 ・マウスで動かす
 ・ラインストレース(線の上を歩かせる)

作りたいものに応じて、使い分けられるようになればどんなゲームでも作れちゃいますね。
次回はさらにレベルアップ!もう少し難しい?動きに挑戦です。

伴野悠佳 / YUKA TOMONO
この記事の著者伴野悠佳 / YUKA TOMONO
教育ヲタクの1児の母。自称ニコニコキッズクリエーター。東京理科大学大学院卒。元SE。小学生の頃から教育書を読んでいた教育ヲタク。大学では、電池の素材の性質について実験とコンピューターシミュレーションを比較する研究を行っていたことがきっかけでSEになる。出産&育休後、子ども向けプログラミング教室講師、子どもたちの考える力を育てるオンライン塾の講師。