我正在创建一个非常简单的 RTS 游戏作为个人项目。到目前为止,我已经做了一些实验性工作,我的瓷砖、相机和单位移动工作正常 :)
但是,我想为单位选择系统添加功能,这带来了一些问题。我有一个包含单位列表的 Player 类,但我想创建一个 Squad 类,主要是为了制作一些组和属性快捷方式以轻松访问这些组。如果我想在组中添加一个单位,我必须先从当前组中删除该单位,然后再将其添加到新组中。AddUnit 方法将在 Squad 类中,但我不想在所有其他小队中搜索我添加的每个新单位以检查和删除该单位。如果我在 Unit 类中保留对所有者小队的引用怎么办?然后它会更容易被删除,但这可以吗?如果我想将一个单位转移给另一个玩家,也会出现同样的问题,我可以在单位中保留对玩家的引用吗?嗯,我知道我可以,但这可以接受吗?有替代品吗?