前回はプログラムを作ってボールを転がしてみました。Windows10でお送りしますー!色々なゲームに「ゲームオーバー」ってありますよねー。あれ、すごく大事なことなんですよ。ゲームにおいてゲームオーバーはとても重要なルールです。場合によってゲームをやり直されなければ、ゲームを続けることが出来なくなるからです。今でも稀にありますが、裏世界に行っちゃって出られない!とか。脱出不可なバグ・解消不能な状態を解消してくれるのがゲームオーバーです。前回のボール、ゲームスタートして落ちたら二度と戻ってきませんでしたよね。ゲーム続行にはそのゲームオーバーが、戻ってやり直すことが必要なんです。いうわけで、今回はゲームをリセットをしてみようと思います。簡単に言うと「最初からやり直す」ことです。今回もプログラムを書きますよ?といってもコピーペーストですが。前回のプログラムと比べると少し難しい内容です。解説は記事の一番下をご覧くださいませー。すごく短くまとめると「resetCubeにプレイヤー(ボール)が当たるとリセットされる」です。小難しく余計なことを言うと「resetCubeにプレイヤー(ボール)が当たるとmainというシーンが読み込まれる」です。resetCube?それ何?と思いましたよね。あとで作るので待ってください。先にプログラムを作っちゃいましょう。前回の復習みたいなものですが、まずプログラムを書くファイルを作ります。名前は「reset」と付けます。ファイルが作れたら、ダブルクリックで開いてください。プログラムを書くツールについては今回もMonoDevelopでお送りします。コピー&ペーストをするのはこのプログラム。}}最初から書かれているプログラムと間違い探しをしてコピー&ペーストしてくださいね。上から下まで全部やるなら間違い探しなんてしなくていいんですが。Unity楽しいから勉強したい!っていう人は間違い探ししてください。完成したらresetは後で使うので少し放置します。他のものの準備も必要なんです、料理の寝かせるみたいなものじゃないですが。resetCubeを作ります。Object→Cube」を選んでください。オブジェクト(ボールなどの物)を選択しながら作ってしまうと設定がおかしくなるので、何もないところをクリックしてから作成した方がいいです。直したいもの(今回ならさっき作ったCube)をクリックしてドラッグするだけ。名前がCubeになっていると思うので「resetCube」に変えましょう。変えたいものを右クリックし「Rename」を選んで入力します。......Sphereなども変えてしまおうと思います。あとで障害物などを作る際にデフォルト名だと分かりにくいです。最初にやらなくてすみません。Sphere(ボール)=BallCube(ステージ)=Stageさっき作ったCube=resetCube以下この名前で説明していきます。resetCubeに戻りましょう。名前をresetCubeにした理由としては「これに当たるとリセットされるから」です。当たるとリセットされる?そんなことしたらゲームできないじゃん!と思いますよね。奈落の底にセットし、ステージに戻れそうにない位置にresetCubeを置きます。永遠と落ちる前にresetCubeに当たることで最初からやり直すように仕組む、といえばいいでしょうか。穴に落っこちたおじさん主人公が陸に戻ってくる感じですね。Y座標をStage(ステージ)より、うんと下げます。InspectorのScaleのYの部分の数字をいっぱい下げると早いです。次に、うんと大きくします。ボールがどこに落ちても大丈夫なように、めちゃくちゃ大きくします。これでBall(ボール)は奈落まで落ちませんね。こんなに大きいとカメラに写ってしまうんじゃないかってことですよね。透明な四角にしましょう。Render」という項目のチェックを外すだけです。透明だと当たらないんじゃない?と思いますよね。resetCubeは透明だけど触れる存在なので大丈夫ですよ!では、それを試すためにもプログラムを与えてみましょう。前回同様、選んでドラッグするだけです。HierarchyでresetCubeを選び、さっき作ったプログラムresetをInspectorにドラッグしてください。スマホを傾けてボールを落としてみましょう。ステージ落下後、透明な何かにキャッチされます。何もないところで転がってます。......え?ステージに戻れない?次の設定をしたらすぐに戻れるので安心してくださいね。「resetCubeにプレイヤー(ボール)が当たるとリセットされる」と言いましたよね。今は「resetCubeにBallが当たっている」状態です。プレイヤー(ボール)とした意味ですが。プレイヤーという設定をされたボールということです。学校の1組2組みたいな感じ。ボールにプレイヤーという設定をしたらリセットに一歩近づきます。