我现在正在做的事情之一与游戏有一些相似之处.出于说明的目的,我将使用从虚构的假设游戏中抽取的示例来解释我的问题.
我们称之为DeathBlaster 4:The Deathening.在DB4中,您有许多Ship对象Phenomena在旅行时会定期和随机地遇到.一个给定的Phenomenon可能Effects在Ship遇到它时有零个,一个或多个.例如,我们可能有四种Ships和三种Phenomena.
Phenomena
==========================================
Ships GravityWell BlackHole NebulaField
------------ ------------------------------------------
RedShip +20% speed -50% power -50% shield
BlueShip no effect invulnerable death Effects of Various
GreenShip -20% speed death +50% shield Phenomena on Ships
YellowShip death +50% power no effect
另外,Effects可以彼此交互.例如,GreenShip这是在两者GravityWell和一个NebulaField可导出某种所生成之间的协同作用的SpeedEffect和ShieldEffect.在这种情况下,协同效应本身就是Effect- 例如,可能存在PowerLevelSynergyEffect这种相互作用的结果.除了Effects在a 上采取行动之外,不需要任何其他信息Ship …