ねこ巫女籠城ゲーム開発(操作まわりの調整)
建築と防衛の最低限の実装ができたので、操作まわりで未実装になってたあたりを実装します。
実装したこと
操作キャラを切り替えたときに選択の枠も切り替わるようにする
ゲームの画面下にキャラ選択や操作のボタンがあって、操作キャラをキーボードの 1, 2, 3 キーで切り替えることはできていましたが、操作キャラの枠を切り替える処理が未実装だったので実装しました。
操作キャラを切り替えたときにカメラも切り替える
これは、3人いる操作キャラを切り替えたときに、切り替え元のカメラを無効にしてなかったのを修正したら動作するようになりました。よいです。
俯瞰カメラの位置姿勢がセーブされるようにする
セーブしてロードしたときに、カメラの位置姿勢が保存されるようにしました。
カメラの位置、オイラー角、ズーム値を保存するようにしました。
↓カメラ情報の保存を管理するクラス
↓実装後にカメラの位置姿勢を変えた保存後の読み込みが適切な様子
よいです。
マップ表示、俯瞰表示、三人称表示を切り替えるボタンを配置する
私は基本的にはキーボードだけで操作できればよい派なのですが、この開発では画面にもボタンを配置しようと思いました。ボタンがほしい人もいるので。あと、ボタンを用意すると、そのボタンにカーソルを合わせたときの Tooltip でショートカットを提示できるのはよいです。
そして実際にボタンを配置しようとして、画面全体の UI 配置を考えてなかったのに気付いたので決めます。
画面のどこに何を配置するか
- 上: 住民の数とかの情報
- 下: 操作ボタン
- 左上: ゲームのクリア目標とかのメッセージ
- 左下: だんだん消えるメッセージログ
- 右下: カーソルを合わせた建物・ユニット情報の表示
- 右上: ミニマップ、雑多なボタン
まぁ、基本的には Factorio を参考にします。そして、今回追加した視点変更のボタン3つがこれです。
この雑すぎる作業を「よい」と言い切れる自信がないですが、何も作業しないよりはましだと思います。ミニマップ表示するかどうか、とかを決めたらまた作業します。
マップ表示にキャラの位置を表示する
マップ表示に切り替えたときに、操作キャラや敵の位置も表示しようと思ったのですが、今回のやる気が尽きたので次の機会にやります。
「キャラの移動先を指示したときに(なるべく)キャラを直線に沿って移動させる」とか「日付とかを表示する UI を仮配置する」も次の機会にやります。
まとめと今後の予定
「これだけ着手するぞ!」と項目を書き出してみて、いくつかを後回しにしつつも操作キャラを切り替えたときのカメラ制御を適切にできたので大変よいです。今後も、開発中に操作してて「あー、これ未実装だったか」と繰り返し思ってしまう箇所は都度実装していきたいです。
次回は、敵が建物を攻撃したり避けて移動するあたりに着手しようと思います。がんばります。