増殖型鬼ごっこRUNゲームの作り方7 タイトルと勝敗判定の作成/スクリプト全文まとめ

Unity C# 鬼ごっこRUNゲーム作り方


Unityの本格ゲーム制作講座はこちら
【30日間の全額返金保証付き】

前回はプレイヤーや敵のスコアをリアルタイムで表示するUIを作成しました。

前回の記事:

増殖型鬼ごっこRUNゲームの作り方6 敵とプレイヤーのポイント表示UIを作る
前回の記事では敵キャラクタと移動AIを作成しました。 前回の記事: 今回の記事ではプレイヤーや敵の率いている味方の数を表示するUIを作成していきます。 集団の人数を表示する それではプレイヤーおよび敵に所属している人数を表示でき...

今回の記事ではタイトルを作ってから勝敗判定とゲームの流れを作成していきます。


【Unity入門の森の最新ゲーム開発講座もお届け】

タイトルの作成

それではまずタイトルの方を作成してきます。

スクリプトの作成

「RunAndJoinSceneMangaer」コンポーネントを次のように修正して下さい。

「GameLoop」コルーチンの開始時にプレイヤーの位置を「PlayerInitPos」フィールドの場所に移動させています。

この変更に合わせて「Map」コンポーネントのマップ生成処理もメソッドを呼び出す形に変更します。

GameObjectの作成

スクリプトの準備ができましたので、次はGameObjectの方を作成していきます。

次の手順を行って下さい。

  • メニューからGameObject > UI > Canvasをクリックし、「TitleUI」というGameObjectを作成して下さい。
  • 「TitleUI」の子GameObjectとして、メニューのGameObject > UI > Textをクリックし、「Title」というGameObjectを作成して下さい。
  • 同じく「TitleUI」の子GameObjectとして、メニューのGameObject > UI > Buttonをクリックし、「StartButton」というGameObjectを作成して下さい。

GameObject階層は次のようになっています。

  • TitleUI : UI > Canvas
  • – Title : UI > Text
  • – StartButton : UI > Button

これらのGameObjectの設定内容は次のものにして下さい。

シーンの「TItleUI」

最後に、「RunAndJoinScene」オブジェクトのTitleUIコンポーネントに「TitleUI」をアタッチしてください。GameObjectの設定ができましたので、再生してみて動作を確認して下さい。

再生直後にタイトルが表示されていればOKです。

もし、開始時にプレイヤーと他のキャラクターが重なっていたら「RunAndJoinSceneManager」コンポーネントの「PlayerInitPos」フィールドを調整して下さい。

勝敗判定の組み込み

次にプレイヤーと敵が当たった時にお互いの集団の数を比べ勝敗を決定するようにします。

スクリプトの作成

まず、「RunAndJoinSceneManager」コンポーネントに勝敗判定処理を追加します。

「JudgeGame()」メソッドで勝敗判定を行っています。

互いの所属しているメンバーの数に差異があった時に勝敗がつくようにしています。

その際に記事では手軽に勝った方のGameObjectの名前を画面に表示するようにしていますが、この辺りは専用のパラメータを「CharacterBase」コンポーネントに追加して、そちらを表示するようにしてもいいでしょう!

プレイヤーと敵の当たり判定は「CharacterBase」コンポーネントで行っているのでそちらも修正します。

勝敗判定用のゲームオブジェクトの作成

次に勝敗判定後にその結果を表示するGameObjectを作成します。

次の手順を行って下さい。

  • メニューからGameObject > UI > Canvasをクリックし、「JudgeUI」というGameObjectを作成して下さい。
  • 「JudgeUI」の子GameObjectとして、メニューのGameObject > UI > Textをクリックし、「JudgeText」というGameObjectを作成して下さい。
  • 同じく「JudgeUI」の子GameObjectとして、メニューのGameObject > UI > Buttonをクリックし、「EndButton」というGameObjectを作成して下さい。

GameObject階層は次のようになっています。

  • JudgeUI : UI > Canvas
  • – JudgeText : UI > Text
  • – EndButton : UI > Button

これらのGameObjectの設定内容は次のものにして下さい。

シーンの「JudgeUI」

最後に、「RunAndJoinScene」オブジェクトのJudgeUIコンポーネントに「JudgeUI」と「JudgeText」をアタッチしてください。GameObject側の設定ができたら、再生して動作を確認して下さい。

プレイヤーと敵が当たった時に勝敗判定を行い、その結果を画面に表示するようになっていればOKです。

敵が勝ったときにEnemy(Clone) Winとなっていると思います。Cloneを消したい場合はJudgeGame()メソッドの条件分岐と表示文を変更すればOKです。

まとめ

今回の記事ではゲームの流れを作成していきました。

この講座ではプレイヤーをシーンに残すようにしていますが、プレハブ化して敵やキャラクターと同じ感じで毎回生成すると処理が簡単になるかと思います。

タイトル画面および、勝敗がついた後でもプレイヤーが移動できるようにしていますが、その辺りはお好みで操作できなくしたりするのもいいかもしれません。

講座では操作できた方が楽しいのでそのままにしています。が、その分余分な処理を追加しています。

まとめると以下のようになります。

  • タイトル画面の作成
  • 勝敗判定の追加と結果を画面に表示するようにした

この講座はここまでになります。このあとはあなたが自由に改良していくといいでしょう。

オンライン機能を付けて友達と対戦!なんてのも面白いかもしれないですね^^

 

ここまでのスクリプトまとめ

お疲れ様でした!

今回はミニゲームタイプのチュートリアル講座でしたが、うまく作れましたか?

もしわからないことなど出てきた時のためにスクリプト全文の完成形を掲載しておきますね。

 

Camera.cs

 

CharacterBase.cs

 

Enemy.cs

 

JoinableCharacter.cs

 

 

Map.cs

 

Player.cs

 

RunAndJoinSceneManager.cs

 

 


【Unity入門の森の最新ゲーム開発講座もお届け】

コメント

タイトルとURLをコピーしました