我目前正在构建一个多人游戏系统,并且我有一个关于如何管理大量对象之间的大量小数据变化的设计问题。
我将从一个例子开始:假设我有 3 个玩家:A、B 和 C。A 与 B 友好,与 C 为敌。这意味着,我必须向 C 表明 A 是敌人,B 表明 A 是友好的。现在我有相同数据的 2 个不同(但很小)的变化。这只是一个例子。另一种变化是 A 进入隐身状态,B 可以看到 A,但 C 不能看到 A。如前所述,这些只是示例。计划有更多不同状态的玩家数据,每个对象之间大多不同。
我应该如何管理这个?大量的 if 块,还是我错过了一些明显的设计模式?由于这是一款多人游戏,因此将不仅仅是 3 个玩家/对象或状态。