スクラッチプログラミング - プラットフォーマーのつくりかた【上へすすむ】

上へすすむとステージがかわるプラットフォームゲームをつくりましょう。スプライトを左右にうごかしたり、障害物(しょうがいぶつ)にぶつかってジャンプがとまるようにするプログラムを、ブロックていぎをつかってつくります。

スクラッチプログラミング - プラットフォーマーのつくりかた【上へすすむ】
Photo by Karim MANJRA / Unsplash

更新日:2023年12月27日

サンプルさくひんであそんでみよう

今回(こんかい)しょうかいするのは、上へすすむプラットフォーマーです。地上(ちじょう)へ出られるように、上をめざしてすすみましょう!

スプライトのそうさほうほう

  • パソコン:やじるしキー
  • タッチスクリーン:画面(がめん)をゆびでさわる

(みどりのはたをおして、スタートです。プロジェクトは、ScratchのPyxofyページでもごらんになれます。)

このきじをよむとわかること

  • 障害物(しょうがいぶつ)にぶつかったときに、ジャンプをとめるほうほう
  • スプライトを左右にうごかすほうほう
  • スプライトがジャンプしたときに、ステージをきりかえるほうほう
📖
Pyxofy (著) 電子書籍「きょうからはじめるスクラッチプログラミング入門」を出版しました! ぜひこちらから詳細をご覧ください。

上へすすむプラットフォーマーをつくろう

ジャンプしながらステージの上のほうへすすんでいくゲームをつくります。ここではかんたんに、ステージをふたつだけ用意(ようい)して説明(せつめい)していきますね。スプライトのたて移動(いどう)、よこ移動(いどう)、ステージのきりかえをプログラミングしましょう。

2022-04-01-上へ移動するプラットフォーマーゲームのイメージ画像

ジャンプさせる

まずは、スプライトを上へうごかすためのジャンプです。スプライトに重力(じゅうりょく)をあたえたリアルなジャンプのつくりかたは、 『プラットフォームゲームのつくりかた』『プラットフォーマーのつくりかた【じゅうりょくジャンプ】』をさんこうにしてください。

Scratch (スクラッチ) - プラットフォームゲームのつくりかた
ジャンプで障害物(しょうがいぶつ)をよけながらつぎのステージへすすんでいく、プラットフォーマーのつくりかたをしょうかいします。スプライトにじゅうりょくをあたえて、よりリアルなうごきを表現(ひょうげん)してみましょう。
Scratch (スクラッチ) - プラットフォーマーのつくりかた【じゅうりょくジャンプ】
プラットフォームゲームのジャンプをくふうしてみましょう。スプライトが着地(ちゃくち)するときに、地面(じめん)にしずんでしまうことがあります。それをふせぐプログラムをつくっていきますよ。

スプライトをジャンプさせるプログラムは、つぎのようになります。

2022-04-02-スプライトに重力を与えてジャンプさせるプログラム

しょうがいぶつをとおりぬける?!

スプライトの上に障害物(しょうがいぶつ)があるところで、ジャンプさせてみましょう。すると、上にある障害物(しょうがいぶつ)をスプライトがとおりぬけてしまいます。

2022-04-03-スプライトがジャンプして障害物を通り抜けている様子

障害物(しょうがいぶつ)にぶつかったときにジャンプがとまるようにするには、どうすればいいでしょうか?

2022-04-04-スプライトがジャンプして障害物にぶつかっている様子

「ブロックていぎ」でかいけつ!

ジャンプをとめるためにつかうブロックは、 「ブロックていぎ」です。障害物(しょうがいぶつ)にぶつかるように、ブロックていぎをつかってプログラミングしていきましょう!

Scratch (スクラッチ) -「ブロックていぎ」とは?じぶんでつくるブロック
プログラミングにつかうブロックを、あたらしくつくってみましょう。Scratchにはたくさんのブロックが用意(ようい)されていますね。でもそれだけでなく、じぶんでブロックをつくることもできますよ。

ジャンプをとめるほうほう

ジャンプをとちゅうでとめるためのかんがえかたは、つぎのとおりです。ここでは重力(じゅうりょく)やジャンプなど、スプライトのたて方向(ほうこう)のうごきを「yいどう」という 変数(へんすう) であらわしています。

  • スプライトがジャンプしたあと、障害物(しょうがいぶつ)のいろにふれたなら
2022-04-05-スプライトがジャンプして障害物に触れている様子
  • 「yいどう」をゼロにして、うごかないようにする
2022-04-06-スプライトが障害物に触れた状態で上下移動しない様子
  • 障害物(しょうがいぶつ)の下にいくまで、yざひょうをすこしずつへらす
2022-04-07-スプライトが障害物の下まで移動した様子

障害物(しょうがいぶつ)の下までうごかしたスプライトは、重力(じゅうりょく)で地面(じめん)へおちます。

2022-04-08-障害物に触れなくなったスプライトが地面に落ちる様子

ブロックは、このようにつなげてください。

2022-04-09-スプライトが障害物にぶつかるようにするためのコード

「上にぶつかる」というブロックをつくる

上でつくったうごきを、ブロックていぎでまとめます。「上にぶつかる」というなまえで、ブロックをつくりましょう。「がめんをさいびょうがせずにじっこうする」にチェックをいれるのを、わすれずに!

2022-04-10-ブロックを作る画面

がめんをさいびょうがせずにじっこうする理由(りゆう)は、障害物(しょうがいぶつ)をとおりぬけたスプライトが下へうごく様子(ようす)を見せないようにするためです。

2022-04-11-画面を再描画せずに実行する動き

こうすることで、スプライトが障害物(しょうがいぶつ)をとおりぬけずにぶつかってジャンプがとまる様子(ようす)をあらわすことができます。この方法(ほうほう)は、ジャンプしたスプライトを地面(じめん)ピッタリに着地(ちゃくち)させることができる 「ちゃくち」ブロック をつくったときとおなじですね。

ブロックをていぎする

上にぶつかる」をていぎしましょう。ジャンプをとちゅうでとめるためのブロックをつなげます。

2022-04-12-ブロックを定義する

上にぶつかって、ジャンプがとまる

上にぶつかる」ブロックを、ジャンプさせるブロックの下に追加(ついか)してください。

2022-04-13-定義したブロックを追加する

上にある障害物(しょうがいぶつ)にぶつかって、ジャンプがとまるようになりました!

左右にうごかす

スプライトを左右にうごかせるようにしましょう。

2022-04-14-やじるしキーで動かすためのコード

左右にうごかしたとき、かべにぶつかるようにしましょう。

  • かべのいろにふれたなら、反対方向(はんたいほうこう)にうごかす
2022-04-15-壁の色で当たり判定をする

「ブロックていぎ」をつかう

わかりやすいように、ブロックていぎでまとめましょう。

  • 左右そうさ」というブロックをつくって、ていぎする
2022-04-16-ブロックを定義する
  • 左右そうさ」ブロックを追加(ついか)する
2022-04-17-定義したブロックを追加する

やじるしキーでスプライトを左右にそうさできるようになりました!

つぎのステージへすすむ

スプライトを上へジャンプさせて、つぎのステージへすすむようにしましょう。

2022-04-18-ステージの左上から次のステージへ進む
  • スプライトがステージの上のほうにあるなら
2022-04-19-スプライトがステージの上部にある様子
  • つぎのはいけいにする
2022-04-20-背景を切り替える
  • スプライトの位置(いち)を、ステージの下がわにする
2022-04-21-スプライトの位置をステージの下の方にする

「ブロックていぎ」をつかう

わかりやすいように、ブロックていぎでまとめましょう。

  • つぎのステージ」というブロックをつくって、ていぎする
2022-04-22-ブロックを定義する
  • つぎのステージ」ブロックを追加(ついか)する
2022-04-23-定義したブロックを追加する

スプライトがとびあがって、つぎのステージへすすむようになりました!

プログラムかんせい

スプライトのたて移動(いどう)、よこ移動(いどう)、ステージのきりかえをプログラミングしたら、上へすすむプラットフォーマーのかんせいです!

2022-04-24-縦移動のプラットフォーマープログラム

たてにうごかすプログラム

2022-04-25-スプライトを縦に動かすためのコード

よこにうごかすプログラム

2022-04-26-スプライトを左右に動かすためのコード

ステージをきりかえるプログラム

2022-04-27-ステージを切り替えるためのコード

「きょうからはじめるスクラッチプログラミング入門」by Pyxofy

Pyxofy から Scratch の基本をまとめた電子書籍を出版しました。
Apple Books・Kindle でご購入ください。

特設ページはこちら

まとめ

今回(こんかい)は、上へすすむプラットフォーマーのつくりかたをしょうかいしました。

障害物(しょうがいぶつ)にぶつかってジャンプをとめるときは、ブロックていぎで「がめんをさいびょうがせずにじっこうする」ところがポイントでしたね。左右のうごきやステージのきりかえも、ブロックていぎでまとめるとプログラムがわかりやすくなるのでオススメです!

最後まで読んでいただき、ありがとうございます。この記事をシェアしてくれると嬉しいです!

かんれんきじ

スクラッチプログラミング - タブレットでもあそべる!タッチスクリーンそうさ
キーボードをつかわなくてもスプライトを操作(そうさ)できるプログラムのつくりかたを紹介(しょうかい)します。画面(がめん)をゆびでさわることで、タブレットでもゲームをたのしむことができるようになりますよ。
スクラッチプログラミング - やじるしキーでうごかすよこスクロール
アクションゲーム(プラットフォーマー)などにつかわれる、よこスクロールする背景(はいけい)のつくりかたをしょうかいします。プログラムのポイントとなるブロックは、「クローン」「変数(へんすう)」「演算(えんざん)」です。
スクラッチプログラミング - ライフ(HP)のつくりかた
ゲームでつかえるライフ(HP)のプログラムを紹介(しょうかい)します。ハートのスプライトでライフを表示(ひょうじ)して、ダメージをうけたときに1ポイントずつへるようにプログラミングします。