私はクラスがComponent
で、インターフェイスがIInventoriable
です。コンポーネントのクラスのオブジェクトのリストを持つ必要があり、this answer in Javaと同様のIInventoriableインターフェイスを実装します。インターフェイスを実装する特定のクラスのリストを持っています
例の擬似コード -
public List<Component implements IInventoriable> Inventory;
がどのように私はこのような何かを成し遂げるかもしれない/それは、C#でさえ可能ですか?
Component
をサブクラス化する方がよいでしょうか?状況によっては、Unityのような多くのゲームエンジンにあるエンティティコンポーネントシステムを使用しています。
リストを作成するときにlinq 'OfType'を試すことができます。リストはリストにすることができますが、リストをフィルタリングまたはフィルタリングするときには、 'IInventoriable'も実装しているComponent派生オブジェクトのみを返すlinq拡張' Inventory.OfType () 'を使用できます –
Nkosi