【发布时间】:2011-02-03 14:52:21
【问题描述】:
这是当前的依赖关系图(TheTXI 带有手绘圆圈)
游戏中有玩家和他们之间共享的单个棋盘。 玩家还可以访问棋盘,以便能够从中添加/移动/移除单位。 玩家可以访问其拥有的单位,无论是在棋盘上还是棋盘外(一个单位也知道它的所有者,但可能可以将其删除并进行查找)。 板上有单位并且知道单位的位置。 单位有能力(玩家可能也有)
我无法弄清楚的最大问题是单位的能力。他们应该能够影响游戏中的任何东西,治疗/伤害玩家/单位,重新定位棋盘上的东西,甚至可能是游戏本身(目前还没有必要,但它可能会出现)。
如果我没有对所有事物的参考,我如何才能拥有可以影响任何事物的能力?我意识到每个能力都可以而且应该只引用它需要的东西,但是一个单位类有内置的能力,所以如果一个单位的能力影响董事会,它需要以某种方式从单位获得对董事会的引用?
我试图让设计尽可能灵活,因为规则还没有一成不变(我们正在创建一个游戏,而且还很早,所以它正在尝试一些东西,看看感觉如何,更改规则直到游戏感觉正确)
即使是否有棋盘/地图仍然悬而未决,所以单元应该与其当前的状态解耦。没有全局状态或任何“上帝对象”(目前),我想保持这种状态。
特别是在 Python、webapp 中,因此虽然问题本身与语言无关,但当然欢迎任何基于具有一流功能的动态语言的细节。
【问题讨论】:
-
:( 手绘圈子也没有回复?
标签: language-agnostic dependencies decoupling