9
如何避免玩家与世界之间的循环依赖?
我正在开发2D游戏,您可以在其中上下左右移动。我基本上有两个游戏逻辑对象: 玩家:相对于世界的位置 世界:绘制地图和玩家 到目前为止,World依赖于Player(即具有对它的引用),需要其位置来确定在何处绘制玩家角色以及要绘制地图的哪一部分。 现在,我想添加碰撞检测,以使玩家无法穿过墙壁。 我能想到的最简单的方法是让玩家询问世界是否可以进行预期的移动。但这会在播放器和世界之间引入循环依赖关系(即,每个都有对另一个的引用),这似乎值得避免。我想出的唯一方法是让World移动Player,但是我发现这有点不直观。 我最好的选择是什么?还是避免循环依赖不值得?