この記事のポイント
・くだものの消し方がわかります。
はじめに|くたものを消したい
このシリーズは、大人気のスイカゲームを作りながらスクラッチプログラミングを学ぶシリーズです。
前回は、同じくだものが触れた場合に、次のくだものに進化するようにプログラムしました。しかし、前回のプログラムのままでは、2つのくだものの内、1つ進化しましたが、もう1つは残ったままでした。
実際のスイカゲームでは、2つのくだものが1つになって進化しています。
第6回では同じくだもの同士が触れたら、1つは進化して、もう1つのくだものは消えるようにします。
これでよりスイカゲームに近づきますね!
参考記事
前回記事
前回は同じくだものがふれたら、進化する方法を説明しました。
スイカゲームを作ろう シリーズ 第1回
スイカゲームを作ろうを始めから始めたい方はこちらからどうぞ
スクラッチの始め方
スクラッチの始め方は以下リンク先でまとめています。初めての方、やり方を忘れてしまった方はぜひここから読んでみてください。
完成作品
今回の完成作品はこのようになります。緑色の旗ボタンを押すとプログラムが始まります。
同じくだもの同士がふれると、1つになって次のくだものに進化するようになりました。
操作方法
- 左右キーでカゴを移動させます。
- スペースキーでくだものを落とします。
完成スクリプト
修正スプライト
<くだもの>
⇩のプログラムを追加しました。もしブロックの条件はかなり長いので、プロジェクトで確認してみてください。
新規追加スプライト
<くだもの位置>
スクラッチプロジェクト
スクラッチプロジェクトは以下です。プログラムや画像の素材は自由に使用してもらってOKです。
作るモノ・コト(仕様)を考える
今回の作りたいモノ・コトは以下のとおりです。これをプログラムできればゴールです。
- 同じくだものに触れて、進化しなかったくだものを消す。
はじめに作りたいモノをおおざっぱでもいいので、書き出すことがプログラミングで重要です。
いきなりプログラムを組み始めるよりスムーズに進みます。
プログラミング
進化しなかった方(消したい方)のくだものを見つける
同じくだものが触れたときに、進化しなかった方のくだものを消すためには、
まずは、進化しなかった方のくだものを見つける必要があります。
進化しなかった方のくだものは、以下の2つの条件にあてはまるくだものです。
- 進化する前のくだものと同じ種類のくだもの
- ふれたくだものとくだものの距離が、そのくだものと同じ大きさであること
絵で表すと次のような条件になります。
まさにくだものが進化する瞬間ですね!
進化する前のくだものの種類を保存する
条件の1つの「進化する前のくだものの種類と同じ」かを判断するためにその情報を取得します。
つぎのようにプログラムします。
これで同じくだものが触れたときのくだものの種類を保存することができました。
ではさらに、この触れたくだものと同じ種類のくだものを削除するようにしてやれば、上手くいきそうに思います。
次のようにプログラムします。
動作確認
ここで一旦動作確認をしてみます。
同じくだもの同士が接触して、一方のくだものが進化して、一方のくだものが消えれば成功です。
しかし、他のくだものも同時に消えているためもう少し修正が必要そうです。
同じくだもの かつ 触れているくだものだけを消す。
さきほどのプログラムでは、触れたくだものと同じ種類の他のくだもののもすべて消えてしまいました。
ここでは、さらに触れたくだものだけを消すようにプログラムをしてみようと思います。
触れているくだものという条件は次の絵のような条件と考えることができます。
進化するくだものから、くだものの大きさ分離れたところにいるくだものが、すなわち触れているくだものと考えることができます。
進化するくだものの位置を特定する。
まずは進化するくだもの中心の位置を特定します。そして目印としてそこに×印を置いてみます。
つぎに×印のスプライトを進化するくだものの位置に置いてみます。この×印のスプライトの名前はくだものの位置を表しているので「くだもの位置」と命名します。
動作確認
ここで一旦動作確認をしてみます。
進化するくだものの位置に×印が現れたら成功です。
進化するくだものから、触れているくだものを消す
最後に進化するくだものに触れているくだものを消すようにします。
進化するくだものの位置を特定することができたので、この位置からくだものの大きさと同じ距離の中にいるくだものだけを消すようにしてやればよいです。⇩のように考えます。
- 「くだもの位置」スプライトから距離が「くだもの大きさ」より小さいスプライトを削除する。
これを実現するためには⇩のようにプログラムします。
動作確認
さいごに動作確認をしてみます。
ふれたくだものが進化して、もう一方のくだものが消えるようになっていれば成功です。
今回はこれで完了です! お疲れ様です!
さいごに
第6回目は、くだものを進化して、もう一方のくだものを消すところを説明しました。
次回予告は下をスクロールしてくださいね⇩⇩⇩
おススメのスクラッチ参考書
私も参考にしているスクラッチ参考書を紹介します。どちらもとてもわかりやすいです。
私の場合は、図書館で借りて試し読みして、分かりやすかったものを購入しています。試し読みは必須です。
手元にずっと置いておき、いつでも参照できるようにすることも重要です。
【無料体験】【全国に教室多数】おススメのプログラミング教室
私が最もおススメするプログラミング教室は、「QUREOプログラミング教室」です。
「QUREO」の特徴は、以下にあげる点です。
- 教室型であり、直接先生からプログラミングを学ぶことができる。
- 全国に教室数が多く(全国2500教室)、実績豊富
- ビジュアルプログラミングかつゲーム制作を学習教材に使用していて、取り組みやすい
- 月謝が比較的安い。
習い事は、「通いやすさ」と「続けやすさ」の2つが重要ですよね。私も「通いやすさ」を重視して「QUREO」を選びました。
今なら無料体験・キャンペーンも実施しているので、一度お試しすることをおススメします!
コメント