見出し画像

リトライ機能の実装

リトライ処理


みなさんこんにちは。うまみちょうみりょうです。

今回は、Unityを使って2Dゲームを作る中で一つの処理( 今回はRetry)でも、いろんなやり方があることを知り、忘れないように!まとめていこうと
この記事を書いています。


① ボタンを使う方法


このゲームのように、PlayerObject が消えたときゲームオーバー画面に、
リトライ機能のついたボタン(UI)を配置し、シーンを再読み込みする。

このやり方はリトライ機能の基本だけど、いちいちボタンを押さないといけないのがめんどくさい。

①のやり方

↓ボタンのUIを作成し、ON Click関数にGAMEOVERの"オブジェクト"をアタッチして、GAMEOVERのオブジェクトの"スクリプト"内のReloadScene関数を呼び出す。( 日本語間違ってるかも) このボタンのUIはCanvas内に配置して、先にパネルとかも配置しないとだめ。

GAMEOVER Scriptの中身(一部省略)

今のシーンを読み込みするときのテンプレートらしい。

② キーを使う方法


このゲームは、シューティングゲームと同時並行で作っている2Dアクションゲーム。このゲームのリトライ機能はスペースキー1つでスタート位置に戻るというもの。リトライが楽。( スペースキーでRetryって書いとこ…)

②のやり方

Unityに標準搭載されてる?、InputSystemを使うやり方。

bool型の変数を用意して、ゲームオーバー画面が表示されているか確認

bool型の変数に falseが入っていて、かつInputAction(ここではスペースキー)が行われると、今のシーンを再読み込みするよっていうやつ。

↓InputActionの設定

なんで両方スペースキー設定しないとだめなの... また調べます

1つずつ学んでいきます。。。来年ハッカソン出たいなあ。




この記事が気に入ったらサポートをしてみませんか?