这是我可以找到的“类型对象”设计模式的两个最好的解释,我找不到很多;
我完全有了避免为每种新类型创建类文件的概念,方法是创建一个通用的“ Unit”类(例如在策略游戏中),其中Unit类包含一个单元可以包含的所有不同变量有,而是根据文件的单位类型来从文件中加载该数据。这意味着制作新单元意味着只在代码外部制作新的数据文件,而无需重新编译,任务就可以交给设计人员。
我没有得到关于“ Breed”类的解释-两种解释在解释它如何解决最初的问题上都做得不好。看来这只是将问题转移到了Breed类。即使我知道那不是他们在说什么。
答案 0 :(得分:0)
我想我明白了;它只是一个数据持有者。如果每当怪物被实例化时,它都会命中HDD来获取数据,那将会很慢。因此,品种是唯一命中HDD的品种,每个品种一次-您只需针对数据文件中存在的多种类型的品种(基于数据文件,而不是硬编码的)使它们繁殖,然后将它们放入键值映射,以便您可以按文本字符串查找它们。然后,当从关卡数据中实例化怪物时,您可以通过该类型字符串查找应与哪个品种相关联。