设计部队作战系统(java)

设计部队作战系统(java),java,system,Java,System,您好,我想知道我是否能得到帮助,帮助我设计/理解如何用java制作一个系统。我正在寻找一个程序,将在一个游戏的不同单位,并将他们添加到一个团队。然后,两个团队将为统计平均值进行多次较量 我需要帮助的是如何设计单元。这就是我想知道我是否要创建一个泛型单元类,然后为每个单元创建类,比如grunt,它继承自泛型单元还是其他什么。如果我这样做了,我如何存储每个团队的单位,但仍然能够调用它们作为一种类型的唯一单位 例如,我将有一些函数向团队中添加单元,我在想arraylist。然后在战斗中,我会从一个团队

您好,我想知道我是否能得到帮助,帮助我设计/理解如何用java制作一个系统。我正在寻找一个程序,将在一个游戏的不同单位,并将他们添加到一个团队。然后,两个团队将为统计平均值进行多次较量

我需要帮助的是如何设计单元。这就是我想知道我是否要创建一个泛型单元类,然后为每个单元创建类,比如grunt,它继承自泛型单元还是其他什么。如果我这样做了,我如何存储每个团队的单位,但仍然能够调用它们作为一种类型的唯一单位

例如,我将有一些函数向团队中添加单元,我在想arraylist。然后在战斗中,我会从一个团队中抽出一个单位,调用它的一些方法,单位可以有能力等等。所以我需要知道这个单位是什么,因为他们会有不同的方法


所以基本上我需要帮助建立一个定义多个单元的系统,允许我将它们添加到团队中,并在不同的时间调用它们。有什么帮助吗?

所以我想,如果我没弄错的话,您希望能够向团队中添加不同的成员,例如Grunt、CommunicationOfficer和General(仅举个例子)。那么你想迭代所有的咕噜声,还是所有的将军

是的,我认为单位是一个超类,然后Grunt,General,等等都扩展了单位。我认为您可能需要为每种类型维护单独的ArrayList,为所有单元维护一个ArrayList。然后,在添加单元时,将其同时添加到相应的特定于类型的ArrayList和整个ArrayList


现在,如果只需要Grunt对象,请使用ArrayList grunts。否则,如果您想要所有单位,请使用ArrayList单位。

我不知道是否正确理解您的问题,但这里是我的建议。 在泛型单位类中,创建一个名为type的int字段,在其中存储单位的特定类型。 然后将它们作为通用单位存储在数组列表中。
从列表中检索单元后,请在type值上执行do switch语句,并根据type字段中的int将检索单元转换为正确的类型

你的问题太广泛了。请关闭此问题,并将其缩小为几个独立的问题。也许你会感兴趣?我将研究这个子论坛,谢谢,对于上面的问题,主要的问题是如何最好地用java设计一个或多个类,使我有多个具有相似基本统计信息但能力不同的单元。嗯,这个想法是一个团队所有单元的一个数组列表,该列表将包含不同的单位类型、咕噜声、将军等。然后我会在每个战斗回合中查看该列表,并找出哪些单位有回合,我会将它们添加到该团队的另一个列表中。然后让两个小组与给定的单位进行战斗。要想知道什么单位有转弯,我会称之为单位速度法。等等,然后一个带有单位的数组列表就可以工作了。只需在单元中声明所需的方法,并在每个单独的类型中重写它们。此外,为了缩短代码,而不是重新发明轮子,您可能会发现这很有用。它有一个filterierator,它提供一个迭代器,只返回满足条件的列表元素。