游戏的状态模式

时间:2015-09-26 23:22:55

标签: design-patterns strategy-pattern

您好我应该使用策略模式来编写此游戏的代码。我创建了Country类和Character Interface。但我有点困惑,我不知道我应该在哪里添加能力?

玩家首先必须为他的国家选择一个国家,可能是:Latveria,Ecotopia,Dinotopia。选择国家后,玩家必须通过选择以下选项之一为他/她的角色分配一个级别:King,Queen,Troll和Knight。根据其类别,角色可以具有不同的能力:骑士可以处理任何身份 容易的武器,包括弓箭,剑,刀和斧。 King没有使用任何武器,他可以制定策略。女王使用特殊魔法。 Troll使用刀和轴。所有类型的角色都可以使用其特定的能力进行战斗。此外,所有人都可以骑马和游泳。

1 个答案:

答案 0 :(得分:0)

看看你给出的图表,我会以不同的方式做到这一点。首先,您不需要Country类,而只需将其作为列表,并让您的Character类具有Country属性,该属性根据用户选择的内容从此列表中获取值。

创建一个字符类,其中包含对任何字符都相同的所有方法和属性。

现在创建四种不同的字符类型作为包含与该类型相关的所有属性的类,这四个类将继承自Character类。

当用户创建新角色时,您创建一个新的CharacterType实例并通过构造函数传递国家/地区类型,然后根据给定的数据继续创建角色类型,然后根据需要继续设置角色。

这样的事情应该可行