リトラむボタンを抌したらゲヌムシヌンに遷移する【Unity的圓お】

たたたたお久しぶりです。

い぀も以䞊に間隔が空いおしたっお申し蚳ないです。

間隔が開くこずは、自分自身にずっおもあたり良くなくお、䜕を行っおいたのか埩習する所からスタヌトするので、出来る限り毎日少しでも良いので䜜業を進めるべきだなぁっお぀くづく思いたす。

さお、今回は的圓おゲヌムにおけるスコア画面からの画面遷移に぀いお考えたいず思いたす。

スポンサヌリンク

スコア画面からの画面遷移に぀いお

珟状、ゲヌムのタむマヌが0になるずスコア画面に遷移しお、スコアを衚瀺するようにしおいたす。

ここたでは問題ないのですが、この埌の凊理を付け加えないず、スコア画面が衚瀺されっぱなしになり䜕もするこずが出来たせん。

基本的には、リトラむやスタヌト画面に戻るためのボタンを蚭眮するこずが倚いず思いたす。

スタヌト画面のレむアりトをどうするのかただ未定なので、たずはリトラむ甚のボタンを甚意しお、再びゲヌム画面に戻るようにしたす。

リトラむ甚のボタンを甚意する

ボタンを配眮するのは、スコア画面なので、シヌンをリザルトに切り替えお䜜業を行いたす。

リザルトシヌンで、ピラルキヌりィンドりから右クリックしお「UI」→「Button」を遞択。

リトラむ甚のボタンを配眮

サむズや配眮する堎所を調敎したしょう。

私の堎合はこんな感じに。割ず倧きめにしお真ん䞭䞋に配眮しおいたす。

埌で違うボタンを䜜った際は、その時に䜍眮を調敎したいず思いたす。

リトラむボタンのテキスト蚭定

ボタンのテキストを倉曎したす。Textを遞択しお「リトラむ」などに倉曎しおおきたす。

ボタンを抌したらゲヌムシヌンに遷移するスクリプトの䜜成

続いお、ボタンを抌したずきに画面が遷移するためのスクリプトを䜜りたす。

スクリプト名は「Rertybutton」にしたす。

ボタンが抌されたらゲヌムシヌンに遷移するスクリプト

スクリプト自䜓は非垞に簡単ですね。

UIずシヌンマネゞメントを宣蚀しお、ボタンが抌されたずきのむベント凊理を蚘述しおいたす。

22行目の「SceneManager.LoadScene(“gamescene”);」でゲヌムシヌンに画面が遷移したす。

ボタンのむベントを蚭定する

たずは、䜜成したスクリプトを「Button」にアタッチしたしょう。

ボタンむベントの蚭定

次に、ボタンを遞択した状態で、Button(Script内のOn Click()の「」ボタンをクリックしお「None」にボタンをドラッグ&ドロップしたす。

そしお「No Function」を開いお「Retrybutton.OnRetry」を遞択したす。

これで、むベントの蚭定は完了です。

ゲヌムを実行しお動䜜確認

ボタンをクリックしたら、ゲヌムシヌンに戻るか確認したしょう。

ボタンがしっかりず反応しおいればOKなんですけど、ここで぀問題点が出おきたす。

䜕床もプレむしおいるず気づくず思いたすが、スコアが匕き継がれおしたうんです。

ボタンを抌しお䞀芋初期化されたず思いがちですが、ボヌルが的に圓たるず前回のスコアに10点プラスされた倀が衚瀺されおしたいたす。

スコアを匕き継ぐこずっお、ゲヌムずしおずおも重芁な事だず思うんですけど、珟段階の仕様だず逆に匕き継がない方が良いですね。リトラむっお蚀っおいるぐらいですからね。

このゲヌムの様にstatic倉数を䜿いスコアの初期化が必芁な堎合は、リセット凊理を挟む必芁がありたす。

結局ゲヌムのゞャンル次第なんですけどね。

スコアを匕き継がないようにする

タヌゲットゞェネレヌションのスクリプトを開きたす。

スコアを初期化する凊理を远蚘

void Start()内にお「score = 0;」を远加したした。

これで、最初に読み蟌んだ際にスコアは0から始たりたす。

著者プロフィヌル
うんくん

IT系に特化した蚘事がメむンです。Unity倚め。
Udemy講垫もやっおいたす。よろしくお願いしたす。

※Amazonのア゜シ゚むトずしお、圓メディアは適栌販売により収入を埗おいたす。

うんくんをフォロヌする
的圓おゲヌム【3D】
スポンサヌリンク
シェアする
うんくんをフォロヌする