Scratch教材:横スクロールアクション基礎
はじめに
Scratchで背景がスクロールしていく仕組みを作ります。横スクロールアクションゲームなどに応用できます。
対象年齢
小4以上
学習時間
45分 (背景の作成時間による)
参考資料
なおこのネタはCoderDojo本を参考にしています。
サンプルへのリンクはこちらです。
作成の手順
背景用のスプライトの作成
ステージで背景を描いてしまうと動かすことができないため、背景はスプライト上に描きます。新しくスプライトを作成してください。

背景を描く
新しく作ったスプライトのコスチュームに背景を描いていきます。


背景を初期位置に移動させる
描いた背景を初期位置、ここではX座標0、Y座標0に移動させます。また背景のクローンを作っておきます。

クローンで作った背景を画面外に移動させる。
さきほど作成した背景のクローンを画面外に移動させます。背景を横に並べ同時に動かすことで背景のスクロールを実現します。
ここで注意点が1つあります。Scratchの画面は横の幅が480ピクセルなので、クローンした背景は本来X座標を480ピクセル分移動させるのが正しいのですが、これではうまく動きません。CoderDojo本で解説されているのですが、Scratchの仕様ではスプライトを完全に画面外に移動させることができないようなのです。そこで今回はX座標を460ピクセル分移動させています。

矢印キーで背景が動くようにする。
矢印キーを押すと背景が動くようにします。操作するキャラクターを右に移動させたい場合背景は逆の左方向に動かす必要があります。
また画面に左手に消えた背景は画面右手に移動させる必要があります。

背景を反対に動かす
左矢印キーを押された場合にも対応させましょう。以下のようになります。
大なり小なりのブロックの使い方や符号に注意してください。

背景スプライトのプログラム
ここまで作ったブロックは以下のようになります。

ネコのプログラム
ここではネコが矢印キーによって向きを変え、歩くようにしています。これで完成です。矢印キーを押すと背景が移動し、ネコが動いているように見えます。


応用例
ネコがジャンプする
ネコに次のブロックを加えるとジャンプが実現できます。障害物を飛び越えていくようなゲームに応用できると思います。

強制スクロールにする
矢印キーではなく「ずっとブロック」で強制的にスクロールさせると横スクロールシューティングゲームなどに応用できると思います。
サンプルはこちら