7月13日に発売
した書籍
『ゲームを改造
しながら学ぶ Scratchプログラミングドリル』では、ゲームのプロトタイプをハッキングして、完成
させることでScratch(スクラッチ)のプログラミングを学んでいくことができる。
スタプロでは、書籍で紹介
しているゲーム「森の射撃
訓練
」(初級編
のゲーム1)のハッキングにチャレンジしてもらって、その様子をレポートしているよ。
前回は、エルフが矢を撃
てるようになって、矢を撃つ方向を変えられるようになった。でも、矢は自動的
に放
たれているだけで、自分の好きなタイミングで撃つことができない。今回はここから改造していこう。
1 STEP3 自分のタイミングで矢を撃てるようにする
前回つくった「森の射撃訓練」のプログラムを読み込むよ。Scratchのエディター画面
で「ファイル」メニューの「コンピューターから読み込む」から、「[初級]森の射撃訓練.sb3」を選
んだ。
![前回つくった「森の射撃訓練」のプログラムファイルを読み込む](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog1-2-1024x663.png)
前回つくった「森の射撃訓練」のプログラムが表示された。ここから今回はプログラミングしていくよ。
ここまでのプログラムでは、エルフのコスチュームが「撃つ」になったら矢を放つようになっていたらしい。そこで「スペース」キーを押したらエルフが矢を撃つようにするよ。
![読み込んだ「森の射撃訓練」のプログラム](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog2-1-1024x663.png)
書籍では、改造前と改造後のエルフのコスチュームのちがいや、そのために必要なブロックはどれかなども説明があるから、それにそって改造してみたよ!
![前回つくった、エルフのコスチュームのプログラム](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog2-2.png)
![今回つくったエルフのコスチュームのプログラム](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog3-2.png)
ゲームを試
してみたら、自分の撃ちたいタイミングでスペースキーを押せば、エルフが矢を放ったよ。さっきよりも点が取れるようになった!
![的に狙いをつけて、自分のタイミングで矢を撃つことができるようになった](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog5.png)
2 プログラムを工夫しよう
これで「森の射撃訓練」が完成した! と思ったけど、まだ続
きがあった。さっきつくったプログラムでは、「次のコスチュームにする」ブロックと「0.5秒待つ」ブロックの組み合わせが3つある。同じ処理
をくり返しているんだけど、これはプログラムを工夫するともっとかんたんになるんだって。
説明を読みながら、「~回繰
り返す」というブロックを使って、さっきのプログラムをつくってみたよ。
プログラムがすっきりした。こっちの方が見た目もわかりやすいかも。
![「~回繰り返す」ブロックを使ってつくり替えたプログラム](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog6-2.png)
![](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog7-1.png)
これで「森の射撃訓練」のゲームは完成だ! さっそく遊んでみよう。矢印の動く角度を変えてみたり、次のコスチュームにするときの時間を変えてみた。矢印の動く角度を小さくすると、矢を飛ばす方向を細かく調整
できるかな。
![上向き矢印キーと下向き矢印キーを押したときに回す角度を変えてみた](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/prog8-1-2.png)
ゲームをやってみたら、「GOOD」がもらえたぞ!
![](https://www.kodomonokagaku.com/wp-content/uploads/2020/07/game6.png)
ゲームで遊ぶことができるようになってうれしいけど、本ではこのゲームの「パーフェクトクリア」の条件として「得点を10点以上獲得せよ!」と書かれている。でも、なかなか「パーフェクト」にならない!
しかし! これは自分でつくったゲーム。開発者はジブンだ。パーフェクトを出したいなら、ゲームのプログラムを好きなように改造すればいいのだ。
次回はパーフェクトを出すためにさらにプログラムを改造していくぞ!
(文/子供の科学編集部)
ご購入、詳細はこちら!