yumeの日記: RogueLikeゲームを作るぞ 2
ゲームの根幹部分となるActorたちのステータスやアイテム・装備の概念を進めていく。
このゲームでは、あらゆるActorは武器・防具・基礎HPのみでステータスが構成される。
Actorクラスは座標とActorStatusクラスを持つ。
ActorStatusクラスは、EquipSlotクラスを持ち、HPや攻撃力などのステータスを表現する。
EquipSlotクラスは、武器と防具を保持するクラスである。
武器も防具もCardと呼ぶ概念で表現される。
Cardは武器・防具・消耗品としての能力をそれぞれ併せ持つ。つまり1つのCardは武器であり、防具であり、巻物や薬である。
Cardの武器としての性能は、6面の結果を持ち、攻撃するたびにそれのどれかが選ばれて能力として発動する。
例えば:
1の目:6ダメージ
2-5の目:2ダメージ
6の目:ミス
こんな具合である。
防具としての性能は、現状は単にHPを増やすだけである。
プレイヤーはInventoryを持ち、そこから自分の装備を選んだり、Cardを消耗したりする。
エネミーは1つのCardを武器・防具それぞれにセットし、それによりステータスを決定する。
つまり、エネミーは単一のカードでステータスを表現する。
あと、パラメーターを表現するUIを入れる。カーソルを合わせると敵のパラメータも見えるようになっている。
パラメータができたので、各レベルを終了したりゲームオーバーになったりする処理も追加。
レベルが終了できるようになったので、レベル終了時に報酬としてカードを3択から1枚選ぶ処理を追加。
アイテムが追加できるようになったので、アイテムを武器や防具として装備する処理を追加。
ここまでこんな感じ。結構時間かかっちゃった。
前回より画面の解像度があがっている。現状は480x270ピクセルで表現しており、これはフルHDモニターできっちり4倍に拡大した状態に等しい。
実際のモニターを24インチとして、文字が小さすぎるということはないと思うが、まだ検討中。最終的には様々なアスペクト比に対応しなきゃならん。まぁUIの細かいところは、一通り揃ってから考えないと。
次はActorの行動の結果をテキストとして表示する処理を加えたい。
RogueLikeゲームを作るぞ 2 More ログイン