こんにちは、AID IT キッズのミチノリです。本日はScratch(スクラッチ)で初期に学習するプログラムの組み方である「キャラクターの動かし方」と「変数の使い方」について簡単に書いていきたいと思います。

まずは逐次処理(ちくじしょり)の考え方を覚えましょう

Scratch(スクラッチ)では様々な動き方や条件が書かれたブロックを組み合わせて、ゲームプログラミングを中心にを学んでいきますが、組み合わせたブロックが一体どのように認識され命令が処理されていくのか?

その流れをプログラミング学習初期の段階で、繰り返しながら覚えていきます。

プログラミングでは、基本的に上から下へとプログラムの命令が処理されていきます。これを逐次処理と言います。スクラッチでも、組み合わせたブロックが上から下へと処理されていきます。

 

上記の写真では、青い四角形の周りを、スプライトの猫が一周するようにプログラミングされています。

 

【スクラッチでのプログラミング例】

・旗がクリックされたとき

・X座標とY座標をスタートの位置に移動(初期値の設定)

・上の方向(Y座標)に移動

・右の方向(X座標)に移動

・下の方向(Y座標のマイナス方向)に移動

・左の方向(X座標のマイナス方向)に移動

・上の方向(Y座標)に移動

 

これで、四角形の周りをぐるっと一周します。上から下に逐次処理が行われています。逐次処理を基本として、あとは創りたいゲームでの動かし方の変化にあわせて「ずっと」や「もし~なら」のブロックを組み合わせていくことで、様々な条件に応じた動きが可能になっていきます。

 

データ(変数)を使ってプログラムの条件判断をしよう

Scratch(スクラッチ)では、様々な条件判断をする際にデータブロックから「変数」を作り、「変数」に値を入れて条件判断の基準とします。変数の概念は様々なプログラミング言語で共通したものですが、Scratch(スクラッチ)でもよく使います。

スクラッチのゲームプログラミングでも、よく使う条件判断の1つに「ゲームクリア」や「ゲームオーバー」の文字を表示させたり、背景を切り替える処理があります。

「ゲームクリア」や「ゲームオーバー」といった言葉をスプライトで作成し表示させたい時には、条件判断用にデータ(変数)を1つ作成します。

今回は「ゴール」の変数を作成しました。旗をクリックして、ゲームをスタートするときにはゴールの変数は0の値にします。そして、ゴールとして定めたポイントに接触した際に「ゴール」の変数に1を加える事で、0だった変数が1になり、条件判断が行えるようになります。変数ゴールが0の場合はゲームクリアは非表示のままで、変数ゴールが1になった場合は表示をするプログラムを組み込みます。

最初に「ゴールを0にする」で初期値の設定を行わないと、2回目以降に同じようにプログラムを動かすことが出来ませんのでお忘れなく。

ちなみにですが、「ゲームクリア」という言葉は日本ではよく使われますが、世界では国によって「ゲームクリア」に該当する言葉が異なります。和製英語ですね。

 

特定のスプライトを表示させるプログラムには、何通りかあると思いますが、シンプルに条件を判断するには変数を作成した方が分かりやすく、かつ間違いも起きにくいと思います。プログラミングを学び始めた初期には分からない事も多いですが、継続して様々な学習をしていく事で、しっかりと考え方&知識として見についていきます。

 

沖縄のプログラミング教室として開校し、日々、子供達と接しながら、色々とカリキュラムの内容も改善しながら学習を続けていますが、本当に「IT・WEB・プログラミング」の世界は、変化と進化の目まぐるしい分野だと思います。変化し続ける世界だからこそ、子供たちの教育にも非常に良いキッカケになりますし、今後も楽しくより良い経験・体験をして頂けるように頑張りたいと思います。