この記事のポイント
・くだものをころがす方法がわかります。
はじめに|くたものをころがしたい
このシリーズは、大人気のスイカゲームを作りながらスクラッチプログラミングを学ぶシリーズです。
スイカゲームでは、くだものが落下して、他のくだものに触れたらコロコロと転がっていきますね。そしてドンドン箱の底にくだものがたまっていきます。
第4回ではくだものとくだものが触れたら、くだものが転がって底に落ちていくようにします。
![](https://oyako-programming.com/wp-content/uploads/2023/02/cropped-robotech_cheer.png)
このシリーズで最も難しいところになります。
参考記事
前回記事
前回は次に落とすくだものをランダムに変えるようにしました。
![](https://oyako-programming.com/wp-content/uploads/2024/03/suica_game_3.jpg)
![](https://oyako-programming.com/wp-content/uploads/2024/03/suica_game_3.jpg)
スイカゲームを作ろう シリーズ 第1回
スイカゲームを作ろうを始めから始めたい方はこちらからどうぞ
![](https://oyako-programming.com/wp-content/uploads/2024/02/suica_game_1.jpg)
![](https://oyako-programming.com/wp-content/uploads/2024/02/suica_game_1.jpg)
スクラッチの始め方
スクラッチの始め方は以下リンク先でまとめています。初めての方、やり方を忘れてしまった方はぜひここから読んでみてください。
![](https://oyako-programming.com/wp-content/uploads/2023/01/scratch_start_method.png)
![](https://oyako-programming.com/wp-content/uploads/2023/01/scratch_start_method.png)
完成作品
今回の完成作品はこのようになります。緑色の旗ボタンを押すとプログラムが始まります。
落下したくだものが他のくだものに触れるとコロコロところがって落下するようになりました。
操作方法
- 左右キーでカゴを移動させます。
- スペースキーでくだものを落とします。
完成スクリプト
修正スプライト
<くだもの>
他のくだものに触れると転がるように修正しました。
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-34.png)
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-34.png)
スクラッチプロジェクト
スクラッチプロジェクトは以下です。プログラムや画像の素材は自由に使用してもらってOKです。
作るモノ・コト(仕様)を考える
今回の作りたいモノ・コトは以下のとおりです。これをプログラムできればゴールです。
- ほかのくだものに触れたら、向きを変える
- 変えた向きにくだものがなければ、くだものを動かす
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
はじめに作りたいモノをおおざっぱでもいいので、書き出すことがプログラミングで重要です。
いきなりプログラムを組み始めるよりスムーズに進みます。
プログラミング
今回の「他のくだものに触れたらころがる」の動きは直感的に理解するのはなかなか難しいです。一通り方法を説明しますが、難しければそういうものだと思ってプログラムを書き写すだけでもOKです!
他のくだものに触れたら、向きをかえる。
まずは、他のくだものに触れたら、向きを変えるようにします。
このように動くように、⇩のようにプログラミングしましょう。
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-35.png)
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-35.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
イメージとしては、くだものにふれたときに移動できる方向をランダムに転がって探す感じです!
動作確認
ここで一旦動作確認をしてみます。くだものにふれたら、くだもの同士が回転したら成功です。
![](https://oyako-programming.com/wp-content/uploads/2024/03/suika_game_4_a.gif)
![](https://oyako-programming.com/wp-content/uploads/2024/03/suika_game_4_a.gif)
くだものがない方向であれば、くだものを動かす。
ここが少し難しいところです!
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
理解できなくても問題ナシです!
ランダムにくだものの向きを変えて、その方向にくだものがなければ、くだものをその方向に動かします。
それをどのように実現するかと言うと、⇩のようにしてみます。
- くだものの向きを適当に変えてみる。 (これはさきほどプログラムしたところです)
- くだものをその向きに動かしてみる。
- その向きに動かしてみて、ほかのくだものに触れたら、「ころがり失敗!」さきほどの位置にくだものを戻します。 ⇨そしてまた①から始めます。
- その向きに動かしてみて、ほかのくだものに触れなければ、「ころがり成功!」 くだものを落下させます。
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-36.png)
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-36.png)
動作確認
ここで一旦動作確認をしてみます。くだものに触れて、くだものが回転し始めて、ドンドン下に転がっていけば成功です。
![](https://oyako-programming.com/wp-content/uploads/2024/03/suika_game_4_b.gif)
![](https://oyako-programming.com/wp-content/uploads/2024/03/suika_game_4_b.gif)
回転を表示させないようにする。
実際のスイカゲームではこのように激しくくだものが回転することはありません。
なのでくだものの向きが変わったことを表示しないようにします。
⇩のようにスプライトの向きを設定してください。
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-37.png)
![](https://oyako-programming.com/wp-content/uploads/2024/03/image-37.png)
動作確認
さいごに動作確認をしてみます。
くだものが激しく回転せずにころがって落下していけば成功です。
![](https://oyako-programming.com/wp-content/uploads/2024/03/suika_game_4_c.gif)
![](https://oyako-programming.com/wp-content/uploads/2024/03/suika_game_4_c.gif)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_thinking-1.png)
今回はこれで完了です! お疲れ様です!
さいごに
第4回目は、くだものをころがすように落下させるようにしました。
次回予告は下をスクロールしてくださいね⇩⇩⇩
おススメのスクラッチ参考書
私も参考にしているスクラッチ参考書を紹介します。どちらもとてもわかりやすいです。
![](https://oyako-programming.com/wp-content/uploads/2023/01/robotech_normal-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/01/robotech_normal-1.png)
![](https://oyako-programming.com/wp-content/uploads/2023/01/robotech_normal-1.png)
私の場合は、図書館で借りて試し読みして、分かりやすかったものを購入しています。試し読みは必須です。
手元にずっと置いておき、いつでも参照できるようにすることも重要です。
【無料体験】【全国に教室多数】おススメのプログラミング教室
私が最もおススメするプログラミング教室は、「QUREOプログラミング教室」です。
「QUREO」の特徴は、以下にあげる点です。
- 教室型であり、直接先生からプログラミングを学ぶことができる。
- 全国に教室数が多く(全国2500教室)、実績豊富
- ビジュアルプログラミングかつゲーム制作を学習教材に使用していて、取り組みやすい
- 月謝が比較的安い。
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_yoyuu2.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_yoyuu2.png)
![](https://oyako-programming.com/wp-content/uploads/2023/02/robotech_yoyuu2.png)
習い事は、「通いやすさ」と「続けやすさ」の2つが重要ですよね。私も「通いやすさ」を重視して「QUREO」を選びました。
今なら無料体験・キャンペーンも実施しているので、一度お試しすることをおススメします!
次回
次回はついにくだものを進化できるようにします!お楽しみに。
![](https://oyako-programming.com/wp-content/uploads/2024/03/suica_game_5.jpg)
![](https://oyako-programming.com/wp-content/uploads/2024/03/suica_game_5.jpg)
コメント