游戏策略模式

Stategy pattern for game

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

玩家首先必须select一个国家作为他的国家,可以是:拉脱维亚、生态乌托邦、恐龙乌托邦。在 select 国家之后,玩家必须通过 select 以下之一为 his/her 角色分配一个 class:国王、王后、巨魔和骑士。根据其 class 角色可以拥有不同的能力:骑士可以处理任何
一种武器很容易,其中包括弓箭,剑,刀和斧头。国王不使用任何武器,他可以制定战略。女王使用特殊魔法。巨魔使用刀和斧头。所有类型的角色都可以使用其特定能力进行战斗。此外,都会骑马和游泳。

根据您提供的图表,我会采取不同的做法。首先,你不需要一个国家 class 而只是将它作为一个列表,让你的角色 class 有一个国家 属性 ,它根据用户选择的内容从这个列表中获取值.

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

现在将四种不同的字符类型创建为 classes,其中包含与该类型相关的所有属性,这四种 classes 将从字符 class 继承。

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

类似这样的东西应该可以正常工作