我想要一种方法来制作很多不同的单元,而不必多次编写诸如moveTo和Attack动作之类的东西
我的观察方式有两种。
- 具有标志的单个通用Unit类,该类指定了它可以/不能执行的操作(然后在静态数组中创建实例,并在需要时获取它们)
- 对于具有特定于单元的操作(例如,Attack,Harvest,Patrol)具有抽象方法的抽象单元类,则所有这些都需要在子类中实现,即使该单元实际上无法收获任何东西。
第一种方法似乎最简单,但是我最终将为大多数单元使用大量代码。
第二种方法也可以。但是,如果我决定拥有两个可以收集资源的不同单元,那么我将在两个不同的类中拥有完全相同的代码,这似乎不是正确的方法。
这是解决这个问题的正确方法吗?
在像AoE这样的游戏中,我想每个单位都有某种动作/命令列表,我真的很想知道如何实现类似的目标,在这里我可以为每个动作/命令编写一次代码,并且然后将其提供给所有需要执行该操作的部门。
如果我不清楚(很有可能),或者您需要有关我到底在寻找什么的更多信息,请在评论中问我。