The Sims の変種としか言いようのない Java でゲームを開発しています。
ゲームのメイン インターフェイスはレベルで構成され、マップ上に配置できる多種多様な家具があります。私の問題は、家具の各アイテムにプロパティを割り当てることができるシステムを構築する方法を考えることはできますが、完成までの長い道のりを進む前に、正しい方法でそれを行うことを確認したいということです. たとえば、"sofa" という識別子を持つオブジェクトを参照した場合、家具オブジェクトのメンバーは、使用可能なすべてのオブジェクトを検索し、一致する識別子を持つオブジェクトを見つけることでアクセスできます。
私の方法は、家具の各アイテムの基本家具クラスからのインスタンスを含む非常に大きな .java ファイルを作成することです。それぞれに識別子と、画像、位置、回転など、割り当てられたすべての異なるプロパティと独自それらが提供するさまざまな機能ごとに固有のコード (例: 座る、寝る)。
これらのオブジェクトをテキスト ファイルに保存/格納するには、識別子の名前をテキスト ファイルの文字列配列に格納するだけで、読み込み時に、識別子が指すオブジェクトをインスタンス化することでオブジェクトを作成できます。
これらの方法のほとんどを使用するのは正しいでしょうか、それともより良い方法がありますか? 私が書いたことを理解するのが難しいと感じた場合 (そして、私はそれを明確に書くのに苦労しました)、より簡単な質問は次のようになります。
The Sims の家具アイテムは、利用可能な膨大な量と、それらを配置 (および保管/保存) できるさまざまなバリエーション/ローテーションに関してどのように管理されていますか?