Scratch【中級】

【中級者向け】フラッピーゲームの作り方(第15回)

対象:中級者向け
ブロック数:86こ

完成品の確認

操作方法

スペースキー or 矢印ボタン:ジャンプする

右から流れてくる障害物をうまくジャンプして避け通っていきます。犬がふわふわ落ちていくので、うまくジャンプさせます。30秒避けきれたらクリアです。

準備をしよう

下のURLをクリックして、スクラッチを開いてください。
https://scratch.mit.edu/projects/857975086/editor

プログラミングする

「いぬ」のプログラム

初めの設定

下のプログラムを入れて下さい。

画面左上の位置にし、大きさを少し小さくしておきます。

また後に使う変数「重力」を初期化しておきます。

重力をかける

下のプログラムを追加して下さい。

変数「重力」の値分だけ落ちていくようにしていきます。この変数は、繰り返すたびに、0.5だけ変わりますので、だんだんと一度に落ちる大きさが大きくなり、重力がかかっているような動きになります。

下まで落ちたらゲームオーバー

下のプログラムを追加して下さい。

先ほどの繰り返しの後に、アウトの処理を作っています。繰り返しの終了条件が、「y < -210」なので、「いぬ」の y位置が「-210」よりも低くなったら、繰り返しが終了し、このアウト処理に実行されます。

「障害物」に当たったらゲームオーバー

下のプログラムを追加して下さい。

先ほどの繰り返しの中に、「もし」ブロックでアウト処理をいれておきます。

スペースキーでジャンプ

下のプログラムを入れて下さい。

ジャンプしたときに、変数「重力」を「0」にします。その後、上にふわっと浮かぶように、繰り返しでy座標を増やしています。

ここでは、メッセージ「ジャンプ」を用意していますが、これは、あとで別の形でもジャンプできるようにするための仕掛けです。

カウントダウンの設定

下のプログラムを追加して下さい。

変数「タイム」を「30」から始めて1秒ごとに下げていき、「0」になったらゲームクリアにします。

ステージの設定

下のプログラムを追加して下さい。

「タイム」ごとに「ステージ」を設定します。ステージ「1」から始まり、タイムが「20」より小さくなったらステージ「2」、タイムが「10」より小さくなったらステージ「3」になるようにしています。

プログラム確認

緑の旗を押して、動きを確認してください。以下が確認できればOKです。

  • 「いぬ」が画面左上からスタートし、重力がかかったように下に落ちていく
  • 下の方までいくと、ゲームオーバーになる
  • スペースキーをおすと、ジャンプできる
  • タイム「30」から始まり、カウントダウンしていく
  • タイム「0」になると、ゲームクリアになる

「いぬ」のプログラムはこれで完成です。

「ジャンプボタン」のプログラム

下のプログラムを入れて下さい。

このスプライトが押されたら、メッセージ「ジャンプ」を送るようにします。

先ほど「いぬ」に「ジャンプ」を受け取った後に具体的なジャンプの処理を作っていますので、これで「ジャンプボタン」を押すことでも 、ジャンプできるようになりました。

「ジャンプボタン」のプログラムは、これで完成です。

「障害物」のプログラム

初めの設定、クローンの生成

下のプログラムを入れて下さい。

初めの設定として、本体を隠して、横の位置を右端の方にしています。

その後、「ステージ」ごとに待つ時間を変えて、クローンをしています。

  • ステージ「1」なら、2秒ごとにクローン
  • ステージ「2」なら、1秒ごとにクローン
  • ステージ「3」なら、0.5秒ごとにクローン

クローンの動き

下のプログラムを入れて下さい。

y座標を「-50~50」の乱数にすることで、クローンされた障害物の上下の位置を変えて、中央の通過エリアの位置を変えています。

その後は、「x < -250」、つまり左端の方まで左にずっと動かしています。

「-7 * (ステージ)」と計算式を入れることで、ステージごとにスピードを変えることができます。

  • ステージ「1」の場合: 「-7 * 1」= 「-7」
  • ステージ「2」の場合: 「-7 * 2」= 「-14」
  • ステージ「3」の場合: 「-7 * 3」= 「-21」

クリア時、アウト時の処理

下のプログラムを入れて下さい。

これで「クリア」か「アウト」になったら、障害物が止まります。

プログラム確認

緑の旗を押して、動きを確認してください。以下が確認できればOKです。

  • 「障害物」が一定の間隔で右から出てくる
  • 出てきたら、右から左に進んでいく
  • ステージが上がるにつれて、出てくるタイミングと進むスピードが速くなる
  • 「いぬ」が「障害物」に当たると、ゲームオーバーになる

「障害物」のプログラムは、これで完成です。

おめでとうございます。これでゲーム完成です。

すべてのプログラム(完成コード)

リミックスのポイント

「障害物」について、ステージごとに色が変わる

下のようにプログラムを追加しましょう。ステージごとに「障害物」の色が変わります。

「障害物」の速さを変える

下の数字を変えてみましょう。「障害物」の進むスピードが速くなります。

今回は、中級の第15回ということで、「フラッピーゲーム」を紹介しました。次回もお楽しみに♪

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