mywayなプログラミング生活ブログ

プログラミング関連の記事を書いています。作る様子がわかる様に動画も作っています。

Scratch2(スクラッチ2)で迷路ゲームをつくろう!(3回目)最終回

myway@おじさんです。
前回の続きで「木」を画面に並べたいと思います。


動作環境について
OS:MAC OS X(Windowsでも操作はほとんど変わりません)
エディタ:Scratch offline editor(ver.456)

f:id:mywayhaojisan:20171103141956p:plain

1.準備

前回作ったプロジェクトファイルを開いて下さい。

2.「へんすう」の追加

へんすうを追加する前に、画面左の「ステージ」をクリックして、「ステージ」の「スクリプト」を開いておいてください。

へんすうを追加していきます。

f:id:mywayhaojisan:20171117111730p:plain

f:id:mywayhaojisan:20171117111801p:plain
このへんすうは、リストを読み取るためのへんすうになります。

f:id:mywayhaojisan:20171117111828p:plain

f:id:mywayhaojisan:20171117111848p:plain
前回の記事で、「10×10」のリストを作りました。
このへんすうは、リストのどの位置からスタートするかを持っておく「へんすう」になります。

f:id:mywayhaojisan:20171117111909p:plain
このへんすうは「Tree1」をどの幅で置くのかを持っておくへんすうです。
この値を変える事で「Tree1」の幅を変える事ができます。

f:id:mywayhaojisan:20171117111929p:plain

f:id:mywayhaojisan:20171117111949p:plain


このへんすうは、「Tree1」のクローンをつくる時に、どの座標に作るのかを持っておくへんすうです。

これらのへんすうを使ってマップを作っていきます。

3.「ステージ」のスクリプト

ステージのスクリプトです。

f:id:mywayhaojisan:20171117112014p:plain
赤色の所が追加したブロックです。
今回作ったへんすうの初期化しています。
それと、へんすう「そくど」もここに移動してきました。

へんすう「スタートいち(x)」と「スタートいち(y)」に「3」を入れています。
マップ上では、下の図のようになります。

f:id:mywayhaojisan:20171117112036p:plain
この位置からスタートさせます。

次に、「緑のはたがクリックされたとき」のスクリプトです。

f:id:mywayhaojisan:20171117112103p:plain
パッと見ただけではわかりにくいと思います。
3つに分けて説明したいと思います。

(1)リスト「マップ」の行数分繰り返すスクリプトです。
今回の場合「10回」繰り返す事になります。

(2)リスト「マップ」の1行の文字数分繰り返すスクリプトです。
今回の場合「10×10=100回」繰り返す事になります。

この(1)と(2)で、「2次元配列(にじげんはいれつ)」から1文字ずつ取得するスクリプトになります。
説明すると長くなるので、詳しく説明しませんが、「2次元配列」とは、「配列の配列」であり、ここでの「リスト」は「文字列の配列」ではなく「配列の配列」として考えています。

(3)リスト「マップ」の値が「1」だったら「Tree1」のクローンを作るスクリプトです。
クローンを作る前に、木を置く位置を計算してから、へんすうに値を入れています。
木を置く位置は、「スタートいち」からどれだけ離れているかを計算しています。

4.「Tree1」のスクリプト

次に「Tree1」のスクリプトですが、先にへんすうを作ります。

f:id:mywayhaojisan:20171117112129p:plain

 

f:id:mywayhaojisan:20171117112146p:plain
へんすうを作るとき、「このスプライトのみ」を選んで作ってください。
このへんすうには、クローンされた「Tree1」の表示する位置を持っておくへんすうです。

では、「Tree1」のスクリプトです。

f:id:mywayhaojisan:20171117112205p:plain
「クローンされたとき」ブロックを作ります。

始めに「きのいち(x)」と「きのいち(y)」の値を、このスプライトのへんすうに入れています。

次に、このスプライトを表示するかどうかの判定をしています。
画面は、たてが「-180から180」、よこが「-240から240」ですので、その範囲の中にあれば表示して、範囲の外であればかくします。

最後に、「きのいち」から「ねこのいち」を引いて、座標を設定しています。
ポイントとしては、上で書いた範囲の外の位置を指定する事ができる点です。


これで、完成です。
「緑のはた」をクリックして動かしてみます。

f:id:mywayhaojisan:20171103141956p:plain
矢印キーでねこが動いているように見えますが、実際は「Tree1」が動いています。

迷路ゲームはこれで終わりです。
今回作ったものは、「基本的」なものです。
なので、色々変えて、オリジナルのゲームを作ってみてはどうでしょうか?

それと、今回も動画がありますので、よければ、参考にしていただければと思います。

youtu.be



最後まで読んで頂いてありがとうございます。
皆さんに少しでもお役に立てれば幸いです。

<<迷路ゲーム(2回目)