栃木市レッスン風景Scratch【射的ゲーム】変数・if文を学ぼう!
本日の授業はプログラミング検定に向けてScratch(スクラッチ)のカリキュラムを行いました。プログラミング検定は全員参加ではありませんが、昨年からロボテックで取り組み始めた検定です。
scratchのビジュアル言語と似た形式で出題されるので、参考になると思います。
本日取り組んだカリキュラムは『射的ゲーム』です。
『if文』や『変数』を使用しますので、しっかり学んでいきましょう!
目次
必要なスプライトを選ぼう!
まず最初に、射的ゲームを作るにあたって必要な『スプライト(アイテム)』を選んでいきます。
必要なスプライトは全部で3つです。
①的
②弾
③照準
このうち、①的と②弾は既存のスプライトから好きなものを選んでもらいました。
スプライトを自由に描こう
次に、③照準ですが、こんなイメージですのでこれは各自描いてもらいます。
スクラッチでは既存のスプライトの他、自分で好きに描くことが出来るのが一つの楽しみでもありますよね!
照準の『〇』はまん丸がいいですよね。
【Shiftキー】を押しながらマウスをドラックすると、きれいな正円を描くことが出来ます。
また、きれいな直線を描きたいときも同じです。
【Shiftキー】を押しながら描くと、【垂直・直角・水平】の直線を描くことが出来ます。
さあ、頑張って描いてみましょう!
【的】のプログラムを組み立てていこう!
*変数を使用しよう
必要なアイテムが出そろったら一つ一つのスプライトにプログラムを付けていきます。
まずは『的』となるスプライトを選択しましょう。
最初に変数を使用します。
この変数は、スコア表示に使用します。
変数の文字は何でもOKです。わかりやすい方がいいですね。
ゲームの内容的には、的に矢が当たった時にこの変数が1づつカウントされるようにするので、わかりやすく言うと『スコア』や『的に中った回数』、ちょっとひねって、『ハートを貫いた回数』など好きに入力していきましょう。
*if文を使用しよう
次に、的の動きをプログラムします。
『ずっと1秒でどこかの場所へ行く』
・・・とすると、的はランダムに移動することになります。
また、『1秒で』が移動のスピードになりますので、時間が短ければ難しくなりますし、長ければゆっくり動くので簡単になります。
この辺はあとで微調整していきましょう!!
さらに、『的に当たったら変数(スコア)を1ずつ変更していく』プログラムも追加です。
『もし(if)弾が的に当たったら・・・〇〇にする』という考え方ですので、『もし』といったプログラムブロックを使用していきましょう。
スコアは例えば『5回当たったら終わり』とするなら、演算ブロックを使用し『ハートを貫いた回数=5』としておきましょう。ここの数値も自由に変えられますね!
【照準】のプログラムを組み立てていこう
次はスプライトを変えて、【照準】のプログラムです。
『旗が押された時、ずっと最前面でマウスポインターへ移動する』・・・といったプログラムです。
【弾】のプログラムを組み立てていこう
続いてはスプライトを変えていきます。
『弾』のプログラムです。
『マウスをクリックすると球が表示されてだんだん小さくなって消える』といった動きをプログラムしていきましょう。
まずは球が表示されていないようにします。
『ずっと一層手前に出して隠す』と設定します。
*繰り返し・if文・座標を使用する
『ずっと/もしマウスが押されたら表示する/大きさを200%にして/x座標をマウスのx座標/y座標をマウスのy座標にする』・・・といったプログラムを組んでいきます。
ゲームを動かしてみよう!
基本のゲームが完成したらプログラムを実行して動かしてみましょう!
さらに、余った時間でゲームをアレンジしていきます。
例えば、背景を付けたり、スコアのカウント数を変えたり・・・。
他にも、的の大きさや移動するスピードを変えたりすることでゲームの難易度が変わりますよね!
プログラムを一つずつ丁寧に置いていったので、どのプログラムがどんな役割をしているか分かったと思います。
ここから自分の考えでアレンジしていくことが重要だと思います。
みんな時間の許す限り調整やアレンジを加えてくれました!
本日の授業はここまでです!
良く出来ました☆彡
**************
ロボット・プログラミング教室ロボテックでは、子どもたちが興味を持つブロックという教材を通じて、強要されることなく自然な流れで課題を解決し、それを発表する、さらには他の人の意見に耳を傾けるという力を育んでいきます。
ロボテックでは、ロボットづくり・マインクラフトでゲームづくり の無料体験を行っております。
お気軽にお申し込みください!
無料体験のお申込みはこちら