竹林ソフト 2023/08/10 20:00

クラフトゲーム開発(かまどの準備)

NPC がかまどで木材から炭を作るあたり目指して作業していきます。今回は、かまどと入荷用、出荷用のチェストをフィールドに配置するあたりからやっていきます。

クラフトの流れ

前回の仕様検討で「クラフトには専用の部屋を必要とする」としようとしたものの、燃やす系の建物が室内にあるのもなぁ、と思って「専用の部屋の代わりに排他的なエリアが必要になるクラフト台もある」という仕様にしました。ここで部屋とか排他的なエリアにこだわる理由は、そのエリアに置かれたチェストは、そのエリア専属のものとして扱いたいからです。
かまどで炭を作る流れというか、クラフトの基本は

  • クラフト台があり、その周囲がそのクラフト台専用のエリアになる。
  • そのエリア内にクラフトで使う資材を搬入するためのチェストがある。
    • 搬入させたい要求資材を登録できる。

です。
また、基本的なルールとして NPC がクラフトするときには、チェストに要求されているアイテムだけをクラフトするようにします。炭を4つ作りたいときには、チェストに「炭 x 最低 4 個」と要求の設定をします。
そしてチェストには「このチェストからは資材を運び出してもいい」という許可をできるようにします。
つまり、NPC がチェストから資材を運び出すのは「チェストが所属するクラフト台でクラフトするとき」「搬出が許可されているとき」で、チェストに搬入するのは「チェストに要求されているとき」です。

クラフトまわりの実装

ここまでに書いた仕様の実装項目がそれなりに多くて気が滅入るのですが、少しずつ実装していきます。
そして、チェストの UI を実装しようとして「チェストが要求できる素材は1種類だけでよくない?」というアイディアが降ってきたので、この仕様を仮採用します。
つまり、チェストに追加する UI は

  • どのクラフト台に所属しているかの表示
  • 要求する素材を選ぶ UI ... パネルに表示される素材からクリックして選ぶ
  • 要求する素材の数を指定する UI ... スライダーで指定する、初期値は素材ごとに決める
  • このチェストから素材を運び出してよいかを許可する UI ... チェックボックス

とします。
そして、ここまで書いた内容を実装しようとして動作確認したら、チェストが右クリックで動作しなくなっていたので続きは次回にします。以前に建物を GameObject から Tilemap 管理に変更したせいだと思います。

まとめと今後の予定

次回はチェストの UI を実装して素材を要求できるようにします。素材を要求できると NPC が運搬できるあたりや、クラフトするあたりが実装できるようになるので。
また、今回の仕様を検討していて、チェストに対して自キャラがたくさんのアイテムを持てる件は、なんかこう「魔法のカバン」があるとか都合よく解釈しようと思いました。
開発の目的が「何かしら実装する」から「何かしら検討する」に変わってきている気がしますが、暑いので仕方がないです。(窓を開けると暑すぎて、冷房はなんか嫌い) がんばります。

月別アーカイブ

限定特典から探す

記事を検索