私は現在マルチプレイヤー システムを構築していますが、多くのオブジェクト間でデータの多くの小さなバリエーションを管理する方法について設計上の質問があります。
例から始めましょう。A、B、C の 3 人のプレイヤーがいるとします。A は B と友好的であり、C とは敵です。つまり、A が敵であることを C に示し、A が友好的であることを B に示す必要があります。現在、同じデータの 2 つの異なる (しかし小さい) バリエーションがあります。これはほんの一例です。別のバリエーションとして、A がステルス状態になり、B は A を見ることができますが、C は A を見ることができません。前述のとおり、これらは単なる例です。各オブジェクト間で主に変化する、より多くのさまざまなプレイヤー データの状態を持つことが計画されています。
これをどのように管理すればよいですか?大量の if ブロック、または私が見落としている明白な設計パターンはありますか? これはマルチプレイヤー ゲームであるため、3 人以上のプレイヤー/オブジェクトまたは状態が存在します。