Unity スレスパ風デッキ構築系JRPGの作り方2 マナコストの導入とカードバトルへの変更を行う | Unity入門の森 ゲームの作り方

Unity スレスパ風デッキ構築系JRPGの作り方2 マナコストの導入とカードバトルへの変更を行う

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

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

【永久会員チケット】

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

全講座を見放題で学ぶ

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

この記事はUnity入門の森のノンフィールドRPG講座で作ったゲームを改良アップデートしてSlay the Spire風デッキ構築系オリジナルJRPGを作る講座の第2回目です。

前回は素材のインポート、カードデータの作成を行いました。

前回の記事:

Unity スレスパ風デッキ構築系JRPGの作り方1 素材のインポートとカードデータの作成
この講座では全12回でUnityを使ってUnity入門の森の「ノンフィールドRPG講座」で制作した"果て無きダンジョン"を改良アップデートしてSlay the Spire風のデッキ構築系オリジナルカードバトルJRPGを制作します。ターン制コ...

第2回ではキャラクターのクラスをカードバトルに対応させます。そしてバトルシーンのUIを追加していきます。

また、前作まではただのコマンドバトルでしたが、カードバトルにする際にマナコストを導入します。

マナコストはSlay the Spireやシャドウバースなどでもおなじみですね。ハイコストなカードとローコストなカードをどう組み立てていくかで戦略性が生まれます。

各カードを使用したときにマナを消費し、ターン開始時に毎ターンマナが補充される形のバトルシステムにアップデートしていきましょう。

まずは[Assets]→[Scenes]にある[Battle]をダブルクリックしてバトルシーンを開きます。

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

スクリプトを変更する

次に、戦闘システムの変更に合わせて不要になる要素を削除し、必要な定数を追加していきます。

以下のようにスクリプトに修正を加えていきましょう。

GameConstants.cs

カード使用に必要なSP(他のカードゲームで言うといわゆるマナコスト)を新しく定義します。

さらに、プレイヤーの防御力を定義しカード効果に使用します。Slay the Spireなどで出てくる”カードを使用すると次のターンまでブロック(防御力)を蓄える”ことができるようにしていきます。

UnitStatus.cs

戦闘システムの変更にともない、CT(クールダウンタイム)は廃止し、カードを使用するときに消費するSP(スキルポイント)を追加し、受けるダメージを相殺するGP(ガードポイント)も追加します。

ダメージを受けるときはGPで相殺するようにします。

また、所有しているカードを代入しておくデッキ(Deck)と、戦闘中に配布されたカードを代入しておく手札(Hand)を追加します。

さらに、所有しているカードから配布するメソッド、ターンのときに呼び出されるメソッド、戦闘が終了したときに呼び出されるメソッドも追加します。

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

まとめ

今回はキャラクターのクラスをカードバトルに対応し、バトルシーンのUIを追加しました。マナコストの概念も導入し、画面左下にマナを表示するための準備を行いました。

次回はバトルシステムを大きく刷新し、固定3ボタンのコマンド選択からデッキを使ったカードバトルへ移行します。SPコストの管理やターン終了ボタンの実装など、カードゲームらしい手札運用の仕組みを作り上げていきます。

次の記事:

Unity スレスパ風デッキ構築系JRPGの作り方3 コマンドバトルからカードバトル戦闘システムに改造する
この記事はスレスパ風のデッキ構築系ローグライト要素を持つオリジナルJRPGを作る講座の第3回です。前作のノンフィールドRPG講座で制作したゲーム「果て無きダンジョン」をアップデートしていきます。前回はキャラクターのクラスをカードバトルに対応...

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

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

【永久会員チケット】

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

全講座を見放題で学ぶ

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

コメント

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