Unity Slay the Spire風デッキ構築系JRPGの作り方7 イベント情報表示UIの作成と汎用ポップアップの実装 | Unity入門の森 ゲームの作り方

Unity Slay the Spire風デッキ構築系JRPGの作り方7 イベント情報表示UIの作成と汎用ポップアップの実装

Unity スレスパ風デッキ構築系JRPGの作り方

現場レベルのゲーム制作が、すべてここで学べます。

【永久会員チケット】

永久会員チケット|Unity入門の森

全講座を見放題で学ぶ

ソースコード・素材・プロジェクトすべて公開。
Unityの基礎から応用まで、一生使えるスキルを体系的に習得。

この記事はSlay the Spire風デッキ構築系ローグライト要素を持つオリジナルJRPGを作る講座の第7回です。

前回はカード取得イベントのUIを作成し、報酬カードの選択から決定までの一連の処理をC#スクリプトで実装しました

前回の記事:

Unity スレスパ風デッキ構築系JRPGの作り方5 ダンジョンUIを一本道から選択分岐式に変更する
この記事はUnity入門の森のノンフィールドRPG講座で作ったゲームを改良アップデートしてSlay the Spire風デッキ構築系オリジナルJRPGを作る講座の第5回目です。前回はレリック・状態異常・イベントのデータベースを作成しました。...

元々のノンフィールドRPG「果てなきダンジョン」では前進すればランダムで戦闘が発生するだけでしたが、この講座では左右の選択肢が与えられ、戦闘以外のイベントも発生するようにします。

そのため、今何が起きてるかをプレイヤーにテキストで表示する画面が新しく必要になります。

↑例えばこのような画面を後の章を含めて作り上げますが、イベントの説明やカードの情報を表示している文章が確認できます。

第7回ではこうしたイベントやカード情報を表示する汎用ポップアップUIを作成します。

【ゲームの作り方講座プレゼント中!】

イベント情報表示UIの作成

イベント(回復イベント・食料取得イベント)やカードや状態異常、レリックの内容を表示するUIを作成します。

Hierarchyビューで右クリックし、[UI(Canvas)]→[Canvas]をクリックします。

新しく作成された[Canvas]オブジェクトの名前を[Information]に変更し、Inspectorビューを開いて下の画像のように変更します。

※ Sort Orderの値を3にしています(後の章で取得したカードの一覧を表示するUIにSort Order 2を設定する予定です。そのリストのカードをクリックしたら、今回作成していく情報表示UIを表示します。そのためこのUIのSort Orderを3にしています。)

背景(モーダル)

次に[Information]オブジェクトを右クリックして、[UI(Canvas)]→[Image]をクリックします。

新しく作成された[Image]オブジェクトの名前を[Modal]に変更し、Inspectorビューを開いて下の画像のように変更します。

メイン画像を表示

[Modal]オブジェクトを右クリックして、[UI(Canvas)]→[Image]をクリックします。

新しく作成された[Image]オブジェクトのInspectorビューを開いて下の画像のように変更します。

キャプションを表示

[Modal]オブジェクトを右クリックして、[UI(Canvas)]→[Text – TextMeshPro]をクリックします。

新しく作成された[Text (TMP)]オブジェクトのInspectorビューを開いて下の画像のように変更します。

※ Textの”キャプション”という文字は削除して空白でも構いません

情報を表示

さきほど作った[Caption]オブジェクトを右クリックして、[Duplicate]をクリックします。

コピーが作成されるのでそのオブジェクトのInspectorビューを表示して、下の画像のとおり変更します。

閉じるボタン

閉じるボタンはプレハブにしたRewardCardの[Confirm]オブジェクトをコピーします。

[Assets/Prefabs/RewardCard]をダブルクリックして、RewardCardプレハブを編集するプレハブモードを表示します。

RewardCardプレハブにある[Confirm]オブジェクトを右クリックしてCopyをクリックします。

RewardCardプレハブの左上にある[<]をクリックして、プレハブモードを終了します。

Hierarchyビューにある[Information]→[Modal]→[Info]オブジェクトを右クリックして、[Paste]をクリックします。すると[Info]オブジェクトと同じ階層に[Confirm]オブジェクトがコピーされます。

[Confirm]オブジェクトの名前を[Close]に変更し、子オブジェクトのテキストを”閉じる”に変更します。

情報表示UIを操作するスクリプト

[Assets/Scripts]フォルダを選択して右クリックし、[Create]→[Scripting]→[MonoBehaviour Script]をクリックします。スクリプトファイルの名前を「InformationController」とします。

InformationController.cs

InformationControllerは、今回作成したUIである画像・タイトル・説明文を表示する汎用的な情報ポップアップを制御するクラスです。

続きを読む
このコンテンツはパスワードで保護されています。 コンテンツを読みたい方はUnity入門の森ショップ(https://unityforest.shop/)で講座閲覧権を取得してね。

まとめ

今回はイベント、カード、レリック情報などを表示するための「情報表示UI」を作成し、C#スクリプト処理を実装し、プレハブにしました。

また、そのプレハブをGameManagerに紐づけることで後の章で情報表示UIを使うための準備を行いました。本記事の導入部で示したポップアップ画面として使うためにデータの流し込みや各UI間の処理の連結などを今後行っていきます。

次回はダンジョンの移動処理をイベント選択式に刷新し、左右の分岐で敵遭遇・レリック取得・カード報酬・回復・食料などさまざまなイベントが発生する仕組みを実装します。一本道のランダムエンカウントから、プレイヤーが戦略的にルートを選べるローグライト型のダンジョン探索へと大幅アップデートされます。

次の記事:

Unity スレスパ風デッキ構築系JRPGの作り方8 ダンジョン移動の二択化とイベント発生処理の実装
この記事はUnity入門の森のノンフィールドRPG講座で作ったゲームを改良アップデートしてSlay the Spire風デッキ構築系オリジナルJRPGを作る講座の第8回目です。前回はイベント・カード・レリックデータなどを表示する情報表示UI...

【ゲームの作り方講座もプレゼント中!】

現場レベルのゲーム制作が、すべてここで学べます。

【永久会員チケット】

永久会員チケット|Unity入門の森

全講座を見放題で学ぶ

ソースコード・素材・プロジェクトすべて公開。
Unityの基礎から応用まで、一生使えるスキルを体系的に習得。

コメント

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