スクラッチプログラミング - プラットフォームゲームのつくりかた
かんたんなプラットフォーマーをプログラミングできるようになりましょう。変数(へんすう)をつかったリアルなジャンプ、スプライトのそうさ方法(ほうほう)やあたりはんていなど、つくりかたの基本(きほん)をしょうかいします。
更新日:2023年12月27日
サンプルさくひんであそんでみよう
今回(こんかい)は、ジャンプで障害物(しょうがいぶつ)をよけながらつぎのステージへすすんでいく、プラットフォーマーのつくりかたをしょうかいします。
スプライトのそうさほうほう
- パソコン キーボードあり
「右やじるしキー」と「上やじるしキー」をつかってそうさします。やじるしキーを同時(どうじ)におすと、ななめにジャンプします。 - タブレット キーボードなし
ステージ右下に出てくる、「やじるしのコントローラー」をタップしてそうさします。コントローラーはふたつ同時(どうじ)におすことはできません。
みどりのはたをおして、スタートです。プロジェクトは、ScratchのPyxofyページでもごらんになれます。
このきじをよむとわかること
- スプライトに重力(じゅうりょく)をあたえるほうほう
- ステージをきりかえるほうほう
1. はいけいをよういしよう
さいしょに、 はいけい を用意(ようい)します。
地面(じめん)と、あかい障害物(しょうがいぶつ)をえがきましょう。今回(こんかい)はかんたんに、「スタート」と「ゴール」のはいけいだけにしますね。
- 「スタート」のはいけいをえがく
- 「ゴール」のはいけいをえがく
- さいしょは、「スタート」のはいけいにする
2. スプライトをよういしよう
そうさするスプライトは、このあとプログラミングする「あたりはんてい」をしやすいように、四角(しかく)にします。スタートする位置(いち)を、 座標(ざひょう)できめましょう。
- xざひょう…ステージの左はし
- yざひょう…地面(じめん)の上
3. じゅうりょくで下へうごかそう
スプライトに 重力(じゅうりょく)をあたえて、下へうごくようにします。そうすると、ジャンプしたりあなにおちるようすを、リアルなうごきにちかづけることができますよ。
へんすうをつくる
重力(じゅうりょく)をあらわすためにつかうのは、変数(へんすう)です。下へうごかすためにはyざひょうをかえるので、「yいどう」というなまえの変数(へんすう)をつくりましょう。
- 変数(へんすう)をつくる
「yいどう」は、プログラムをうごかしているあいだ値(あたい)がかわります。このように値(あたい)のかわる変数(へんすう)は、つかうまえにさいしょのじょうたいにしておく、つまり初期化(しょきか)しておくひつようがあります。
- 変数(へんすう)を初期化(しょきか)する
だんだんはやくうごかす
重力(じゅうりょく)でだんだんはやくおちるようにすると、本当(ほんとう)のうごきにちかづけることができますよ。「yいどう」の値(あたい)を「-1」ずつかえて、そのぶんyざひょうがかわるようにしましょう。
- だんだんはやく、下へうごかす
みどりのはたをおすと、スプライトが下へうごくようになりました!でも、「ずっと」ブロックをつかっているので下へうごきつづけて、スプライトが地面(じめん)の下までおちてしまいましたね。
地面(じめん)の上でスプライトをうごかせるようにしたいので、みどりいろのぶぶんより下へおちないようにしましょう。
じめんより下へおちないようにする
まずは、スプライトが地面(じめん)にふれているかどうかをチェックします。そして、もし地面(じめん)にふれているなら、下へうごかないようにしましょう。
下へうごかないようにするためには、重力(じゅうりょく)をあらわす変数(へんすう)「yいどう」を「0」にしますよ。
- もしみどりいろにふれたなら、yいどうを(0)にする
重力(じゅうりょく)があるので、スプライトはつねに下へうごこうとしています。でも、みどりいろの地面(じめん)にふれているときは、下へうごかないようになりました!
4. ジャンプさせよう
キーボードの やじるしキー をおしたら、スプライトがジャンプするようにしましょう。
地面(じめん)にふれているときだけジャンプできるようにします。「もしみどりいろにふれたなら」の中に、ブロックを追加(ついか)してください。
- もしうわむきやじるしキーがおされたなら、yいどうを(15)にする
やじるしキーをおすとスプライトがジャンプするようになりました!重力(じゅうりょく)があるので、ジャンプしたあとだんだんゆっくりうごいて、おちてくるときはだんだんはやくなりますよ。
5. 右へうごかそう
ゲームをすすめるために、やじるしキーをおしてスプライトをうごかせるようにしましょう。「もしみどりいろにふれたなら」の下に、ブロックを追加(ついか)してください。
- もしみぎむきやじるしキーがおされたなら、右へうごかす
「うわむきやじるしキー」と「みぎむきやじるしキー」を同時(どうじ)におすと、ななめにジャンプすることができますよ。
キーボードのないタブレットでもあそびたいときは、 『タブレットでもつかえるコントローラーをつくろう』をさんこうにしてください。
6. つぎのステージへきりかえよう
スプライトがステージの右はしまで移動(いどう)したら、つぎのステージへすすむようにしましょう。
- もしxざひょうが(240)より大きいなら
- スプライトの位置(いち)を左はしにして、つぎのはいけいにきりかえる
スプライトが右はしまでいくと、ステージがかわるようになりました!
7. あたりはんてい
はいけいの「いろ」であたりはんていをして、「やりなおし」と「ゲームクリア」をきめましょう。
やりなおし
あなにおちたり、トゲにあたったら、さいしょのじょうたいにもどしてやりなおせるようにします。さいしょのじょうたいにするためには、変数(へんすう)を初期化(しょきか)して、スプライトの位置(いち)をステージの左はしにしますよ。
- もしあかいろにふれたなら、さいしょのじょうたいにもどす
ゲームクリア
ゴールにふれたらゲームクリアにして、おわりにします。
- もし白いろにふれたなら、プログラムをとめる
8. プログラムかんせい
ジャンプで障害物(しょうがいぶつ)をよけながらつぎのステージへすすんでいくプラットフォーマーができました!
Pyxofy (著)「きょうからはじめるスクラッチプログラミング入門」
Pyxofy が Scratch の電子書籍を出版しました!Kindle・Apple Books からご購入ください。
まとめ
今回(こんかい)は、かんたんなプラットフォーマーをつくってみました。
変数(へんすう)をつかって、スプライトに重力(じゅうりょく)をあたえると、よりリアルなうごきを表現(ひょうげん)できましたね。いろいろなステージを追加(ついか)すると、もっとむずかしくてたのしいゲームになるので、ぜひつくってみてください!
最後まで読んでいただき、ありがとうございます。この記事をシェアしてくれると嬉しいです!